Әртүрлі ормандардағы домен пайдаланушыларына құқықтарды ауқымды түрде беру

Менің кармам мынау: стандартты тапсырмаларды барлық тривиальды емес тәсілдермен орындау. Егер біреу мәселеге басқаша көзқараспен қарайтын болса, мәселені шешу үшін оны талқылаңыз.

Бір таңға жуық қызықты тапсырма пайдаланушылар топтарына құжат қалталары бар жобалардың ішкі қалталары бар әртүрлі үлестерге құқықтарды тарату бойынша пайда болды. Барлығы жақсы болды және қалталарға құқықтарды тағайындау үшін сценарий жазылды. Содан кейін топтарда әртүрлі домендерден, әртүрлі ормандардан пайдаланушылар болуы керек екені белгілі болды (оның не екенін ұмытқандар үшін). Бөлістің өзі PSI орманының FB доменінде тіркелген Synology медиасында орналасқан делік. Тапсырма: басқа ормандағы домендердің пайдаланушыларына осы үлестің мазмұнына өте таңдаулы түрде қол жеткізуге мүмкіндік беру.

Біраз уақыттан кейін техникалық сипаттамалар келесі пішінді алды:

  • 2 орман: PSI орманы, ТГ орманы.

    Әртүрлі ормандардағы домен пайдаланушыларына құқықтарды ауқымды түрде беру

  • Әрбір орманның 3 домені бар: PSI (ZG, PSI, FB); TG (TG, HU, KC).
  • Ормандар арасында сенімділік қатынасы бар; Synology барлық ормандардағы барлық қауіпсіздік топтарын көреді.
  • Ортақтарда және қалталарда/ішкі қалталарда FullControl құқықтары бар FB доменінің әкімші тіркелгілері болуы керек
  • Папкалардың атаулары жүйеленген болуы керек. Басшылық жоба идентификаторларын үйлестірді; Мен Қауіпсіздік топтарының атын жоба идентификаторларына байланыстыруды шештім.
  • Жүйелік бөлісулердегі жоба қалталары .xlsx файлында алдын ала дайындалған құрылымды қамтуы керек, тиісті рұқсат артықшылықтары бар (R/RW/NA, мұнда NA – қатынас жоқ)

    Әртүрлі ормандардағы домен пайдаланушыларына құқықтарды ауқымды түрде беру

  • Бір жобаның пайдаланушыларының/топ мүшелерінің құқықтарын сол жобаның белгілі бір каталогтарымен ғана шектеу мүмкіндігі болуы керек. Топ мүшелігіне байланысты пайдаланушының басқа каталогтарға/жобаларға қатынасы болмауы мүмкін.
  • Жоба қалтасын жасау кезінде топтар жоба идентификаторларына сәйкес атаулары бар сәйкес домендерде мүмкіндігінше автоматты түрде құрылуы керек.

Техникалық сипаттамаларға ескертулер

  • Сенім қатынастарын орнату техникалық сипаттамаларға кірмейді
  • Жоба идентификаторында сандар мен латын таңбалары бар
  • Барлық домендерге арналған жоба пайдаланушы рөлдерінің стандартты атаулары болады
  • Қалталары мен қатынас құқықтары бар .xlsx файлы (қолжетімділік матрицасы) бүкіл жобаның басталуына дейін дайындалады.
  • Жобаларды жүзеге асыру кезінде сәйкес домендерде пайдаланушы топтарын құруға болады
  • Автоматтандыруға стандартты MS Windows басқару құралдарын қолдану арқылы қол жеткізіледі

Техникалық шарттарды енгізу

Осы талаптарды ресімдегеннен кейін анықтамалықтарды құру және оларға құқықтарды беру әдістерін сынау үшін тактикалық үзіліс жасалды. Ол жобаны қиындатпау үшін тек PowerShell-ді қолдануға арналған. Бұрын жазғанымдай, сценарий алгоритмі өте қарапайым болып көрінді:

  • біз топтарды жоба идентификаторынан алынған атаумен (мысалы, KC40587) және рұқсат матрицасында көрсетілген сәйкес рөлдерді тіркейміз: KC40587-EN- инженер үшін; KC40587-PM – өнім менеджері үшін және т.б.
  • құрылған топтардың ТЖК-ін аламыз
  • жоба қалтасын және сәйкес каталогтар жинағын тіркеу (ішкі қалталардың тізімі ол жасалған және қол жеткізу матрицасында анықталған үлеске байланысты)
  • қол жеткізу матрицасына сәйкес жобаның жаңа ішкі каталогтары үшін топтарға құқықтарды тағайындау.

1-кезеңде кездесетін қиындықтар:

  • сценарийде қол жеткізу матрицасын көрсету әдісін дұрыс түсінбеу (көп өлшемді массив енді іске асырылуда, бірақ оны толтыру жолы .xlsx файлының/қолжетімділік матрицасының мазмұны негізінде ізделуде)

    Әртүрлі ормандардағы домен пайдаланушыларына құқықтарды ауқымды түрде беру

  • PoSH (https://social.technet.microsoft.com/Forums/en-US/3f1a949f-0919-46f1-9e10-89256cf07e65/error-using-setacl-on-) арқылы синологиялық дискілерде SMB бөлісулеріне кіру құқықтарын орнату мүмкін емес. nas -share?forum=winserverpowershell), соның салдарынан көп уақыт жоғалды және барлығы мәтіндік және cmd файлдарының аралық репозиторийін жасауды қажет ететін icacls қол жеткізу құқықтарын өңдеу утилитасын пайдаланып сценарийлерге бейімделуге мәжбүр болды.

Ағымдағы режимде cmd файлдарының орындалуы жоба үшін қалтаны тіркеу қажеттілігіне байланысты қолмен басқарылады.

Әртүрлі ормандардағы домен пайдаланушыларына құқықтарды ауқымды түрде беру

Сондай-ақ, сценарий басқа ормандардағы топтарды тіркеу үшін де орындалуы керек (кросс-домендер термині қолданылды) және арақатынас 1-ге ғана емес, сонымен қатар 1-ге көп болуы мүмкін.

Әртүрлі ормандардағы домен пайдаланушыларына құқықтарды ауқымды түрде беру

Бұл көршілес орманды қоса, басқа кросс-домендердің топтары енді кез келген домен ресурстарына кіруге шағымдана алады дегенді білдіреді. Біркелкілікке қол жеткізу үшін барлық ормандардың (қара тік сопақшалар) барлық қызмет көрсетілетін домендерінің OU-да симметриялық құрылымды құру туралы шешім қабылданды. Олар айтқандай, армияда бәрі ұсқынсыз, бірақ біркелкі болуы керек:

Әртүрлі ормандардағы домен пайдаланушыларына құқықтарды ауқымды түрде беру

Осылайша, TG доменінде 80XXX жобасын тіркеу кезінде сценарий орындалады:

1. осы доменде және кросс-домендерде сәйкес OU (қызыл көлденең сопақшалар) құру, яғни қызметкерлері осы ресурсқа қол жеткізуі керек домендер.

2. сияқты атаулары бар топтармен OU толтыру -, Мұнда:

  • SRC_ домені – қызметкерлері DST домен ресурстарына қол жеткізе алатын кросс-домен
  • DST_domain – ресурстарына, шын мәнінде, қол жеткізу қамтамасыз етілуі керек домен, яғни ол үшін бәрі басталған.
  • - жоба нөмірі
  • РОЛДАР – қатынас матрицасында тізімделген рөлдердің атаулары.

3. барлық тартылған домендердің барлық топтарының SID массивін оқу және оны нақты жобаның ішкі қалтасына құқықтарды анықтайтын файлға деректерді кейіннен тасымалдау үшін сақтау

4. "icacKC "as-nasNNKCProjects" /қалпына келтіру C:TempKCKC40XXKC40XX.txt" орындалатын файл режимінде icacKC утилитасымен пайдалану құқықтарының жинағы бар бастапқы файлдарды (параметр /қалпына келтіру) генерациялау.

5. барлық жоба қалталары үшін барлық іске қосылған icacls біріктіретін CMD файлын жасау

Әртүрлі ормандардағы домен пайдаланушыларына құқықтарды ауқымды түрде беру

Бұрын жазылғандай, орындалатын файлды іске қосу қолмен орындалады және орындалу нәтижелерін бағалау да қолмен орындалады.

Соңында біз бастан өткерген қиындықтар:

  • егер жоба қалтасы қазірдің өзінде файлдардың үлкен санымен толтырылған болса, онда бар томдарда icacls пәрменін іске қосу айтарлықтай уақытты алуы мүмкін және кейбір жағдайларда сәтсіздікке әкелуі мүмкін (мысалы, ұзын файл жолдары болған кезде);
  • /restore параметріне қосымша, қалталар жасалмаған, бірақ түбірден мұрагерлік құқығы өшірілген бұрын бар қалталардан тасымалданған жағдайда /reset параметрі бар жолдарды қосуға тура келді;
  • Топтарды құру сценарийінің бір бөлігі әрбір орманның еркін тұрақты токында орындалуы керек болды, мәселе әрбір ағаштың әкімшілік тіркелгілеріне қатысты.

Жалпы қорытынды: нарықта ұқсас функционалдығы бар утилиталардың әлі жоқ екендігі өте таңқаларлық. Sharepoint порталы негізінде ұқсас функционалдылықты жүзеге асыру мүмкін сияқты.
Синология құрылғыларында қалта құқықтарын орнату үшін PoSH утилиталарын пайдалану мүмкін еместігі де түсініксіз.

Қаласаңыз, егер біреу қызығушылық танытса, мен github-та қандай да бір жоба жасау арқылы сценариймен бөлісуге дайынмын.

Ақпарат көзі: www.habr.com

пікір қалдыру