setSecurityDescriptorSacl 函数 (securitybaseapi.h)
SetSecurityDescriptorSacl 函数 (SACL) 设置系统访问控制列表中的信息。 如果 安全描述符中已存在 SACL,则将其替换。
语法
BOOL SetSecurityDescriptorSacl(
[in, out] PSECURITY_DESCRIPTOR pSecurityDescriptor,
[in] BOOL bSaclPresent,
[in, optional] PACL pSacl,
[in] BOOL bSaclDefaulted
);
参数
[in, out] pSecurityDescriptor
指向函数向其添加 SACL 的 SECURITY_DESCRIPTOR 结构的指针。 此安全描述符必须采用绝对格式,这意味着其成员必须是指向其他结构的指针,而不是指向连续数据的偏移量。
[in] bSaclPresent
指示安全描述符中是否存在 SACL。 如果此参数为 TRUE,则函数在 SECURITY_DESCRIPTOR_CONTROL 结构中设置 SE_SACL_PRESENT 标志,并使用 pSacl 和 bSaclDefaulted 参数中的值。 如果为 FALSE,则函数不会设置SE_SACL_PRESENT标志,并忽略 pSacl 和 bSaclDefaulted 。
[in, optional] pSacl
指向 ACL 结构的指针,该结构指定安全描述符的 SACL。 如果此参数为 NULL,则向安全描述符分配 NULL SACL。 SACL 由安全描述符引用,而不是复制到安全描述符中。
[in] bSaclDefaulted
指示 SACL 的源。 如果此标志为 TRUE,则表示某个默认机制已检索 SACL。 如果为 FALSE,则表示 SACL 已由用户显式指定。 函数将此值存储在 SECURITY_DESCRIPTOR_CONTROL 结构的 SE_SACL_DEFAULTED 标志中。 如果未指定此参数,则会清除 SE_SACL_DEFAULTED 标志。
返回值
如果函数成功,则函数返回非零值。
如果函数失败,则返回零。 要获得更多的错误信息,请调用 GetLastError。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2003 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | securitybaseapi.h (包括 Windows.h) |
Library | Advapi32.lib |
DLL | Advapi32.dll |