Поделиться через


Проверка контрольного права доступа в ACL объекта

Чтобы проверить право управления доступом к ACL объекта, используйте функцию AccessCheckByTypeResultList. Чтобы использовать эту функцию, приложению требуется указатель на SECURITY_DESCRIPTOR для объекта вместо интерфейса IADsSecurityDescriptor для COM-объекта дескриптора безопасности ADSI.

Чтобы проверить доступ к управляемому доступу в объекте, выполните следующие действия.

  1. Получите указатель интерфейса IDirectoryObject на объект.
  2. Используйте метод IDirectoryObject::GetObjectAttributes, чтобы получить дескриптор безопасности объекта. Имя свойства, содержащего дескриптор безопасности, — nTSecurityDescriptor. Свойство возвращается как указатель на структуру SECURITY_DESCRIPTOR.
  3. Используйте структуру SECURITY_DESCRIPTOR с функцией AccessCheckByTypeResultList, чтобы проверить разрешения для указанного права доступа к элементу управления для указанного клиента.

Пример кода в для проверки права доступа в ACL объекта подробно показывает, как это сделать.