Управление доступом

Термин управление доступом описывает, каким образом служба каталога обеспечивает безопасный доступ к данным каталога. Управление доступом в ADAM (Active Directory Application Mode) осуществляется в два этапа. Во-первых, ADAM выполняет проверку подлинности удостоверений пользователей, запрашивающих доступ к каталогу. Доступ к каталогу предоставляется только пользователям, успешно прошедшим проверку подлинности. Во-вторых, ADAM использует дескрипторы безопасности, называемые «таблицами управления доступом» (ACL), на объектах каталога, чтобы определить, к каким объектам имеется доступ у пользователя, прошедшего проверку подлинности.

Проверка подлинности

Пользователи, или участники безопасности, запрашивают данные каталога от ADAM с помощью приложений, поддерживающих службу каталога, которые в свою очередь осуществляют запросы к ADAM, используя протокол LDAP. Перед запросом данных приложение, поддерживающее службу каталога, должно предоставить ADAM учетные данные пользователя для проверки подлинности или привязки. В запрос входит имя пользователя, пароль и, в зависимости от типа привязки, имя домена или компьютера.

ADAM может принимать запросы на проверку подлинности или привязку как от участников безопасности ADAM, так и участников безопасности Windows (локальных и домена). Проверка подлинности участников безопасности ADAM осуществляется непосредственно службой ADAM. Проверка подлинности участников безопасности Windows осуществляется локальным компьютером. Проверка подлинности участников безопасности домена должна проводиться контроллером домена Active Directory. В таблице ниже приведена сводка методов проверки подлинности, используемых в ADAM с учетом типа участника безопасности.

Участник безопасности Принимаемые форматы учетных данных Кем осуществляется проверка подлинности

ADAM

  • Различающееся имя

  • Каноническое имя

  • displayName значение атрибута

  • Основное имя пользователя (UPN)

Экземпляр ADAM

Учетная запись рабочей станции

  • Имя/учетная запись компьютера

Локальный администратор безопасности (LSA) на локальном компьютере

Учетная запись домена

  • Имя/учетная запись домена

  • Имя UPN

LSA на контроллере домена, находящемся в домене пользователя

Примечание

Основное имя пользователя, применяемое в ADAM, не требует использования символа «@».

Возможные пути проверки подлинности в ADAM показаны на рисунке ниже.

Проверка подлинности ADAM

Дополнительные сведения о привязке к каталогам LDAP см. в документе, посвященном установке сеанса LDAP на веб-узле MSDN корпорации Майкрософт.

Участники безопасности ADAM

Участники безопасности ADAM — это пользователи или другие объекты, создаваемые и хранящиеся в каталоге ADAM. Участники безопасности ADAM могут быть созданы на основе импортируемых пользовательских классов (в том числе inetOrgPerson), поставляемых с ADAM. Участники безопасности ADAM также могут быть созданы из любого класса объектов в схеме, содержащего статический вспомогательный класс SecurityPrincipal и атрибут unicodePwd. ADAM присваивает каждому участнику безопасности ADAM уникальный идентификатор безопасности (SID), который является уникальным во всех контекстах именования ADAM. Дополнительные сведения об участниках безопасности ADAM см. в разделе Общие сведения о пользователях и группах ADAM.

Таблицы управления доступом

Разрешения на доступ к объектам каталога ADAM присваиваются пользователям и группам с помощью таблиц управления доступом (ACL). Таблица ACL содержит список пользователей и групп, которым были назначены разрешения на доступ к объекту каталога. Кроме того, в списке указаны типы присвоенных разрешений (чтение, запись и т. д.). (Каждая отдельная запись в таблице ACL называется записью управления доступом (ACE).) Если таблица ACL объекта каталога не присваивает явным образом разрешения пользователю или группе, к которой пользователь принадлежит, этому пользователю будет отказано в доступе к данному объекту.

Таблицы управления доступом в ADAM работают в основном точно так же, как в Active Directory. Отличие между записями управления доступом (ACE) в ADAM и Active Directory заключается в том, что ADAM проверяет идентификаторы SID по мере их добавления к ACE, в то время как Active Directory разрешает использовать все идентификаторы SID пользователей. Идентификаторы SID пользователей в ADAM разрешается использовать только в том случае, если выполняется одно из следующих условий:

  • Пользователь ADAM находится в том же контексте именования, что и объект, для которого добавляется запись ACE.

  • Объект расположен в контексте именования схемы.

  • Объект расположен в контексте именования конфигурации.

Контекст безопасности

После успешной проверки подлинности пользователя, ADAM может создать контекст безопасности для этого пользователя. В этом контексте безопасности указывается идентификатор SID пользователя вместе со списком всех групп, к которым пользователь принадлежит.

Контекст безопасности для участников безопасности Windows, прошедших проверку подлинности, включает:

  • Идентификатор безопасности пользователя

  • Членство пользователя в группе Windows

  • Членство пользователя в группе ADAM (включая группы, непосредственным членом которых он является, и группы, членом которых он является в результате рекурсивного расширения группы)

Контекст безопасности для участников безопасности Windows, прошедших проверку подлинности, включает:

  • Идентификатор безопасности пользователя

  • Идентификаторы безопасности каждой из следующих групп ADAM:

    • Everyone

    • AuthUsers

    • Группа пользователей из раздела, в котором расположен пользователь ADAM

    • Группа пользователей из раздела конфигурации

    • Группы, в которых пользователь является членом в результате рекурсивного расширения группы

Сравнивая контекст безопасности пользователя, прошедшего проверку подлинности, с таблицей ACL объекта каталога, доступ к которому запросил пользователь, ADAM определяет, может ли быть предоставлен этому пользователю доступ к объекту.

Извлечение идентификаторов безопасности пользователей

Идентификаторы безопасности (SID) активных индивидуальных пользователей и групп пользователей можно извлечь с помощью явного запроса атрибута tokenGroups на rootDSE. Атрибут tokenGroups является многозначным. Первым значением является индивидуальный идентификатор SID пользователя, после которого следуют значения идентификаторов SID группы ADAM и группы Windows.

Дополнительные сведения о том, как осуществляется управление доступом в Active Directory и ADAM см. в документе, посвященном управлению доступом к объектам Active Directory на веб-узле MSDN корпорации Майкрософт.