SetSecurityDescriptorSacl

【勇芳软件工作室】汉化HomePreviousNext

SetSecurityDescriptorSacl功能在系统访问控制列表(ACL)中设置信息。如果安全描述符中已经存在系统ACL,则会被替换。

BOOL SetSecurityDescriptorSacl(

PSECURITY_DESCRIPTOR 【pSecurityDescriptor】,//安全描述符的地址
BOOL 【bSaclPresent】,//存在系统ACL的标志
PACL 【pSacl】,//系统ACL的地址
BOOL 【bSaclDefaulted】//默认系统ACL的标志
); 

参数

【pSecurityDescriptor】

指向功能添加系统ACL的SECURITY_DESCRIPTOR结构。此安全描述符必须为绝对格式,这意味着其成员必须是指向其他结构的指针,而不是对连续数据的偏移量。

【bSaclPresent】

指定在安全描述符中指示系统ACL的存在的标志。如果此参数为TRUE,则该函数将在SECURITY_DESCRIPTOR_CONTROL结构中设置SE_SACL_PRESENT标志,并使用【pSacl】【bSaclDefaulted】参数中的值。如果为FALSE,则该函数不设置SE_SACL_PRESENT标志,【pSacl】【bSaclDefaulted】将被忽略。

【pSacl】

指向ACL结构,指定安全描述符的系统ACL。如果此参数为NULL,则将一个NULL系统ACL分配给安全描述符。系统ACL被引用,不复制到安全描述符中。

【bSaclDefaulted】

指定表示系统ACL源的标志。如果此标志为TRUE,则系统ACL已被某些默认机制检索。如果为FALSE,系统ACL已由用户明确指定。该函数将此值存储在SECURITY_DESCRIPTOR_CONTROL结构的SE_SACL_DEFAULTED标志中。如果未指定此参数,则清除SE_SACL_DEFAULTED标志。

返回值

如果函数成功,返回值不为零。

如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.

也可以看看

ACL, GetSecurityDescriptorSacl, InitializeSecurityDescriptor, IsValidSecurityDescriptor, SECURITY_DESCRIPTOR, SECURITY_DESCRIPTOR_CONTROL, SetSecurityDescriptorDacl, SetSecurityDescriptorGroup, SetSecurityDescriptorOwner