Функция SeQuerySecurityDescriptorInfo (ntifs.h)
Подпрограмма SeQuerySecurityDescriptorInfo извлекает копию дескриптора безопасности объекта.
Синтаксис
NTSTATUS SeQuerySecurityDescriptorInfo(
[in] PSECURITY_INFORMATION SecurityInformation,
[out] PSECURITY_DESCRIPTOR SecurityDescriptor,
[in, out] PULONG Length,
[in, out] PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor
);
Параметры
[in] SecurityInformation
Указатель на SECURITY_INFORMATION значение, указывающее, какие сведения о безопасности запрашиваются.
Значение | Значение |
---|---|
DACL_SECURITY_INFORMATION | Указывает, что запрашивается список управления доступом (DACL) для объекта. Требуется доступ READ_CONTROL. |
GROUP_SECURITY_INFORMATION | Указывает, что запрашивается первичный идентификатор группы объекта. Требуется доступ READ_CONTROL. |
OWNER_SECURITY_INFORMATION | Указывает, что запрашивается идентификатор владельца объекта. Требуется доступ READ_CONTROL. |
SACL_SECURITY_INFORMATION | Указывает, что запрашивается системный ACL (SACL) объекта. Требуется доступ ACCESS_SYSTEM_SECURITY. |
[out] SecurityDescriptor
Выделенный вызывающим объектом пользовательский буфер, который SeQuerySecurityDescriptorInfo заполняет копией указанного дескриптора безопасности в самосображаемом формате.
[in, out] Length
Указатель на переменную, указывающую размер (в байтах) буфера, на который указывает SecurityDescriptor. После возврата SeQuerySecurityDescriptorInfo задает для этой переменной количество байтов, необходимых для хранения запрошенной информации.
[in, out] ObjectsSecurityDescriptor
Указатель на указатель на дескриптор безопасности объекта. Дескриптор безопасности должен иметь самостоятельный формат.
Возвращаемое значение
Код возврата | Описание |
---|---|
|
Вызов SeQuerySecurityDescriptorInfo выполнен успешно. |
|
Буфер слишком мал для дескриптора безопасности. Ни одна из сведений о безопасности не была скопирована в буфер. |
Комментарии
Дескриптор безопасности может иметь абсолютный или относительный формат. Дескриптор безопасности в абсолютном формате содержит указатели на содержащиеся в нем сведения, а не сами сведения. Дескриптор безопасности в автономном формате содержит сведения в непрерывном блоке памяти. В самостоятельном дескрипторе безопасности SECURITY_DESCRIPTOR структура всегда запускает сведения, но другие компоненты дескриптора безопасности могут следовать за структурой SECURITY_DESCRIPTOR в любом порядке. Вместо использования адресов памяти компоненты дескриптора безопасности идентифицируются по смещениям от начала дескриптора безопасности. Этот формат удобен, когда дескриптор безопасности должен храниться на диске или передаваться по протоколу связи.
Так как дескриптор безопасности возвращается в само относительном формате, вызывающий объект SeQuerySecurityDescriptorInfo должен привести значение, возвращаемое в параметре SecurityDescriptor , к типу PISECURITY_DESCRIPTOR_RELATIVE.
Дополнительные сведения о безопасности и управлении доступом см. в статье Модель безопасности Windows для разработчиков драйверов и в документации по этим темам в windows SDK.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | ntifs.h (включая Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |