Вопрос или проблема
Я пытаюсь разрешить аккаунту обновлять очень специфические атрибуты на всех объектах пользователя. Я настраиваю эту безопасность на объекте “User”. Когда я добавляю аккаунт на вкладке безопасности, перехожу в расширенные настройки, редактирую разрешения аккаунта и начинаю просматривать список атрибутов, я могу найти всего несколько, таких как Имя, но большинство атрибутов, которые я хочу им предоставить, отсутствуют. Как я могу предоставить аккаунту права на запись в эти атрибуты?
Атрибуты, для которых мне нужно предоставить разрешение:
- Имя (givenName)
- Фамилия (sn)
- Инициалы (initials)
- Отдел (department)
- Компания (company)
- Должность (title)
- Менеджер (manager)
- Информация о местоположении (physicalDeliveryOfficeName, streetAddress, postOfficeBox)
- Рабочий телефон (telephoneNumber)
- Пейджер (pager)
- IP-телефон (ipPhone)
- Другой IP-телефон (otherIpPhone)
- Эскиз логотипа (thumbnailLogo)
- jpeg-фото (jpegPhoto)
- Описание (displayName)
Спасибо
Хотя ответ @sysdmin1138 был правильным, стоит упомянуть, что изменение области — не единственная причина, по которой вещи отсутствуют в представлении. Есть вещи, которые невидимы по умолчанию.
Некоторые объекты, такие как physicalDeliveryOfficeName, скрыты из вида, поэтому их нельзя легко делегировать. Многие другие атрибуты также скрыты, но physicalDeliveryOfficeName очень специфичен и может служить хорошим примером того, как работают вещи для делегирования.
Вкладка “Разрешения для свойства” для объекта пользователя, которую вы видите через Active Directory Users and Computers, может не отображать каждое свойство объекта пользователя. Это связано с тем, что пользовательский интерфейс управления доступом фильтрует типы объектов и свойств, чтобы сделать список легче управляемым. Хотя свойства объекта определены в схеме, список отфильтрованных свойств, которые отображаются, хранится в файле Dssec.dat, который находится в папке %systemroot%\System32 на всех доменных контроллерах. Вы можете редактировать записи для объекта в файле, чтобы отображать отфильтрованные свойства через пользовательский интерфейс.
Отфильтрованное свойство выглядит так в файле Dssec.dat:
[User]
propertyname=7
Чтобы отображать разрешения на чтение и запись для свойства объекта, вы можете изменить значение фильтра, чтобы отобразить одно или оба разрешения. Чтобы отображать разрешения на чтение и запись для свойства, измените значение на ноль (0):
[User]
propertyname=0
Чтобы отображать только разрешение на запись для свойства, измените значение на 1:
[User]
propertyname=1
Чтобы отображать только разрешения на чтение для свойства, измените значение на 2:
[User]
propertyname=2
После редактирования файла Dssec.dat необходимо выйти и снова зайти в Active Directory Users and Computers, чтобы увидеть свойства, которые больше не фильтруются. Файл также является специфичным для машины, поэтому его изменение на одной машине не обновляет все остальные. Решать вам, хотите ли вы, чтобы он был видим везде или нет.
Полная история о physicalDeliveryOfficeName и о том, как его изменить с помощью скриншотов, можно прочитать в моем блоге.
PS1. Поскольку physicalDeliveryOfficeName является особым случаем, после изменения этой настройки ищите Read/Write Office Location. К сожалению, имя physicalDeliveryOfficeName никогда не отображается.
PS2. Пока эти настройки не будут открыты путем изменения dssec.dat, вы не сможете их увидеть. Поскольку этот файл является компьютерным, вполне возможно, что он виден на некоторых компьютерах и не виден на других в зависимости от того, вносили ли кто-то изменения ранее или нет. Это может объяснить, почему вы могли видеть его раньше, а затем нет.
PS3. Извините за воскресение, но я только что провел несколько часов, пытаясь найти причину, поэтому решил поделиться ею на будущее.
Я полагаю, чтобы получить полный список, вы должны изменить “Применить к” на “пользователь”, а не “этот объект и все дочерние объекты”. Это изменяет диалог выбора свойств, включая все из них.
Перейдите в “Advanced” редактор ACL. Добавьте субъекта, которому должны быть предоставлены права. В диалоге “Разрешение для [имя субъекта]”, перейдите на вкладку “Свойства”, выберите “Объекты пользователей” в списке “Применить к:”, и выберите свойства и желаемые разрешения из списка.
Я выборочно проверил большинство из списка, и нашел все, что искал там.
.
Ответ или решение
Теория
Настройка прав доступа к атрибутам объектов пользователей в Active Directory (AD) — это важная задача, обеспечивающая безопасность и соответствие требованиям компании. Active Directory предоставляет гибкий и масштабируемый подход к управлению разрешениями, но иногда процесс настройки может оказаться неочевидным из-за скрытых атрибутов и сложности интерфейса.
Пример
Представьте, что вам необходимо предоставить учетной записи права записи на очень специфичные атрибуты всех объектов пользователя AD. Вы начинаете с открытия модуля Active Directory Users and Computers (ADUC), находите вкладку "Безопасность", добавляете учетную запись, для которой хотите настроить права, и исходите из простого принципа настройки прав. Однако, при просмотре списка доступных атрибутов, вы находите только несколько нужных вам, таких как First Name (givenName), в то время как остальные, например, physicalDeliveryOfficeName или jpegPhoto, отсутствуют.
Применение
Чтобы обойти эту сложность и настроить доступ, вам потребуется выполнить следующие шаги:
-
Настройка отображения скрытых атрибутов:
- Файл
Dssec.dat
, расположенный в директории%systemroot%\System32
, отвечает за фильтрацию видимых атрибутов в интерфейсе ADUC. - Откройте этот файл с помощью текстового редактора, такого как Notepad.
- Найдите секцию
[User]
, которая перечисляет свойства пользователя. - Атрибуты, такие как
physicalDeliveryOfficeName
, могут быть скрыты путем задания значения7
. Чтобы сделать их видимыми для изменения прав доступа, замените значение на0
, чтобы отображать как чтение, так и запись. - Сохраните изменения и перезапустите ADUC для применения новых конфигураций. Помните, что изменения нужно вносить на каждом контроллере домена, где вам необходимы видимые атрибуты.
- Файл
-
Настройка разрешений через Advanced ACL Editor:
- Откройте ADUC, перейдите в режим "Дополнительно" в редакторе ACL.
- Добавьте учетную запись, которой необходимо предоставить права.
- В диалоговом окне "Разрешение для [имя учётной записи]" перейдите на вкладку "Свойства".
- В списке "Применить к:" выберите "Объекты пользователя".
- Отметьте нужные вам атрибуты и выберите тип разрешения (например, "Запись").
-
Убедитесь в корректной настройке прав:
- Проверьте, что изменения были применены корректно, протестировав работу под новой учетной записью. Убедитесь, что учетная запись может изменять только те атрибуты, которые были настроены.
-
Учитывайте особенности:
- Изменения, внесенные в
Dssec.dat
, специфичны для конкретного компьютера. Это означает, что если вы настраиваете ADUC на нескольких машинах, вам придется внести изменения на каждой. - Помните, что физически, некоторые имена атрибутов могут отличаться от привычных. Например,
physicalDeliveryOfficeName
будет отображаться как "Office Location". Следите за такими нюансами при настройке.
- Изменения, внесенные в
В заключение, настройка специфических прав доступа к атрибутам пользователя в AD требует понимания и осторожности. Изучение документации и экспериментирование с настройками, такими как Dssec.dat
, помогут в успешной реализации ваших задач. Детальный подход к управлению доступом гарантирует, что у необходимых пользователей будут все нужные им права доступа, при этом защита и безопасность данных останутся на высоком уровне.