Método IAzAuthorizationStore::Initialize (azroles.h)

O método Initialize inicializa o gerenciador de autorização.

Sintaxe

HRESULT Initialize(
  [in]           LONG    lFlags,
  [in]           BSTR    bstrPolicyURL,
  [in, optional] VARIANT varReserved
);

Parâmetros

[in] lFlags

Sinalizadores que controlam o comportamento da inicialização. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
0 (0x0)
O repositório de autorização é aberto para uso pelo método Update e pelo método AccessCheck .
AZ_AZSTORE_FLAG_AUDIT_IS_CRITICAL
8 (0x8)
O aplicativo de chamada é necessário para ter SE_AUDIT_PRIVILEGE; se o aplicativo não tiver o privilégio de auditoria, o método Initialize falhará.
AZ_AZSTORE_FLAG_BATCH_UPDATE
4 (0x4)
O provedor é notificado de que muitos objetos serão modificados ou criados. Em seguida, o provedor otimiza o envio das alterações para melhor desempenho. Use esse sinalizador somente quando vários objetos filho de um objeto AzAuthorizationStore forem atualizados simultaneamente, como durante uma instalação ou uma atualização em lote controlada.
AZ_AZSTORE_FLAG_CREATE
1 (0x1)
O sistema tenta criar o repositório de políticas especificado pelo parâmetro bstrPolicyURL .
AZ_AZSTORE_FLAG_MANAGE_STORE_ONLY
2 (0x2)
Um repositório existente é aberto para fins de gerenciamento. Rotinas de tempo de execução não podem ser executadas.
 

Se o sinalizador AZ_AZSTORE_FLAG_CREATE for especificado:

  • O sistema tentará criar o repositório de políticas subjacente especificado pelo parâmetro bstrPolicyURL .
  • Se o repositório de políticas especificado existir, o método Initialize falhará com ERROR_ALREADY_EXISTS.
  • Você deve chamar o método Submit para persistir as alterações feitas por esse método.
  • O método UpdateCache falhará até que o método Submit seja chamado. O repositório de políticas subjacente é realmente criado quando Enviar é chamado.
Se o sinalizador AZ_AZSTORE_FLAG_CREATE não for especificado, o sistema espera que o repositório de políticas subjacente exista. Se o repositório não existir, o método Initialize falhará com ERROR_FILE_NOT_FOUND.

[in] bstrPolicyURL

Local da cópia persistente do banco de dados de política de autorização.

Essa cadeia de caracteres deve conter o prefixo da URL da política e o local da política específica do provedor. O Gerenciador de Autorização usa o prefixo do provedor para carregar o provedor apropriado. O repositório é carregado do local da política específica do provedor. Nenhum espaço é permitido no prefixo da URL da política.

O prefixo de URL de política para um repositório do Active Directory é msldap:. O formato geral para a URL é o seguinte:

msldap://ServerName:Port//DistinguishedNameForTheStore

O nome do servidor e a porta são opcionais. Se um nome de servidor não for fornecido, o controlador de domínio padrão será usado. Se uma porta não for especificada, a porta LDAP padrão (LDAP_PORT, 389) será usada. O DN (nome diferenciado) para o repositório começa com o RDN (nome diferenciado relativo) do objeto AzAuthorizationStore . Por exemplo, se o RDN do objeto AzAuthorizationStore for MyStore e MyStore estiver em uma UO (unidade organizacional) chamada AzMan, uma POSSÍVEL URL para o repositório do Active Directory será a seguinte:

msldap:// MyServer/CN=MyStore,OU=AzMan,DC=MyDomain,DC=Fabrikam,DC=Com

O prefixo de URL de política para um repositório XML é msxml:. O formato geral de uma URL de repositório XML é o mesmo de uma URL de arquivo, conforme mostrado nos seguintes exemplos:

  • msxml://c:/abc/test.xml
  • msxml://\\server\share\abc.xml
  • msxml://d|/dir1/dir2/abc.xml
  • msxml://c:/Documents%20and%20Settings/test%2exml
Observe que, no quarto exemplo, a URL usa codificação para o espaço (%20) e os caracteres de período (%2e). Além disso, não há suporte para a notação de caminho relativo tradicional em URLs. Se você especificar msxml://abc.xml, a URL apontará para o arquivo na raiz da unidade.
Nota Se um repositório XML ou SQL for usado em uma rede, o tráfego não será criptografado automaticamente. O IPsec pode ser usado para criptografar as informações de autorização em trânsito. Para um repositório SQL, também é possível configurar a conexão ODBC (conectividade de banco de dados aberta) para usar a criptografia. Para obter informações sobre como configurar a conexão ODBC, consulte Como habilitar a criptografia depois que SQL Server tiver sido instalado (Utilitário de Rede).
 

[in, optional] varReserved

Reservado para uso futuro. Esse parâmetro pode usar um dos valores a seguir:

  • varReserved.vt == VT_ERROR e varReserved.scode == DISP_E_PARAMNOTFOUND
  • varReserved.vt == VT_EMPTY
  • varReserved.vt == VT_NULL
  • varReserved.vt == VT_I4 e varReserved.lVal == 0
  • varReserved.vt == VT_I2 e varReserved.iVal == 0

Retornar valor

Se o método for bem-sucedido, o método retornará S_OK.

Se o parâmetro bstrPolicyURL não for válido, o método retornará HRESULT_FROM_WIN32(ERROR_INVALID_NAME).

Se o método falhar, ele retornará um valor HRESULT que indica o erro. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT comuns.

Comentários

O Active Directory dá suporte a Partições de Aplicativo, que também são conhecidas como Contextos de Nomenclatura não Domínio. Essas partições são usadas como um local para programas armazenarem dados do aplicativo. Um repositório de políticas do Gerenciador de Autorização não pode ser criado ou mantido na Partição de Aplicativos; Em vez disso, use o contêiner Dados do Programa como o contêiner para repositórios de políticas do Gerenciador de Autorização do Active Directory.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho azroles.h
Biblioteca Azroles.lib
DLL Azroles.dll
Redistribuível Pacote de Ferramentas de Administração do Windows Server 2003 no Windows XP