Criando um objeto de repositório de políticas de autorização no script
Um repositório de políticas de autorização contém informações sobre a política de segurança de um aplicativo ou grupo de aplicativos. As informações incluem aplicativos, operações, tarefas, usuários e grupos de usuários associados ao repositório. Quando um aplicativo que usa o Gerenciador de Autorização é inicializado, ele carrega essas informações do repositório. O repositório de políticas de autorização deve estar localizado em um sistema confiável porque os administradores desse sistema têm um alto grau de acesso ao repositório.
O Gerenciador de Autorização dá suporte ao armazenamento da política de autorização no serviço de diretório do Active Directory ou em um arquivo XML, conforme mostrado nos exemplos a seguir. Na API do Gerenciador de Autorização, um repositório de políticas de autorização é representado por um objeto AzAuthorizationStore . Os exemplos mostram como criar um objeto AzAuthorizationStore para um repositório do Active Directory e um repositório XML.
- Criando um Repositório do Active Directory
- Criando um repositório de SQL Server
- Criando um repositório XML
Criando um Repositório do Active Directory
Para usar o Active Directory para armazenar a política de autorização, o domínio deve estar no nível funcional do domínio do Windows Server 2003 . O repositório de políticas de autorização não pode estar localizado em um contexto de nomenclatura não domínio (também chamado de partição de aplicativo). É recomendável que o repositório esteja localizado no contêiner Dados do Programa em uma nova unidade organizacional criada especificamente para o repositório de políticas de autorização. Também é recomendável que o repositório esteja localizado na mesma rede local que os servidores de aplicativos que executam aplicativos que usam o repositório.
O exemplo a seguir mostra como criar um objeto AzAuthorizationStore que representa um repositório de políticas de autorização no Active Directory. O exemplo pressupõe que há uma unidade organizacional existente do Active Directory chamada Dados do Programa em um domínio chamado authmanager.com.
' Create the store object.
Dim authStore
Set authStore = CreateObject("AzRoles.AzAuthorizationStore")
' Initialize the store object.
authStore.Initialize 1, _
"msldap://CN=MyStore, CN=Program Data,DC=authmanager,DC=com"
' Save the information to the store.
authStore.Submit
Criando um repositório de SQL Server
O Gerenciador de Autorização dá suporte à criação de um repositório de políticas de autorização baseado em SQL Server da Microsoft. Para criar um repositório de autorização baseado em SQL Server, use uma URL que começa com o prefixo MSSQL://. A URL deve conter uma cadeia de conexão SQL válida, um nome de banco de dados e o nome do repositório de políticas de autorização: **MSSQL:// ConnectionString/DatabaseName/**PolicyStoreName.
Se a instância do SQL Server não contiver o banco de dados especificado do Gerenciador de Autorização, o Gerenciador de Autorização criará um novo banco de dados com esse nome.
Observação
As conexões com um repositório de SQL Server não são criptografadas, a menos que você configure explicitamente a criptografia SQL para a conexão ou configure a criptografia do tráfego de rede que usa o IPsec (Internet Protocol Security).
O exemplo a seguir mostra como criar um objeto AzAuthorizationStore que representa um repositório de políticas de autorização em um banco de dados SQL Server.
' Create the store object.
Dim authStore
Set authStore = CreateObject("AzRoles.AzAuthorizationStore")
' Initialize the store object.
authStore.Initialize 1, _
"MSSQL://Driver={SQL Server};Server={AzServer};/AzDB/MyStore"
' Save information to the store.
authStore.Submit
Criando um repositório XML
O Gerenciador de Autorização dá suporte à criação de um repositório de políticas de autorização no formato XML. O repositório XML pode estar localizado no mesmo computador em que o aplicativo é executado ou pode ser armazenado remotamente. Não há suporte para a edição direta do arquivo XML. Use o snap-in do MMC do Gerenciador de Autorização ou a API do Gerenciador de Autorização para editar o repositório de políticas.
O Gerenciador de Autorização não dá suporte à delegação da administração de um repositório de políticas XML. Para obter informações sobre a delegação, consulte Delegando a definição de permissões no script.
O exemplo a seguir mostra como criar um objeto AzAuthorizationStore que representa um repositório de políticas de autorização em um arquivo XML.
' Create the store object.
Dim authStore
Set authStore = CreateObject("AzRoles.AzAuthorizationStore")
' Initialize the store object.
authStore.Initialize 1, "msxml://C:\MyStore.xml"
' Save information to the store.
authStore.Submit