C++ 如何创建具有零访问权限的安全属性

C++ 如何创建具有零访问权限的安全属性,c++,windows,security,C++,Windows,Security,如何使用空DACL创建安全属性,从而不向任何人授予访问权限?是否可以通过诸如InitializeSecurityDescriptor和SetSecurityDescriptorACL之类的API来实现?我知道的一种不太明显的方法是使用下面显示的安全字符串,但我发现这些字符串很难理解。因此,我正在寻找一种更直接的维护方法 SECURITY_DESCRIPTOR sd; const WCHAR c_str[] = L"D:"; // Empty DACL if (!ConvertStringSec

如何使用空DACL创建安全属性,从而不向任何人授予访问权限?是否可以通过诸如InitializeSecurityDescriptor和SetSecurityDescriptorACL之类的API来实现?我知道的一种不太明显的方法是使用下面显示的安全字符串,但我发现这些字符串很难理解。因此,我正在寻找一种更直接的维护方法

SECURITY_DESCRIPTOR sd;
const WCHAR c_str[] = L"D:"; // Empty DACL

if (!ConvertStringSecurityDescriptorToSecurityDescriptorW( c_str,
    SDDL_REVISION_1,
    &sd,
    NULL ))
{
    // error
}

SECURITY_ATTRIBUTES sa = {sizeof(sa), sd, FALSE};

谢谢

你有三分之二。调用以初始化最小安全描述符。然后调用初始化最小ACL。使用。然后在对象的安全属性中设置&sd。谢谢。我会调查的。