DSCreateSecurityPage 函数 (dssec.h)

DSCreateSecurityPage 函数为 Active Directory 对象创建安全属性页。 生成的属性页可以添加到属性表。

语法

HRESULT DSCreateSecurityPage(
  [in]           LPCWSTR                pwszObjectPath,
  [in, optional] LPCWSTR                pwszObjectClass,
  [in]           DWORD                  dwFlags,
  [out]          HPROPSHEETPAGE         *phPage,
  [in, optional] PFNREADOBJECTSECURITY  pfnReadSD,
  [in, optional] PFNWRITEOBJECTSECURITY pfnWriteSD,
  [in]           LPARAM                 lpContext
);

参数

[in] pwszObjectPath

指向以 null 结尾的宽字符串的指针,该字符串表示对象的完整 Active Directory 路径。

[in, optional] pwszObjectClass

指向以 null 结尾的宽字符串(表示对象类)的指针。 此值可以为 NULL

[in] dwFlags

用于安全属性页的标志。 此参数可以是无标志,也可以是以下标志的任意组合。

含义
DSSI_READ_ONLY
0x00000001
安全属性是只读的。
DSSI_NO_ACCESS_CHECK
0x00000002
不执行访问检查。
DSSI_NO_EDIT_SACL
0x00000004
SACL) 属性 (系统访问控制列表 是只读的。
DSSI_NO_EDIT_OWNER
0x00000008
对象所有者属性是只读的。
DSSI_IS_ROOT
0x00000010
对象是根对象。
DSSI_NO_FILTER
0x00000020
请勿应用任何筛选器。
DSSI_NO_READONLY_MESSAGE
0x00000040
禁止显示只读弹出消息。

[out] phPage

指向返回创建的安全属性页的 HPROPSHEETPAGE 的指针。

[in, optional] pfnReadSD

指向用于读取对象 安全描述符 的函数的指针。 此值可以为 NULL。 如果 pfnReadSD 不为 NULLDSCreateSecurityPage 将调用 pfnReadSD 引用的函数来检索对象的安全描述符。

[in, optional] pfnWriteSD

指向用于编写对象安全描述符的函数的指针。 此值可以为 NULL。 如果 pfnWriteSD 不为 NULLDSCreateSecurityPage 将调用 pfnWriteSD 引用的函数来编写对象的安全描述符。

[in] lpContext

要传递给 由 pfnReadSDpfnWriteSD 标识的函数的上下文。

返回值

如果函数成功,该函数将返回S_OK。

如果函数失败,它将返回一个 指示错误的 HRESULT 值。 有关常见错误代码的列表,请参阅 通用 HRESULT 值

备注

pfnReadSD 指向的函数定义如下。

#include <windows.h>

typedef HRESULT (WINAPI *PFNREADOBJECTSECURITY)(
    LPCWSTR,               // Active Directory path of object
    SECURITY_INFORMATION,  // the security information to read
    PSECURITY_DESCRIPTOR*, // the returned security descriptor 
    LPARAM                 // context parameter
);

DSCreateSecurityPage 函数将通过调用 LocalFree 函数释放在上述第三个参数中返回的安全描述符。

pfnWriteSD 指向的函数定义如下。

#include <windows.h>

typedef HRESULT (WINAPI *PFNWRITEOBJECTSECURITY)(
    LPCWSTR,              // Active Directory path of object
    SECURITY_INFORMATION, // the security information to write
    PSECURITY_DESCRIPTOR, // the security descriptor to write
    LPARAM                // context parameter
);

要求

   
最低受支持的客户端 无受支持的版本
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 dssec.h
Library DSSec.lib
DLL DSSec.dll

另请参阅

“基本安全属性”页

ISecurityInformation