делегирование прав в active directory
Делегирование административных полномочий в Active Directory
В этой статье мы рассмотрим особенности делегирования административных полномочий в домене Active Directory. Делегирование позволяет предоставить право на выполнение некоторых задач управления в AD обычным пользователям домена, не включая их в привилегированные доменные группы, такие как Domain Admins, Account Operators и т.д.. Например, с помощью делегирования вы можете предоставить определённой группе пользователей (допустим, Helpdesk) право на добавление пользователей в группы, заведение новых пользователей в AD и сброс пароля.
Особенности делегирования прав в AD
Для делегации полномочий в AD используется мастер Delegation of Control Wizard в графической оснастке Active Directory Users and Computers (DSA.msc).
Административные права в AD можно делегировать на довольно детальном уровне. Одной группе можно предоставить право на сброс пароля в OU, другой – на создание и удаление аккаунтов, третье на сброс пароля. Можно настроить наследование разрешений на вложенные OU. Вы можете делегировать полномочия на уровне:
Обычно не рекомендуется делегировать разрешения непосредственно для пользователя. Вместо этого создайте в AD новую группу безопасности, добавьте в нее пользователя и делегируйте полномочия на OU для группы. Если вам понадобится предоставить такие же права в домене еще одному пользователю, вам будет достаточно добавить его в группу безопасности.
Делегирование полномочий на сброс паролей и разблокировку учетных записей
Представим, наша задача – предоставить группе HelpDesk право на сброс пароля и разблокировку аккаунтов пользователей в домене. Итак, создадим новую группу в AD с помощью PowerShell:
Добавьте в группу нужных пользователей:
Запустите консоль Active Directory Users and Computers (ADUC), щелкните ПКМ по OU с пользователями (в нашем примере это ‘OU=Users,OU=Moscow,DC=corp,dc=winitpro,DC=ru’) и выберите пункт меню Delegate Control.
Выберите группу, которой вы хотите предоставить административные полномочия.
Выберите из списка один из преднастроенных наборов привилегий (Delegate the following common tasks):
Либо создайте собственное задание делегирования (Create a custom task to delegate). Я выберу второй вариант.
Выберите тип объектов AD, на которые нужно предоставить права. Т.к. нам нужно предоставить права на учетные записи пользователей, выберите пункт User Object. Если вы хотите предоставить право на создание и удаление пользователей в этом OU, выберите опции Create/Delete selected objects in this folder. В нашем примере мы не предоставляем таких полномочий.
В списке разрешений нужно выбрать те привилегий, которые вы хотите делегировать. В нашем примере мы выберем право на разблокировку (Read lockoutTime и Write lockoutTime) и сброс пароля (Reset password).
Нажмите Next и на последнем экране подтвердите назначение выбранных полномочий.
Теперь под учетной записью пользователя из группы HelpDesk попробуйте из PowerShell сбросить пароль пользователя из OU Users, например из PowerShell:
Пароль должен сброситься успешно (если он соответствует доменной политике паролей).
Теперь попробуйте создать пользователя в данной OU с помомью командлета New-ADUser:
Должна появится ошибка доступа, т.к. полномочий на создание учетных записей вы не делегировали.
Для контроля пользователям, которым вы делегированными привилегии, вы можете использовать журналы контроллеров домена. Например, вы можете отследить кто сбросил пароль пользователя в домене, узнать кто создал учетную запись пользователя в AD или отследить изменения в определённых группах AD.
Делегация полномочий на присоединение компьютеров в домен AD
По умолчанию любой пользователь домена может присоединить в домен 10 компьютеров. При добавлении в домен 11-го компьютера появляется сообщение об ошибке.
Вы можете изменить это ограничение на уровне всего домена, увеличив значение в атрибуте ms-DS-MachineAccountQuota (ссылка). Либо (гораздо правильнее и безопаснее), делегировав право на присоединение компьютеров к домену в определенной OU конкретной группе пользователей (helpdesk). Для этого нужно предоставить право создавать объекты типа (Computer objects). В мастере делегирования выберите Create selected objects in this folder.
А в секции Permissions выберите Create All Child Objects.
Отключаем делегирование прав в домене AD
Чтобы лишить группу делегированных ранее прав на OU, откройте свойства OU в консоли ADUC и перейдите на вкладку Security.
В списке разрешений найдите группу, который вы делегировали права и нажмите Remove. Список предоставленных полномочий можно посмотреть на вкладке Advanced. Как вы видите для группы HelpDesk разрешен сброс паролей.
Делегирование полномочий в Active Directory
Делегирование полномочий в Active Directory является штатной и очень важной операцией в обслуживании служб каталогов. В данной заметке я хочу дать правильный вектор движения в этом вопросе. Целью будет показать делегирование объектов пользователей, групп и компьютеров в организационной структуре каталога.
Правильная организационная структура каталога Active Directory
Перед тем как приступить непосредственно к задаче предоставления прав, следует выполнить подготовительные работы. А именно, требуется корректная организационная структура каталога. Первое, она должна быть. Второе, она должна быть гибкой и повторять организационную структуру предприятия.
Например, в организации, где присутствуют департаменты, отделы, продуктовые команды, структура может быть такой:
Пример организационной структуры Active Directory
Стоит обратить внимание, что в каждой команде (Team) присутствует 3 организационные подразделения – компьютеры, пользователи и группы. Подобный подход я часто использую, так как он предоставляет возможности филигранного делегирования полномочий и грамотного применение групповых политик.
Делегирование пользовательских объектов в Active Directory
Итак, делегирование будет осуществляется для группы безопасности, в которую входят младшие администраторы директории. Название группы будет следующим ACL_ADDS_Kyiv_Jun_Administrators. Оно составлено согласно политики именования групп. Имя составлено согласно структуре, которая поможет в определении назначения группы и упростит поиск в каталоге.
Перейдем в консоль Active Directory Users and Computers, выберем организационное подразделение, на объекты которого будут выполнятся делегирование полномочий. Будет использоваться мастер делегирования Active Directory.
Вызов мастера делегирования полномочий Active Directory
В мастере, выбираем нужную группу:
Выбор группы для делегирования в Active Directory
Воспользуемся стандартными наборами прав. С их помощью будут предоставлены права на создание и управление пользовательскими аккаунтами в организационном подразделении.
Предоставление полномочий над пользователями Active Directory
После чего, работа мастера будет завершена:
Завершение работы мастера делегирования полномочий Active Directory
Делегирование объектов групп в Active Directory
Процесс делегирования для объектов групп выполняется аналогичным образом. На этапе выбора наборов прав, выбираем следующее:
Предоставление полномочий над группами Active Directory
Делегирование объектов компьютеров в Active Directory
С данным типом объектов будет чуть сложнее. Причина в том, что в мастере отсутствует уже готовый набор полномочий. В таком случае стоит воспользоваться «кастомным» вариантом делегирования:
Выбор кастомного делегирования в Active Directory
Далее, выбираем объекты компьютеров. Внизу так же отмечаем возможности их создания и удаления:
Выбор компьютерных объектов в мастере делегирования
Для возможности сброса паролей компьютерных объектов, выставляем соответствующие полномочия:
Право на сброс паролей компьютерных объектов
Для возможности блокировать компьютерные объекты, дополнительно, предоставляем право на запись атрибута Write userAccountControl. Оно станет доступным после включения чек-бокса Property-specific, как показано на скриншоте:
Выбор атрибута userAccountControl в мастере делегирования
Сам атрибут находится пости в конце списка.
Настройка делегирования для перемещения объектов пользователей, компьютеров и групп в Active Directory
Для задачи перемещения объектов между организационными подразделениями требуется дополнительная конфигурация. На технете можно найти таблицу с необходимыми правами, ее копия ниже:
Object | Organizational Unit | Permission Tab | Apply to | Permission |
User | Source Organizational Unit | Object | This object and all descendant objects (*) | Delete User objects |
Properties | Descendant User objects | Write Distinguished Name | ||
Properties | Descendant User objects | Write name (**) | ||
Properties | Descendant User objects | Write Name (**) | ||
Destination Organizational Unit | Object | This object and all descendant objects (*) | Create User objects | |
Group | Source Organizational Unit | Object | This object and all descendant objects (*) | Delete Group objects |
Properties | Descendant Group objects | Write Distinguished Name | ||
Properties | Descendant Group objects | Write name (**) | ||
Properties | Descendant Group objects | Write Name (**) | ||
Destination Organizational Unit | Object | This object and all descendant objects (*) | Create Group objects | |
Computer | Source Organizational Unit | Object | This object and all descendant objects (*) | Delete Computer objects |
Properties | Descendant Computer objects | Write Distinguished Name | ||
Properties | Descendant Computer objects | Write name (**) | ||
Properties | Descendant Computer objects | Write Name (**) | ||
Destination Organizational Unit | Object | This object and all descendant objects (*) | Create Computer objects |
Выводы
Как показала практика, делегирование полномочий в Active Directory не является сложной задачей. Единственное затруднение может вызвать конфигурация для компьютерных объектов из-за отсутствия подготовленных шаблонов прав. Конечно, статья не описывает всех возможностей делегирования. Этот процесс не заканчивается на пользователях и компьютерах, но как я писал ранее — задача заметки дать правильный вектор движения в этом вопросе.
Как делегировать контроль над OU в Active Directory
В крупных организациях существует несколько команд ИТ-администраторов и специалистов службы поддержки и в этом случае необходимо делегирование полномочий. Например, специалисты службы поддержки или руководители групп могут сбрасывать пароли, системные администраторы могут изменять членство в группах, а управлять OU могут только ИТ-архитекторы.
Такое разделение обязанностей действительно полезно для оптимизации операций и безопасности.
Чтобы выполнить делегирование управления, администраторы домена должны иметь разрешения или полные привилегии управления над OU. Это можно сделать несколькими способами: через Active Directory Users and Computers, командную строку, группы и пр.
Делегирование через Active Directory Users and Computers
Для того чтобы делегировать управление через Active Directory Users and Computers (dsa.msc). Выполните следующие действия:
Запустите Active Directory Users and Computers. Щелкните правой кнопкой мыши на OU, которому вы хотите делегировать управление, и выберите Delegate Control.
Появится мастер делегирования контроля, где вам нужно нажать «Next«.
В появившемся окне нужно нажать «Add. » и выбрать пользователей или группы, которым вы хотите делегировать управление, и нажать «Next«.
В окне «Tasks to Delegate» выберите задачи, которые вы хотите делегировать, вы также можете создать пользовательскую задачу с нуля.
Нажмите Next и Finish
Разрешения на делегирование можно просмотреть в свойствах OU на вкладке Security.
Делегирование через командную строку
Для делегирования прав доступа компания Microsoft разработала сервис dsacls.exe. Он хорошо подходит для назначения делегирования посредством скриптов. Он также хорошо подходит для отображения текущих прав доступа. Вы можете использовать параметр /a для отображения всех прав доступа у OU, например:
dsacls.exe «OU=Employees,DC=office,dc=local» /a
Здесь мы видим права доступа KJenkins, которые мы делегировали в нашем предыдущем примере.
Чтобы добавить новые делегированные привилегии для учетной записи, нам нужно назначить ей разрешения в соответствии с определенным синтаксисом. Синтаксис состоит из основных и дополнительных прав доступа, вот список основных:
Наиболее популярные расширенные права:
Давайте делегируем нашему пользователю KJenkins права на удаление OU Employees:
dsacls.exe «OU=Employees,DC=office,DC=local» /G OFFICE\KJenkins:SD;
Делегирование через встроенные группы
По умолчанию существуют встроенные группы, такие как Account Operators и Server Operators, которые выполняют административные задачи в Active Directory.
Вы можете включить любого пользователя в эти группы и получить дополнительные полномочия в домене без необходимости предоставления полного доступа к управлению. Но имейте в виду, что встроенная группа Account Operators предоставляет больше разрешений, чем требуется на самом деле. Они могут создавать, изменять и удалять все объекты, кроме членов группы Domain Admins, во всех OU, кроме OU Domain Controllers.
Лучшие практики по делегированию прав в OU
— Постройте матрицу управления делегированием, чтобы документировать все права доступа к AD
— Всегда используйте группы при делегировании прав, не используйте отдельные учетные записи пользователей. Так вам будет проще и безопаснее предоставлять делегированный доступ
— Избегайте запрещающих разрешений, поскольку они имеют приоритет над разрешенными, и это может сделать ваши списки доступа слишком сложными для управления.
— Попробуйте протестировать настройки делегирования на предмет нежелательных эффектов.
sysrtfm
Блог, инструкция системного администратора, форум, советы, помощь
Делегирование прав в Active Directory
Привет, сегодня, с позволения своего коллеги Дружкова Дмитрия (автора данной инструкции), поделюсь с Вами опытом делегирования административных полномочий для работы в Active Directory. Изначально задача заключается в том что бы предоставить ограниченные права рядовому сисадмину для администрирования Organization Unit (OU) отдельного филиала компании. Работать будем в WIndows Server 2008 R2.
Для делегирования полномочий на объект Active Directory необходимо иметь права доступа администратора на него.
1. Выделить требуемый объект и нажатием правой кнопкой мыши вызвать меню свойств (для этого в консоли «Active Directory – Пользователи и компьютеры» в меню «Вид» должен быть выбран пункт «Дополнительные компоненты» ). Выбрать пункт меню «Делегирование управления…»(рисунок 1).
2. В появившемся приветственном окне «Мастера делегирования управления» меню нажать кнопку «Далее» (рисунок 2).
3. В окне «Пользователи или группы» нажать кнопку «Добавить» и в появившемся меню выбрать требуемую группу безопасности или учётную запись (делегирование прав доступа на контейнер предпочтительно производить для доменной группы безопасности). После выбора всех требуемых учётных записей нажать «ОК» и «Далее» (рисунок 3).
4. В окне «Делегируемые задачи» выбрать «Создать особую задачу для делегирования» и нажать «Далее» (рисунок 4).
5. В окне «Тип объекта Active Directory» выбрать пункт меню «Только следующими объектами в этой папке:» и далее отметить следующие объекты:
· Группа объектов
· Компьютер объектов
· Контакт объектов
· Общая папка объектов
· Подразделение объектов
· Пользователь объектов
· Принтер объектов
Отметить пункты «Создать в этой папке выбранные объекты» и «Удалить из этой папки объекты».
Нажать кнопку «Далее» (рисунок 5).
6. В окне «Разрешения» оставить пункт меню «Общие» и выбрать «Полный доступ». Нажать «Далее» (рисунок 6).
7. В окне «Завершение мастера делегирования управления» нажать «Готово» (рисунок 7).
Делегирование доступа в AD
Наложение административных разрешений на объекты AD упрощает управление крупными инфраструктурами AD
Делегирование административных полномочий Active Directory (AD) позволяет передать обязанности по управлению инфраструктурой Windows AD какой-либо административной учетной записи или группе. Без делегирования прав AD невозможно распределить полномочия по управлению большим числом объектов AD (пользователей, компьютеров, принтеров, сайтов, доменов и т.д.) среди нескольких администраторов. Хороший пример успешного делегирования полномочий AD — предоставление специалистам службы технической поддержки прав, достаточных для изменения паролей пользовательских учетных записей AD, но не более того. Делегирование полномочий AD позволяет децентрализовать административные задачи и, как следствие, повысить эффективность управления, сократить затраты и улучшить общую управляемость крупных ИТ-инфраструктур.
Значение OU
Делегирование прав AD возможно благодаря модели авторизации AD, которая поддерживает детализированные разрешения для объектов AD и наследование разрешений родительских объектов дочерними. Организационная единица (OU), контейнер объектов AD, — важный элемент механизма административного делегирования объектов AD. Можно делегировать административное управление объектами, которые содержатся в OU. Работая с OU, необходимо помнить следующее:
На экране 1 показана структура OU, охватывающая несколько географических районов. Организационные единицы верхнего уровня отражают континенты и города инфраструктуры: Европа — OU верхнего уровня, под ней находятся организационные единицы для Брюсселя (BRO), Дублина (DBO), Амстердама (AMS) и Лондона (LON). OU каждого города разделена на дочерние по типам администрируемых объектов: администраторам, пользователям, машинам и принтерам. Отличительное имя (distinguished name — DN) отражает уровень вложения OU. Например, объект fileserver в структуре OU (экран 1) может иметь следующее DN: CN=FileServer1, OU=Member Servers, OU=Machines, OU=BRO, OU=EU, DC=hp, DC=com.
Организация административного делегирования
Делегировать административные полномочия удобно с помощью мастера Delegation of Control компании Microsoft. На экране 2 показан заключительный экран мастера, на котором приведена сводка переданных полномочий. Мастер доступен на уровнях сайта, домена и OU из оснасток Active Directory Users and Computers и Active Directory Sites and Services консоли Microsoft Management Console (MMC). С помощью мастера Delegation of Control администратор может выбрать заранее определенный набор задач делегирования, перечисленных в таблице 1. Можно создать специализированные задачи, которые более точно отражают потребности конкретной организации, если сформулировать задачу в мастере Delegation of Control, или описать ее заранее, а затем передать мастеру.
|
Экран 2. Мастер Delegation of Control |
Чтобы передать заранее сформулированную задачу мастеру Delegation of Control, необходимо изменить файл настройки delegwiz.inf. На экране 3 показан фрагмент этого файла, находящегося в каталоге %windir%/inf. Синтаксис, который необходимо использовать при настройке списка задачи, разъясняется в статье Microsoft «How to customize the task list in the Delegation Wizard,» http://support.microsoft.com/?kbid=308404.
|
Экран 3. Файл настройки Delegwiz.inf. |
Администраторы, хорошо владеющие ACL-редактором объектов AD и моделью авторизации AD, могут обойтись без мастера Delegation of Control и назначать делегирование напрямую через ACL-редактор сайта, OU или любого другого объекта. Всем остальным настоятельно рекомендуется пользоваться мастером Delegation of Control.
Консоль Group Policy Management Console (GPMC) — инструмент управления AD из Windows Server 2003 — удобна для делегирования административных полномочий над объектами Group Policy Objects (GPO). В интерфейсе GPMC предусмотрена специальная вкладка Delegation (экран 4) для каждого GPO. GPMC можно загрузить бесплатно с Web-узла Microsoft.
|
Экран 4. Вкладка делегирования в GPMC. |
С помощью мастера Delegation of Control можно добавлять разрешения, но не отменять их. Отдельные административные разрешения AD можно без труда удалить из редактора ACL или с использованием инструмента командной строки dsacls.exe. Если нужно отменить делегирование административных разрешений AD, назначенных учетной записи на дочерние объекты при делегировании на уровне родительского OU, то можно воспользоваться инструментом командной строки dsrevoke.exe, который облегчает и автоматизирует удаление разрешений в иерархических структурах объектов. Инструмент можно загрузить с сайта Microsoft.
Для более полного отображения административного делегирования в AD можно построить специальный административный интерфейс, именуемый консолью задачи, taskpad, на уровне интерфейса администратора, которому были делегированы разрешения. Чтобы создать консоль задачи, следует открыть новую консоль MMC и добавить оснастку, затем щелкнуть правой кнопкой мыши в контейнере оснасток и выбрать пункт New Taskpad View. Мастер Taskpad View Wizard помогает пользователю создать консоль задачи. Специализированные консоли MMC и taskpad можно сохранять как обычные файлы и рассылать администраторам по электронной почте.
Рекомендации по делегированию AD
Microsoft рекомендует выполнять делегирование только на уровне OU, но не доменов или сайтов AD. При делегировании на уровне домена невозможно полностью изолировать права конкретного администратора. Домен Windows — всего лишь граница для репликации AD. В Windows 2000 и более поздних версиях операционной системы настоящей границей безопасности является лес. Чтобы добиться полной изоляции администраторов, необходимо организовать несколько лесов AD.
Не следует делегировать административные задания на уровне сайта, так как сайты привязаны к физической структуре сети, используемой при создании инфраструктуры AD. В основе сайтов лежат IP-адреса и подсети. То обстоятельство, что единственный сайт может содержать различные леса, домены и OU, может чрезмерно усложнить процесс анализа ACL.
Microsoft также не рекомендует делегировать следующие административные задачи, связанные с инфраструктурой AD:
Более подробные рекомендации Microsoft по делегированию AD приведены в документе «Best practices for Active Directory Delegation».
Примеры делегирования административных разрешений
В следующих примерах наглядно показано, как использовать административное делегирование в домене Windows 2003. В результате делегирования сотрудники службы поддержки смогут изменять пароли пользователей, пользователи — изменять некоторые данные в своих учетных записях, а некоторые администраторы — выполнять ключевые задачи управления сетью.
Пример службы поддержки. Как отмечалось выше, административное делегирование AD полезно для службы технической поддержки. Как правило, организации делегируют ее сотрудникам следующие полномочия: возможность изменять пароли пользователей, устанавливать свойство учетной записи User must change password at next logon и разблокировать учетные записи, сбрасывая свойство Account is locked out.
Для делегирования перечисленных выше административных задач сотрудникам службы поддержки необходимо предоставить им следующие разрешения в OU, содержащем учетные записи пользователей.
Чтобы отобразить атрибуты pwdLastSet и lockoutTime учетной записи user в расширенном виде редактора ACL на системах Windows 2000, требуется отредактировать файл конфигурации dssec.dat. Атрибутам lockoutTime и pwdLastSet необходимо присвоить значение 0 (по умолчанию выбирается значение 7). На экране 5 показано, как после установки pwdLastSet в значение 0 в файле dssec.dat разрешения Read pwdLastSet и Write pwdLastSet становятся видимыми в редакторе ACL.
Пример самоуправления учетной записью пользователя. По умолчанию пользователи AD могут редактировать определенные атрибуты своих учетных записей, такие как номер телефона и местонахождение офиса. Благодаря этой особенности AD можно снизить нагрузку на администраторов службы поддержки, освободив их от обязанности настраивать простые и время от времени меняющиеся свойства учетной записи пользователя. Администратор может задать круг атрибутов учетной записи, самостоятельно изменяемых пользователем.
Чтобы разрешить самостоятельное управление учетной записью, компания Microsoft ввела специальный субъект безопасности с именем Self. По умолчанию различные разрешения приписываются субъекту безопасности Self, и каждый пользователь получает возможность редактировать атрибуты своей учетной записи в AD. Чтобы изменить самоуправляемый атрибут, необходимо изменить стандартный дескриптор безопасности (т.е. выбираемые по умолчанию параметры авторизации) для класса объекта User в AD.
|
Экран 5. Атрибут pwdLastSet учетной записи пользователя |
Назначить стандартный дескриптор безопасности классу объекта AD можно из диалогового окна свойств данного класса. Сделать это проще всего с помощью оснастки Active Directory Schema консоли MMC. Прежде чем запустить оснастку, необходимо зарегистрировать библиотеку schmmgmt.dll. Для этого требуется ввести следующую команду:
Затем нужно открыть оснастку Active Directory Schema, отыскать объект User в контейнере Classes и открыть диалоговое окно Properties этого класса. Стандартный дескриптор безопасности можно изменить на вкладке Default Security (экран 6). В Windows 2000 эта вкладка называется просто Security, хотя такое название недостаточно точно отражает ее назначение.
|
Экран 6. Изменение стандартного дескриптора безопасности AD |
На экране 7 показаны разрешения, присваиваемые по умолчанию субъекту безопасности Self для класса объектов User. При изменении стандартного дескриптора безопасности класса объектов только объекты, созданные после изменения, будут иметь обновленные разрешения.
|
Экран 7. Стандартные разрешения субъекта безопасности Self |
Примеры управления сетью. В табл. 2 приведены примеры задач управления сетью, которые можно делегировать определенным администраторам внутри организации, и способы настройки административного делегирования.
Инструменты делегирования AD от независимых поставщиков
В табл. 3 перечислены программные продукты, упрощающие административное делегирование в AD. Все они обеспечивают уровень административной абстракции на базе ролей, который реализован на верхних ступенях модели авторизации AD. Все продукты располагают логикой преобразования организационных ролей и связанных с ними административных задач AD в собственные разрешения доступа к AD. Инструменты делегирования в AD от независимых поставщиков помогают быстрее освоить процедуры административного делегирования: для работы с ними не нужно быть специалистом высокой квалификации. Кроме того, в таких инструментах предусмотрены функции, упрощающие резервное копирование и восстановление параметров делегирования в AD.
Административное делегирование в AD — мощный механизм, с помощью которого можно делегировать повседневные задачи управления AD. Для корректного и максимально эффективного делегирования необходимо доскональное знание модели авторизации AD. Но даже опытным администраторам не рекомендуется напрямую изменять разрешения объектов AD. Делать это лучше с помощью мастера AD Delegation of Control или инструмента делегирования от независимой компании.
Член Security Office компании HP. Специализируется на управлении идентификационными параметрами и безопасности в продуктах Microsoft. Автор книги Windows Server 2003 Security Infrastructures (издательство Digital Press). jan.declercq@hp.com
Поделитесь материалом с коллегами и друзьями