Функция LookupSecurityDescriptorPartsA (aclapi.h)
Функция LookupSecurityDescriptorParts
Синтаксис
DWORD LookupSecurityDescriptorPartsA(
[out, optional] PTRUSTEE_A *ppOwner,
[out, optional] PTRUSTEE_A *ppGroup,
[out, optional] PULONG pcCountOfAccessEntries,
[out, optional] PEXPLICIT_ACCESS_A *ppListOfAccessEntries,
[out, optional] PULONG pcCountOfAuditEntries,
[out, optional] PEXPLICIT_ACCESS_A *ppListOfAuditEntries,
[in] PSECURITY_DESCRIPTOR pSD
);
Параметры
[out, optional] ppOwner
Указатель на переменную, которая получает указатель на структуру TRUSTEE. Функция ищет имя, связанное с идентификатором безопасности
Этот параметр может быть значение NULL, если вы не заинтересованы в имени владельца.
[out, optional] ppGroup
Указатель на переменную, которая получает указатель на структуру TRUSTEE. Функция ищет имя, связанное с идентификатором безопасности основной группы дескриптора безопасности, и возвращает указатель на имя в элементе ptstrName структуры TRUSTEE. Функция задает элемент TrusteeForm TRUSTEE_IS_NAME.
Этот параметр может быть null, если вы не заинтересованы в имени группы.
[out, optional] pcCountOfAccessEntries
Указатель на ULONG, получающий количество структур EXPLICIT_ACCESS, возвращенных в массиве pListOfAccessEntries. Этот параметр может быть NULL только в том случае, если параметр pListOfAccessEntries также NULL.
[out, optional] ppListOfAccessEntries
Указатель на переменную, которая получает указатель на массив структур EXPLICIT_ACCESS, описывающих записи управления доступом (ACEs) в списке управления доступом (DACL) дескриптора безопасности. Структура ПОПЕЧИТЕЛЬ в этих структурах EXPLICIT_ACCESS использует форму TRUSTEE_IS_NAME. Описание того, как массив структур EXPLICIT_ACCESS описывает acEs в списке управления доступом (ACL), см. функцию GetExplicitEntriesFromAcl. Если этот параметр NULL, параметр cCountOfAccessEntries также должен быть NULL.
[out, optional] pcCountOfAuditEntries
Указатель на ULONG, получающий количество структур EXPLICIT_ACCESS, возвращенных в массиве pListOfAuditEnt ries. Этот параметр может быть NULL только в том случае, если параметр pListOfAuditEntries также NULL.
[out, optional] ppListOfAuditEntries
Указатель на переменную, которая получает указатель на массив структур EXPLICIT_ACCESS, описывающих acES в списке управления доступом системы (SACL) дескриптора безопасности. Структура ПОПЕЧИТЕЛЬ в этих структурах EXPLICIT_ACCESS использует форму TRUSTEE_IS_NAME. Если этот параметр NULL, параметр cCountOfAuditEntries также должен быть NULL.
[in] pSD
Указатель на существующий дескриптор безопасности относительной безопасности, из которого функция получает сведения о безопасности.
Возвращаемое значение
Если функция выполнена успешно, функция возвращает ERROR_SUCCESS.
Если функция завершается ошибкой, она возвращает ненулевой код ошибки, определенный в WinError.h.
Замечания
Функция LookupSecurityDescriptorParts извлекает имена владельца и основной группы дескриптора безопасности. Эта функция также возвращает описания acEs в элементах УПРАВЛЕНИЯ DACL и аудита в SACL дескриптора безопасности.
Параметры, отличные от pSD, могут быть null, если вы не заинтересованы в этой информации. Если вы не хотите получать сведения о DACL, pListOfAccessEntries и cCountOfAuditEntries должны быть NULL. Если вам не нужны сведения об SACL, pListOfAuditEntries и cCountOfAuditEntries должны быть NULL. Аналогичным образом, если требуется информация DACL или SACL, оба соответствующих параметра не должны быть NULL.
После завершения использования любого из буферов, возвращаемых
Функция LookupSecurityDescriptorParts предназначена для доверенных серверов, реализующих или предоставляющих безопасность на своих объектах. Функция работает с дескриптором безопасности, подходящим для сериализации в поток и хранения на диске, так как доверенный сервер может потребоваться.
Заметка
Заголовок aclapi.h определяет LookupSecurityDescriptorParts в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | aclapi.h |
библиотеки |
Advapi32.lib |
DLL | Advapi32.dll |
См. также
функции управления доступом клиента или сервера
Обзор управления доступом