AddResourceAttributeAce 函数 (securitybaseapi.h)
AddResourceAttributeAce 函数将 SYSTEM_RESOURCE_ATTRIBUTE_ACE访问控制项(ACE)添加到 系统访问控制列表(SACL)末尾。 SYSTEM_RESOURCE_ATTRIBUTE_ACE 结构指定属性名称和值排序的元素列表,这些元素与资源相关联,并在访问检查期间可能使用。 标准访问权限集在 标准访问权限 主题中定义。
语法
BOOL AddResourceAttributeAce(
[in, out] PACL pAcl,
[in] DWORD dwAceRevision,
[in] DWORD AceFlags,
[in] DWORD AccessMask,
[in] PSID pSid,
[in] PCLAIM_SECURITY_ATTRIBUTES_INFORMATION pAttributeInfo,
[out] PDWORD pReturnLength
);
参数
[in, out] pAcl
指向 访问控制列表(ACL)的指针。 此函数将 ACE 添加到此 ACL。 此参数的值不能 NULL。 ACE 采用 SYSTEM_RESOURCE_ATTRIBUTE_ACE 结构的形式。
[in] dwAceRevision
指定要修改的 ACL 的修订级别。 此值可以是ACL_REVISION或ACL_REVISION_DS。 如果 ACL 包含特定于对象的 ACE,请使用ACL_REVISION_DS。
[in] AceFlags
控制 ACE 继承的一组位标志。 该函数在 AceFlags 新 ACE ACE_HEADER 结构的成员中设置这些标志。
为了与 Windows 8 高级文件权限 UI 保持一致,应用程序应在 AceFlags 参数中指定CONTAINER_INHERIT_ACE和OBJECT_INHERIT_ACE标志。
此参数可以是以下值的组合。
[in] AccessMask
对于 Windows 8 和 Windows Server 2012,必须为零。
[in] pSid
必须是 Windows 8 和 Windows Server 2012 的“每个人 SID”(S-1-1-0)。
[in] pAttributeInfo
指定将在 ACE 中的 SID 之后追加的属性信息。
[out] pReturnLength
使用的实际 ACL 缓冲区的大小(以字节为单位)。 如果由 pAcl 参数指定的缓冲区不够大,则此参数的值是 ACL 缓冲区所需的总大小。
返回值
如果函数成功,则返回 TRUE。
如果该函数失败,则返回 FALSE。 若要获取扩展的错误信息,请调用 GetLastError。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 8 [仅限桌面应用] |
支持的最低服务器 | Windows Server 2012 [仅限桌面应用] |
目标平台 | 窗户 |
标头 | securitybaseapi.h (包括 Windows.h) |
库 | Kernel32.lib |
DLL | Kernel32.dll |