As regras de autorização são scripts, escritos em VBScript ou JScript, que você pode incluir em definições de função e de tarefa. Uma regra de autorização determina se a função ou tarefa é permitida.
Ao usar regras de autorização, é possível basear as decisões sobre autorização em qualquer condição que possa ser testada por um script. Isso pode incluir privilégios, permissões, a hora do dia, limites de despesas, saldos de contas ou outros critérios.
O Gerenciador de Autorização não foi projetado para criar ou depurar regras de autorização. Você pode escrever seus scripts em um editor de texto (por exemplo, Bloco de Notas), em um ambiente de desenvolvimento integrado, como o Visual Studio .NET, ou em outro aplicativo de sua preferência. Geralmente, as regras de autorização são escritas por desenvolvedores profissionais.
Para obter mais informações sobre como criar regras de autorização e usar as APIs (interfaces de programação de aplicativo) do Gerenciador de Autorização, consulte
Controlando o uso de regras comerciais e de regras de autorização
Controlando o uso em cada cliente
Com o Windows Server 2008, o uso de regras comerciais e regras de autorização pode ser controlado por uma configuração do Registro. As regras são desabilitadas por padrão. As versões anteriores do Windows não davam suporte a essa funcionalidade.
De modo geral, você usará um programa de instalação ou um script executado pelo sistema operacional para habilitar regras de autorização e regras comerciais se elas estiverem em uso no ambiente.
Importante | |
Essa configuração é controlada individualmente para cada aplicativo do Gerenciador de Autorização de cada cliente. |
A seguir está um script de exemplo que habilita ou desabilita regras comerciais e regras de aplicativos para um aplicativo:
'
' Enabling or disabling BizRules
for an application
' This script uses Authorization Manager Administrative interfaces to enable or disable
' BizRules for a specified Authorization Manager application in a specified Authorization Manager policy store
On Error Resume Next
Set objArgs = WScript.Arguments
If objArgs.count <> 3 then
wscript.echo "Usage: SetBizRule ""AzManStoreURL"" ""AzApplicaitonName"" True/False"
wscript.echo "Example: SetBizRule ""msxml://d:\inetpub\wwwroot\AzStore.xml"" ""MyApp"" True"
wscript.echo "Run with 'cscript' command in cmd.exe to avoid msg boxes"
Else
' VBScript source code
Dim AzStoreObj
Dim AzManStoreURL : AzManStoreURL = objArgs(0)
Dim AzManAppName : AzManAppName = objArgs(1)
Dim BizRulesEnabled : BizRulesEnabled = objArgs(2)
' create azman object
Set AzStoreObj = CreateObject("AzRoles.AzAuthorizationStore")
If Err.Number > 0 Then
WScript.Echo "Can not create AzRoles.AzAuthorizationStore. Check Authorization Manager installation"
WScript.Quit
End If
' initialize store for Administration
' assumes store exists - if store is being created (e.g. an installing applicaion)
' use the value 3 instead of 2 in the call to IAzAuthorizationStore::initialize
Err.Clear
AzStoreObj.Initialize 2, AzManStoreURL
If Err.Number <> 0 Then
WScript.Echo "AzRoles.AzAuthorizationStore failed to initialize. Check store URL"
WScript.Quit
End If
' open applicaion
set AzApp = AzStoreObj.OpenApplication(AzManAppName)
If Err.Number <> 0 Then
WScript.Echo "AzRoles.AzAuthorizationStore failed to open application: " + AzManAppName + ". Check application Name."
WScript.Quit
End If
' set BizRulesEnabled property
WSCript.Echo "App BizRule Before:" & AzApp.BizRulesEnabled
AzApp.BizRulesEnabled = BizRulesEnabled
WSCript.Echo "App BizRule After:" & AzApp.BizRulesEnabled
If Err.Number = 0 Then
WScript.Echo "BizRulesEnabled is updated successfully."
Else
WScript.Echo "BizRulesEnabled is NOT updated successfully."
End If
End if
Controlando o uso em todo o repositório de autorização
Configurando os limites da regra de autorização na guia Limites da folha de propriedades do repositório de autorização, você pode:
-
desabilitar as regras de autorização e as regras comerciais do repositório
-
definir um valor de tempo limite para restringir o tempo máximo de execução de um script
-
permitir a execução de scripts sem tempo limite.
Para obter mais informações, consulte Noções básicas sobre os limites de repositório do Gerenciador de Autorização.
Exemplo de VBScript
Veja abaixo uma regra de autorização em VBScript que sempre concede permissão:
AzBizRuleContext.BusinessRuleResult = True
Para obter mais informações sobre o VBScript, consulte
Exemplo de JScript
Veja abaixo uma regra de autorização em JScript que sempre concede permissão:
AzBizRuleContext.BusinessRuleResult = true;
Para obter mais informações sobre JScript, consulte