Администрирование списков управления доступом (ACL)
Для администрирования записей в списках управления доступом (ACL), задающих разрешения для объектов службы каталогов в домене Эллес, с помощью утилиты samba-tool используется группа подкоманд dsacl.
Получение записей из списка управления доступом
Для получения записей из списка управления доступом к объекту службы каталогов в домене Эллес используется следующий формат вызова:
samba-tool dsacl get [options]
Подкоманда возвращает список записей управления доступом (ACE) к объекту службы каталогов, переданному в параметре --objectdn, в виде строк на языке определения дескрипторов безопасности (SDDL) в следующем формате:
ace_type;ace_flags;rights;object_guid;inherit_object_guid;account_sid;(resource_attribute)
Строка состоит из следующих элементов:
-
ace_type— тип записи управления доступом;Например, значение
OAсоответствует типу ACEACCESS_ALLOWED_OBJECT_ACE_TYPE, указывающему на то, что в записи ACE используется структураACCESS_ALLOWED_OBJECT_ACEдля предоставления доступа к объекту, набору свойств или свойству. ЗначениеODсоответствует типу ACEACCESS_DENIED_OBJECT_ACE_TYPE, указывающему на то, что в записи ACE используется структураACCESS_DENIED_OBJECT_ACEдля запрета доступа к объекту, набору свойств или свойству. -
ace_flags— набор флагов элементов управления, относящихся к типу ACE;Например, значение
CIсоответствует флагуCONTAINER_INHERIT_ACE, указывающему на то, что запись ACE наследуется контейнерами, а значениеIOсоответствует флагуINHERIT_ONLY_ACE, указывающему на то, что запись ACE не управляет доступом к объекту, за которым она закреплена. -
rights— права доступа, контролируемые ACE;Например, значение
RPсоответствует праву на чтение свойств объекта (ADS_RIGHT_DS_READ_PROP). GUID, определяющий набор свойств или свойство, на которые распространяется право, содержится в элементеObjectTypeзаписи ACE. Если элементObjectTypeне содержит GUID, запись ACE управляет правом на чтение всех свойств объекта.Значение
CRуказывает на то, что для управления выполнением операции используется расширенное право доступа (ADS_RIGHT_DS_CONTROL_ACCESS). В этом случае элементObjectTypeзаписи ACE может содержать GUID определенного расширенного права. Если элементObjectTypeне содержит GUID, запись ACE управляет доступом ко всем операциям с расширенными правами, связанными с объектом. -
object_guid— строковое представление GUID, указывающее значение элементаObjectTypeструктуры ACE;Например, GUID расширенного права, разрешающего сброс пароля для учетной записи пользователя, имеет значение
00299570-246d-11d0-a768-00aa006e0529. -
inherit_object_guid— строковое представление GUID, указывающее значение элементаInheritedObjectTypeструктуры ACE;Например, GUID для типа
Userимеет значениеbf967aba-0de6-11d0-a285-00aa003049e2. -
account_sid— строка идентификатора безопасности (SID) учетной записи (trustee), которой будет выдано право в контексте записи ACE; -
resource_attribute(необязательный элемент) — строка, указывающая тип данных.
Пример строки ACE, задающей разрешение на сброс паролей пользователей:
(OA;CIIO;CR;00299570-246d-11d0-a768-00aa006e0529;bf967aba-0de6-11d0-a285-00aa003049e2;<sid>)
Добавление записей в список управления доступом
Для добавления в список контроля доступа записей, задающих разрешения для объекта службы каталогов в домене Эллес, используется следующий формат вызова:
samba-tool dsacl set [options]
Подкоманда добавляет в список управления доступом объекта службы каталогов, переданного в параметре --objectdn, запись ACE в соответствии со значением параметра --sddl либо в соответствии со значениями параметров --car, --action и --trusteedn.
Также подкоманда позволяет добавить разрешения на доступ к атрибутам управления паролями локальных администраторов (Local Administrator Password Solution, LAPS).
Параметры
Параметры вызова:
-
-H URL|--URL=URL— URL сервера LDAP; может содержать указание на протокол, имя хоста и номер порта; -
--objectdn=OBJECTDN— уникальное составное имя (DN) объекта, для которого требуется добавить разрешение в дескриптор безопасности (SD); -
--action— разрешить/запретить доступ; возможные значения:-
allow— разрешить доступ;Соответствует строке ACE на SDDL следующего вида:
(OA;;CR;<car>;;<sid>)
В строке
-
<car>— право доступа, которое должно быть предоставлено; -
<sid>— идентификатор безопасности (SID) объекта с DN-именем, переданным в параметре--trusteedn, которому должно быть предоставлено право доступа.
-
-
deny— запретить доступ;Соответствует строке ACE на SDDL следующего вида:
(OD;;CR;<car>;;<sid>)
В строке:
-
<car>— право доступа, которое должно быть запрещено; -
<sid>— идентификатор безопасности (SID) объекта с DN-именем, переданным в параметре--trusteedn, для которого должно быть запрещено право доступа.
-
-
-
--car— право доступа (CAR); возможные значения:-
change-rid— расширенное право, необходимое для изменения владельца роли FSMO RID Master (GUID права —d58d5f36-0a98-11d1-adbb-00c04fd8d5cd); -
change-pdc— расширенное право, необходимое для изменения владельца роли FSMO PDC Emulator (GUID права —bae50096-4752-11d1-9052-00c04fc2d4cf); -
change-infrastructure— расширенное право, необходимое для изменения владельца роли FSMO Infrastructure Master (GUID права —cc17b1fb-33d9-11d2-97d4-00c04fd8d5cd); -
change-schema— расширенное право, необходимое для изменения владельца роли FSMO Schema Master (GUID права —e12b56b6-0a95-11d1-adbb-00c04fd8d5cd); -
change-naming— расширенное право, необходимое для изменения владельца роли FSMO Domain Naming Master (GUID права —014bf69c-7b3b-11d1-85f6-08002be74fab); -
allocate_rids— расширенное право, необходимое для запроса пула относительных идентификаторов (RID) (GUID права —1abd7cf8-0a99-11d1-adbb-00c04fd8d5cd); -
get-changes— расширенное право, необходимое для репликации изменений из заданного раздела каталога (GUID права —1131f6aa-9c07-11d1-f79f-00c04fc2dcd2); -
get-changes-all— расширенное право, необходимое для репликации секретных данных домена (GUID права —1131f6ad-9c07-11d1-f79f-00c04fc2dcd2); -
get-changes-filtered— расширенное право, необходимое для репликации изменений в отфильтрованном наборе (GUID права —89e95b76-444d-4c62-991a-0facbeda640c); -
topology-manage— расширенное право, необходимое для изменения топологии репликации для заданного раздела каталога (GUID права —1131f6ac-9c07-11d1-f79f-00c04fc2dcd2); -
topology-monitor— расширенное право, необходимое для чтения данных мониторинга репликации, включая статус репликации и метаданные объектов (GUID права —f98340fb-7c5b-4cdb-a00b-2ebdfa115a96); -
repl-sync— расширенное право, необходимое для синхронизации репликации из заданного раздела каталога (GUID права —1131f6ab-9c07-11d1-f79f-00c04fc2dcd2); -
ro-repl-secret-sync— расширенное право, необходимое для синхронизации репликации секретных данных домена в режиме read-only (GUID права –1131f6ae-9c07-11d1-f79f-00c04fc2dcd2);
-
-
--trusteedn— уникальное составное имя (DN) объекта службы каталогов, которому предоставляется или запрещается доступ к праву; -
--sddl— одна или несколько строк ACE на языке определения дескрипторов безопасности (SDDL), задающих права для добавления в список управления доступом; -
--laps-v1— добавление разрешений на доступ к атрибутамms-Mcs-AdmPwdиms-Mcs-AdmPwdExpirationTimeобъекта классаcomputerв подразделении (OU) для поддержки технологии обновления паролей локальных администраторов в варианте Legacy Microsoft LAPS; возможные значения:-
computer-self-permission— назначение подразделению (OU) разрешений, позволяющих включенным в него компьютерам обновлять пароли локальных администраторов (значения атрибутовms-Mcs-AdmPwdиms-Mcs-AdmPwdExpirationTime); -
read-password-permission— назначение подразделению (OU) разрешений, позволяющих включенным в него пользователям и группам запрашивать пароль локального администратора (значения атрибутовms-Mcs-AdmPwdиms-Mcs-AdmPwdExpirationTime); -
reset-password-permission— назначение подразделению (OU) разрешений, позволяющих включенным в него пользователям и группам устанавливать период действия пароля локального администратора (значение атрибутаms-Mcs-AdmPwdExpirationTime);
-
-
--laps-v2— добавление разрешений на доступ к атрибутамms-LAPS-Password,ms-LAPS-PasswordExpirationTime,ms-LAPS-EncryptedPassword,ms-LAPS-EncryptedPasswordHistory,ms-LAPS-EncryptedDSRMPassword,ms-LAPS-EncryptedDSRMPasswordHistoryиms-LAPS-Encrypted-Password-Attributesобъекта классаcomputerв подразделении (OU) для поддержки технологии обновления паролей локальных администраторов в варианте Windows LAPS; возможные значения:-
computer-self-permission— назначение подразделению (OU) разрешений, позволяющих включенным в него компьютерам обновлять пароли локальных администраторов (значения атрибутовms-LAPS-Passwordиms-LAPS-PasswordExpirationTime); -
read-password-permission— назначение подразделению (OU) разрешений, позволяющих включенным в него пользователям и группам запрашивать пароль локального администратора (значения атрибутовms-LAPS-Password,ms-LAPS-PasswordExpirationTime,ms-LAPS-EncryptedPasswordиms-LAPS-EncryptedPasswordHistory); -
reset-password-permission— назначение подразделению (OU) разрешений, позволяющих включенным в него пользователям и группам устанавливать период действия пароля локального администратора (значение атрибутаms-LAPS-PasswordExpirationTime).
-
Примеры
Пример добавления в список управления доступом к объекту службы каталога, переданному в параметре --objectdn (подразделение OrgUnit), записи о выдаче права на сброс паролей (GUID права — 00299570-246d-11d0-a768-00aa006e0529) пользователей, являющихся участниками подразделения OrgUnit, учетной записи с указанным идентификатором безопасности (<sid>):
samba-tool dsacl set --action=allow --objectdn='OU=OrgUnit,DC=samdom,DC=example,DC=com' --sddl="(OA;CIIO;CR;00299570-246d-11d0-a768-00aa006e0529;bf967aba-0de6-11d0-a285-00aa003049e2;<sid>)" -H ldap://samba.samdom.example.com -U Administrator
Пример добавления записей для разрешения обновления паролей локальных администраторов в рамках функциональности LAPS:
samba-tool dsacl set --laps-v2 computer-self-permission --objectdn OU=Workstations,DC=samdom,DC=example,DC=com old descriptor for OU=Workstations,DC=samdom,DC=example,DC=com: ... new descriptor for OU=Workstations,DC=samdom,DC=example,DC=com: ... O:DAG:DAD:AI(OA;CIIO;WP;7d0dfba8-b8e4-4500-a124-98b2723e4ccd;bf967a86-0de6-11d0-a285-00aa003049e2;PS)(OA;CIIO;RPWP;de15b852-8f90-49b3-99af-02c6d5fc331d;bf967a86-0de6-11d0-a285-00aa003049e2;PS)(OA;CIIO;RPWPCR;f3531ec6-6330-4f8e-8d39-7a671fbac605;bf967a86-0de6-11d0-a285-00aa003049e2;PS) ...
Пример добавления записей для разрешения получения паролей локальных администраторов в рамках функциональности LAPS:
samba-tool dsacl set --laps-v2 read-password-permission --objectdn OU=Workstations,DC=samdom,DC=example,DC=com --trusteedn CN=HelpDesk,CN=Users,DC=samdom,DC=example,DC=com old descriptor for OU=Workstations,DC=samdom,DC=example,DC=com: ... new descriptor for OU=Workstations,DC=samdom,DC=example,DC=com: ... (OA;CIIO;RP;de15b852-8f90-49b3-99af-02c6d5fc331d;bf967a86-0de6-11d0-a285-00aa003049e2;S-1-5-21-2683854171-2831461438-2877380258-1112)(OA;CIIO;RPCR;7d0dfba8-b8e4-4500-a124-98b2723e4ccd;bf967a86-0de6-11d0-a285-00aa003049e2;S-1-5-21-2683854171-2831461438-2877380258-1112)(OA;CIIO;RPCR;b245a694-7e71-4dfd-ae8a-245c7071eeea;bf967a86-0de6-11d0-a285-00aa003049e2;S-1-5-21-2683854171-2831461438-2877380258-1112)(OA;CIIO;RPCR;1ee79ca3-a51d-4e25-aae9-ebc1d06f46df;bf967a86-0de6-11d0-a285-00aa003049e2;S-1-5-21-2683854171-2831461438-2877380258-1112) ...
Пример добавления записи для разрешения установления периода действия паролей локальных администраторов в рамках функциональности LAPS:
samba-tool dsacl set --laps-v2 reset-password-permission --objectdn OU=Workstations,DC=samdom,DC=example,DC=com --trusteedn CN=HelpDesk,CN=Users,DC=samdom,DC=example,DC=com old descriptor for OU=Workstations,DC=samdom,DC=example,DC=com: ... new descriptor for OU=Workstations,DC=samdom,DC=example,DC=com: ... (OA;CIIO;RPWP;de15b852-8f90-49b3-99af-02c6d5fc331d;bf967a86-0de6-11d0-a285-00aa003049e2;S-1-5-21-2683854171-2831461438-2877380258-1112) ...
Удаление записей из списка управления доступом
Для удаления записи из списка контроля доступа для объекта службы каталогов в домене Эллес используется следующий формат вызова:
samba-tool dsacl delete [options]
Подкоманда удаляет из списка управления доступом к объекту службы каталогов, переданному в параметре --objectdn, одну или несколько строк ACE, переданных в параметре --sddl.
Параметры
Параметры вызова:
-
-H URL|--URL=URL— URL сервера LDAP; может содержать указание на протокол, имя хоста и номер порта; -
--objectdn=OBJECTDN— уникальное составное имя (DN) объекта, из дескриптора безопасности (SD) которого требуется удалить разрешения; -
--sddl— одна или несколько строк ACE на языке определения дескрипторов безопасности (SDDL), задающих права для удаления из списка управления доступом.
Примеры
Пример удаления из списка управления доступом к объекту службы каталога, переданному в параметре --objectdn (подразделение OrgUnit), записи о выдаче права на сброс паролей (GUID права — 00299570-246d-11d0-a768-00aa006e0529) пользователей, являющихся участниками подразделения OrgUnit, учетной записи с указанным идентификатором безопасности (<sid>):
samba-tool dsacl delete --objectdn='OU=OrgUnit,DC=samdom,DC=example,DC=com' --sddl="(OA;CIIO;CR;00299570-246d-11d0-a768-00aa006e0529;bf967aba-0de6-11d0-a285-00aa003049e2; <sid>)" -H ldap://samba.samdom.example.com -U Administrator