Метод 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 .
- Метод UpdateCache завершится ошибкой, пока не будет вызван метод Submit . Базовое хранилище политик фактически создается при вызове метода Submit .
[in] bstrPolicyURL
Расположение постоянной копии базы данных политики авторизации.
Эта строка должна содержать префикс URL-адреса политики и расположение политики для конкретного поставщика. Диспетчер авторизации использует префикс поставщика для загрузки соответствующего поставщика. Хранилище загружается из расположения политики для конкретного поставщика. В префиксе URL-адреса политики пробелы не допускаются.
Префикс URL-адреса политики для хранилища Active Directory — msldap:. Общий формат URL-адреса выглядит следующим образом:
msldap://ServerName:Port//DistinguishedNameForTheStore
Имя сервера и порт являются необязательными. Если имя сервера не указано, используется контроллер домена по умолчанию. Если порт не указан, используется порт LDAP по умолчанию (LDAP_PORT, 389). Различающееся имя (DN) для хранилища начинается с относительного различающегося имени (RDN) объекта AzAuthorizationStore . Например, если RDN объекта AzAuthorizationStore — MyStore, а MyStore находится в подразделении с именем AzMan, возможный URL-адрес хранилища Active Directory выглядит следующим образом:
msldap:// MyServer/CN=MyStore,OU=AzMan,DC=MyDomain,DC=Fabrikam,DC=Com
Префикс URL-адреса политики для хранилища XML — msxml:. Общий формат URL-адреса хранилища XML такой же, как и для 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 и 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 |
Header | azroles.h |
Библиотека | Azroles.lib |
DLL | Azroles.dll |
Распространяемые компоненты | Пакет средств администрирования Windows Server 2003 в Windows XP |