Las reglas de autorización son scripts escritos en VBScript o JScript que se pueden incluir en las definiciones de rol y de tarea. Una regla de autorización determina si el rol o la tarea están permitidos.
Mediante las reglas de autorización, puede basar las decisiones de autorización en cualquier condición que pueda comprobar un script. Éstas incluyen los privilegios y los permisos, así como la hora del día, los límites de gastos facturables, los balances de cuentas y otros criterios.
Administrador de autorización no se ha diseñado para escribir o depurar reglas de autorización. Puede escribir los scripts en un editor de texto (por ejemplo, el Bloc de notas), en un entorno de desarrollo integrado como Visual Studio .NET o en cualquier otra aplicación que desee. Las reglas de autorización suelen escribirlas programadores profesionales.
Para obtener más información acerca de cómo crear reglas de autorización y usar las interfaces de programación de aplicaciones (API) del Administrador de autorización, vea la página sobre el
Control del uso de las reglas de negocio y las reglas de autorización
Control del uso en cada cliente
A partir de Windows Server 2008, el uso de reglas de negocio y reglas de autorización puede controlarse mediante una configuración del Registro. Las reglas están deshabilitadas de manera predeterminada. Las versiones anteriores de Windows no admitían esta funcionalidad.
Normalmente, usará un programa de instalación o un script ejecutado por el sistema operativo para habilitar las reglas de autorización y las reglas de negocio si están en uso en su entorno.
Importante | |
Esta configuración se controla individualmente para cada aplicación de Administrador de autorización en cada cliente. |
A continuación se muestra un script de ejemplo que habilita o deshabilita reglas de negocio y reglas de autorización para una aplicación:
'
' 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
Control del uso para todo el almacén de autorización
Puede configurar los límites de las reglas de autorización en la pestaña Límites de la hoja de propiedades del almacén de autorización para:
-
Deshabilitar las reglas de autorización y las reglas de negocio para el almacén.
-
Establecer un valor de tiempo de espera para limitar el tiempo máximo permitido para ejecutar un script.
-
Permitir la ejecución de scripts sin tiempo de espera.
Para obtener más información, vea Descripción de los límites de los almacenes de Administrador de autorización.
Ejemplo de VBScript
A continuación se muestra una regla de autorización en VBScript que siempre concede permiso:
AzBizRuleContext.BusinessRuleResult = True
Para obtener más información acerca de VBScript, vea la página sobre
Ejemplo de JScript
A continuación se muestra una regla de autorización en JScript que siempre concede permiso:
AzBizRuleContext.BusinessRuleResult = true;
Para obtener más información acerca de JScript, vea la página sobre