AuthzInitializeResourceManager 函数 (authz.h)

AuthzInitializeResourceManager 函数使用 Authz 来验证客户端是否有权访问各种资源。

语法

AUTHZAPI BOOL AuthzInitializeResourceManager(
  [in]           DWORD                            Flags,
  [in, optional] PFN_AUTHZ_DYNAMIC_ACCESS_CHECK   pfnDynamicAccessCheck,
  [in, optional] PFN_AUTHZ_COMPUTE_DYNAMIC_GROUPS pfnComputeDynamicGroups,
  [in, optional] PFN_AUTHZ_FREE_DYNAMIC_GROUPS    pfnFreeDynamicGroups,
  [in]           PCWSTR                           szResourceManagerName,
  [out]          PAUTHZ_RESOURCE_MANAGER_HANDLE   phAuthzResourceManager
);

参数

[in] Flags

定义如何初始化资源管理器的 DWORD 值。 此参数可以包含以下值。

含义
0
对 函数的默认调用。 资源管理器初始化为进程令牌中标识的主体,审核生效。 请注意,除非设置了 AUTHZ_RM_FLAG_NO_AUDIT 标志,否则必须启用 SeAuditPrivilege 才能使函数成功。
AUTHZ_RM_FLAG_NO_AUDIT
审核无效。 如果设置了此标志,则调用方无需启用 SeAuditPrivilege 来调用此函数。
AUTHZ_RM_FLAG_INITIALIZE_UNDER_IMPERSONATION
资源管理器初始化为线程令牌的标识。
AUTHZ_RM_FLAG_NO_CENTRAL_ACCESS_POLICIES
资源管理器会忽略 CAP ID,并且不评估集中式访问策略。
 

AUTHZ_RM_FLAG_NO_AUDIT和AUTHZ_RM_FLAG_INITIALIZE_UNDER_IMPERSONATION可以按位组合。

[in, optional] pfnDynamicAccessCheck

指向 AuthzAccessCheck 或 AuthzCachedAccessCheck 中的评估期间,资源管理器每次遇到回调访问控制项时调用的 AuthzAccessCheckCallback 回调函数的指针, (ACE) 访问控制列表 (ACL) 评估。 如果未使用任何访问检查回调函数,则此参数可以为 NULL

[in, optional] pfnComputeDynamicGroups

指向资源管理器在初始化 AuthzClientContext 句柄期间调用的 AuthzComputeGroupsCallback 回调函数的指针。 如果没有使用回调函数来计算动态组,则此参数可以为 NULL

[in, optional] pfnFreeDynamicGroups

指向资源管理器调用的 AuthzFreeGroupsCallback 回调函数的指针,用于释放由计算动态组回调分配 (SID) 属性数组 的安全标识符 。 如果没有使用回调函数来计算动态组,则此参数可以为 NULL

[in] szResourceManagerName

标识资源管理器的字符串。 如果资源管理器不需要名称,此参数可以为 NULL

[out] phAuthzResourceManager

指向返回的资源管理器句柄的指针。 使用完句柄后,通过调用 AuthzFreeResourceManager 函数来释放它。

返回值

如果函数成功,该函数将返回非零值。

如果函数失败,它将返回零值。 要获得更多的错误信息,请调用 GetLastError。

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 authz.h
Library Authz.lib
DLL Authz.dll
可再发行组件 Windows XP 上的 Windows Server 2003 管理工具包

另请参阅

AuthzAccessCheck

AuthzCachedAccessCheck

AuthzFreeResourceManager

基本访问控制函数