Функция ConvertSecurityDescriptorToStringSecurityDescriptorA (sddl.h)
Функция ConvertSecurityDescriptorToStringSecurityDescriptor преобразует дескриптор безопасности в строковый формат. Формат строки можно использовать для хранения или передачи дескриптора безопасности.
Чтобы преобразовать дескриптор безопасности в строковый формат обратно в допустимый дескриптор функциональной безопасности, вызовите функцию
Синтаксис
BOOL ConvertSecurityDescriptorToStringSecurityDescriptorA(
[in] PSECURITY_DESCRIPTOR SecurityDescriptor,
[in] DWORD RequestedStringSDRevision,
[in] SECURITY_INFORMATION SecurityInformation,
[out] LPSTR *StringSecurityDescriptor,
[out] PULONG StringSecurityDescriptorLen
);
Параметры
[in] SecurityDescriptor
Указатель на дескриптор безопасности для преобразования. Дескриптор безопасности может находиться в абсолютном или автономном формате.
[in] RequestedStringSDRevision
Указывает уровень редакции выходного StringSecurityDescriptor строке. В настоящее время это значение должно быть SDDL_REVISION_1.
[in] SecurityInformation
Указывает сочетание флагов SECURITY_INFORMATION битов, чтобы указать компоненты дескриптора безопасности, которые необходимо включить в выходную строку.
Флаг BACKUP_SECURITY_INFORMATION не применим к этой функции. Если флаг BACKUP_SECURITY_INFORMATION передается, параметр securityInformation
[out] StringSecurityDescriptor
Указатель на переменную, которая получает указатель на строку дескриптора безопасности, null. Описание строкового формата см. в строковом формате дескриптора безопасности. Чтобы освободить возвращенный буфер, вызовите функцию LocalFree.
[out] StringSecurityDescriptorLen
Указатель на переменную, получающую размер TCHARs, строки дескриптора безопасности, возвращаемой в буфере stringSecurityDescriptor. Этот параметр может быть значение NULL, если не требуется получить размер. Размер представляет размер буфера в WCHAR, а не количество WCHARв строке.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение ненулевое.
Если функция завершается ошибкой, возвращаемое значение равно нулю. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError. Функция GetLastError может вернуть один из следующих кодов ошибок.
Возвращаемый код | Описание |
---|---|
|
Недопустимый параметр. |
|
Недопустимый уровень редакции. |
|
Идентификатор безопасности (SID) во входном дескрипторе безопасности не удалось найти в операции подстановки учетной записи. |
|
Недопустимый список управления доступом |
Замечания
Если daCL NULL, а бит управления SE_DACL_PRESENT задан в дескрипторе безопасности ввода, функция завершается ошибкой.
Если daCL null, а бит управления SE_DACL_PRESENT не задан в дескрипторе безопасности ввода, результирующая строка дескриптора безопасности не имеет компонента D: . Дополнительные сведения см. в строкового формата дескриптора безопасности.
Заметка
Заголовок sddl.h определяет ConvertSecurityDescriptorToStringSecurityDescriptor в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [классические приложения | Приложения UWP] |
минимальный поддерживаемый сервер | Windows Server 2003 [классические приложения | Приложения UWP] |
целевая платформа | Виндоус |
заголовка | sddl.h |
библиотеки |
Advapi32.lib |
DLL | Advapi32.dll |
См. также
Обзор
базовые функции управления доступом