Как проверяется доступ к папкам NTFS в домене Active Directory?

Как проверяется доступ к папкам NTFS в домене Active Directory?

Я понимаю, что и папки NTFS, и объекты AD используют дескрипторы безопасности и DACL для проверки доступа пользователей/процессов. MS Learn - Как работает проверка доступа

Однако, как проверка доступа разрешает ACE для вложенных групп AD? Например:

  • Группе AD AD-Parentпредоставлены права на изменениеF:\Restrict
  • Группа AD AD-VIPsявляется потомкомAD-Parent
  • Пользователь vipявляется членомAD-VIPs

Я понимаю, что

  • vipдескриптор безопасности будет иметь ACE, ссылающийся на AD-VIPsи
  • F:RestrictDACL будет иметь ACE, ссылающийся наAD-Parent

Как и какой процесс в Windows находит цепочку `vip -> AD-VIPs -> AD-Parent' и предоставляет доступ?

решение1

Во время проверки входа в систему/аутентификации/авторизациибезопасностьЧленство в группах добавляется в часть Privilege Access Certificate (PAC) токена Kerberos. Это включает вложенные группы.

При доступе к папке хост с ресурсом (в данном случае файловый сервер) сравнивает SecurityIdentifiers в ACL с SecurityIdentifiers в PAC токена Kerberos. Если есть совпадение, доступ предоставляется.

https://learn.microsoft.com/en-us/windows/win32/adschema/a-tokengroups

«Вычисляемый атрибут, содержащий список идентификаторов безопасности, полученных в результате операции расширения транзитивного членства в группе для данного пользователя или компьютера. Группы токенов не могут быть получены, если отсутствует глобальный каталог для получения транзитивного обратного членства».

решение2

Давайте начнем с предоставленной вами ссылки (выделено мной):

Система сравнивает доверенное лицо в каждой записи ACE с доверенными лицами, указанными в токене доступа потока.Токен доступа содержит идентификаторы безопасности (SID), которые идентифицируют пользователя и групповые учетные записи, к которым принадлежит пользователь.

Фактически, «групповые учетные записи, к которым принадлежит пользователь» берутся из билета Kerberos, который пользователь получил при входе в систему. Билет содержит идентификаторы безопасности (SID) всех групп, к которым принадлежит пользователь, независимо от того, вложена ли группа в другую группу или нет.

Конкретно отвечая на ваш вопрос:

Как и какой процесс в Windows находит цепочку `vip -> AD-VIPs -> AD-Parent' и предоставляет доступ?

Эта задача выполняется контроллером домена при генерации билета на выдачу билетов (TGT) (обычно, когда пользователь вошел в систему). TGT содержит SID всех групп, к которым принадлежит пользователь.

Вы можете провести эксперимент и увидеть немного этого.Исследователь процессов: Запустите Process Explorer, дважды щелкните процесс, запущенный пользователем домена (например, notepad.exe), щелкните вкладку «Безопасность», и здесь вы сможете увидеть членство в группах, даже если группы вложены.

Вкладка «Безопасность» в Process Explorer

Связанный контент