IAzAuthorizationStore::Initialize 方法 (azroles.h)
Initialize 方法初始化授权管理器。
语法
HRESULT Initialize(
[in] LONG lFlags,
[in] BSTR bstrPolicyURL,
[in, optional] VARIANT varReserved
);
参数
[in] lFlags
控制初始化行为的标志。 此参数的取值可为下列值之一:
值 | 含义 |
---|---|
|
授权存储打开供 Update 方法和 AccessCheck 方法使用。 |
|
调用应用程序需要具有SE_AUDIT_PRIVILEGE;如果应用程序没有审核特权,则 Initialize 方法将失败。 |
|
通知提供程序将修改或创建许多对象。 然后,提供程序优化更改的提交以提高性能。 仅当 同时更新 AzAuthorizationStore 对象的多个子对象时(例如在安装期间或受控的批处理更新期间),才使用此标志。 |
|
系统尝试创建 由 bstrPolicyURL 参数指定的策略存储。 |
|
为管理目的打开了现有存储区。 无法执行运行时例程。 |
如果指定了AZ_AZSTORE_FLAG_CREATE标志:
- 系统将尝试创建 由 bstrPolicyURL 参数指定的基础策略存储。
- 如果指定的策略存储存在, 则 Initialize 方法将失败并ERROR_ALREADY_EXISTS。
- 必须调用 Submit 方法才能保留此方法所做的任何更改。
- 在调用 Submit 方法之前,UpdateCache 方法将失败。 调用 Submit 时,实际上会创建基础策略存储区。
[in] bstrPolicyURL
授权策略数据库的持久副本的位置。
此字符串必须同时包含策略 URL 前缀和特定于提供程序的策略位置。 授权管理器使用提供程序前缀来加载相应的提供程序。 存储区是从特定于提供程序的策略位置加载的。 策略 URL 前缀中不允许有空格。
Active Directory 存储的策略 URL 前缀为 msldap:。 URL 的常规格式如下所示:
msldap://ServerName:Port//DistinguishedNameForTheStore
服务器名称和端口是可选的。 如果未提供服务器名称,则使用默认域控制器。 如果未指定端口,则使用默认 LDAP 端口 (LDAP_PORT 389) 。 存储 (DN) 的可分辨名称以 AzAuthorizationStore 对象的相对可分辨名称 (RDN) 开头。 例如,如果 AzAuthorizationStore 对象的 RDN 为 MyStore,而 MyStore 位于名为 AzMan 的 OU) (组织单位中,则 Active Directory 存储的可能 URL 如下所示:
msldap:// MyServer/CN=MyStore,OU=AzMan,DC=MyDomain,DC=Fabrikam,DC=com
XML 存储的策略 URL 前缀为 msxml:。 XML 存储 URL 的常规格式与文件 URL 的格式相同,如以下示例所示:
- msxml://c:/abc/test.xml
- msxml://\\server\share\abc.xml
- msxml://d|/dir1/dir2/abc.xml
- msxml://c:/Documents%20and%20Settings/test%2exml
[in, optional] varReserved
保留供将来使用。 此参数可能是以下值之一:
- varReserved.vt == VT_ERROR 和 varReserved.scode == DISP_E_PARAMNOTFOUND
- varReserved.vt == VT_EMPTY
- varReserved.vt == VT_NULL
- varReserved.vt == VT_I4 and varReserved.lVal == 0
- varReserved.vt == VT_I2 和 varReserved.iVal == 0
返回值
如果该方法成功,该方法将返回S_OK。
如果 bstrPolicyURL 参数无效,该方法将返回HRESULT_FROM_WIN32 (ERROR_INVALID_NAME) 。
如果方法失败,它将返回指示错误的 HRESULT 值。 有关常见错误代码的列表,请参阅 常见 HRESULT 值。
注解
Active Directory 支持应用程序分区,也称为非域命名上下文。 这些分区用作程序存储应用程序数据的位置。 无法在应用程序分区中创建或保留授权管理器策略存储;请改用 Program Data 容器作为 Active Directory 授权管理器策略存储的容器。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | azroles.h |
Library | Azroles.lib |
DLL | Azroles.dll |
可再发行组件 | Windows XP 上的 Windows Server 2003 管理工具包 |