Функция SetSecurityDescriptorSacl (securitybaseapi.h)

Функция SetSecurityDescriptorSacl задает сведения в системном списке управления доступом (SACL). Если в дескрипторе безопасности уже есть список управления доступом, он заменяется.

Синтаксис

BOOL SetSecurityDescriptorSacl(
  [in, out]      PSECURITY_DESCRIPTOR pSecurityDescriptor,
  [in]           BOOL                 bSaclPresent,
  [in, optional] PACL                 pSacl,
  [in]           BOOL                 bSaclDefaulted
);

Параметры

[in, out] pSecurityDescriptor

Указатель на структуру SECURITY_DESCRIPTOR , в которую функция добавляет SACL. Этот дескриптор безопасности должен иметь абсолютный формат, то есть его члены должны быть указателями на другие структуры, а не смещениями смежных данных.

[in] bSaclPresent

Указывает на наличие saCL в дескрипторе безопасности. Если этот параметр имеет значение TRUE, функция устанавливает флаг SE_SACL_PRESENT в структуре SECURITY_DESCRIPTOR_CONTROL и использует значения параметров pSacl и bSaclDefaulted . Если имеет значение FALSE, функция не устанавливает флаг SE_SACL_PRESENT, а pSacl и bSaclDefaulted игнорируются.

[in, optional] pSacl

Указатель на структуру ACL , задающую список SACL для дескриптора безопасности. Если этот параметр имеет значение NULL, то дескриптору безопасности назначается список SACL NULL . На список SACL ссылается дескриптор безопасности, а не копируется в .

[in] bSaclDefaulted

Указывает источник saCL. Если этот флаг имеет значение TRUE, saCL был получен каким-то механизмом по умолчанию. Если задано значение FALSE, saCL был явно указан пользователем. Функция сохраняет это значение в флаге SE_SACL_DEFAULTED структуры SECURITY_DESCRIPTOR_CONTROL . Если этот параметр не указан, флаг SE_SACL_DEFAULTED очищается.

Возвращаемое значение

Если функция выполнена успешно, функция возвращает ненулевое значение.

Если функция завершается сбоем, она возвращает ноль. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Требования

Требование Значение
Минимальная версия клиента Windows XP [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header securitybaseapi.h (включая Windows.h)
Библиотека Advapi32.lib
DLL Advapi32.dll

См. также раздел

ACL

GetSecurityDescriptorSacl

InitializeSecurityDescriptor

IsValidSecurityDescriptor

Низкоуровневые контроль доступа

Функции контроль доступа низкого уровня

SECURITY_DESCRIPTOR

SECURITY_DESCRIPTOR_CONTROL

SetSecurityDescriptorDacl

SetSecurityDescriptorGroup

SetSecurityDescriptorOwner