CRegKey::SetKeySecurity
调用此方法设置注册表项的安全性。
LONG SetKeySecurity(
SECURITY_INFORMATION si,
PSECURITY_DESCRIPTOR psd
) throw( );
参数
si
指定安全说明符设置为的元素。 该值可以是下列值的组合:值
含义
DACL_SECURITY_INFORMATION
设置键的自由访问控制列表(acl) (DACL)。 密钥必须具有访问权限WRITE_DAC,或者调用进程必须是对象的所有者。
GROUP_SECURITY_INFORMATION
设置键的主要组安全标识符(SID)。 密钥必须具有访问权限WRITE_OWNER,或者调用进程必须是对象的所有者。
OWNER_SECURITY_INFORMATION
设置键的所有者SID。 密钥必须具有访问权限WRITE_OWNER,或者调用进程必须是对象的所有者或将权限SE_TAKE_OWNERSHIP_NAME启用。
SACL_SECURITY_INFORMATION
设置关键系统访问控制列表(acl) (SACL)。 密钥必须具有访问权限ACCESS_SYSTEM_SECURITY。 适当的方式获取此访问权限是使在调用方的当前访问标记的SE_SECURITY_NAME 权限,打开ACCESS_SYSTEM_SECURITY访问的句柄,然后禁用该权限。
psd
为指定安全特性指定的键设置的 SECURITY_DESCRIPTOR 结构的指针。
返回值
如果方法成功,则返回值是ERROR_SUCCESS。 如果方法失败,则返回值是在WINERROR.H.定义的一个非零错误代码。
备注
设置键的安全特性。 有关详细信息 RegSetKeySecurity 参见。
要求
Header: atlbase.h