Compartir a través de


Configuration Manager acciones condicionales

Configuration Manager acciones se pueden mostrar según las condiciones especificadas. Las condiciones se definen mediante lo siguiente:

  • Expresiones regulares

  • Llamadas al método

  • Permisos de seguridad

Expresiones regulares

Las expresiones regulares permiten aplicar patrones de búsqueda basados en cadenas. Los elementos siguientes especifican una expresión regular para una acción:

Elemento Descripción
MatchPattern Especifica el patrón que se va a buscar.
MatchValueToTest Especifica el valor con el que se va a comparar. El valor siguiente ##Sub es una propiedad del objeto seleccionado. La propiedad no debe ser diferida y debe existir en el objeto select.

La acción siguiente muestra un cuadro de diálogo cada vez que el patrón especificado (MS_ASYNC_RAS) coincide con la propiedad del AddressType objeto seleccionado:

<ActionDescription ActionVerb="Properties" Class="ShowDialog">  <ShowOn>  <string>DefaultContextualTab</string> <!-- Show on Ribbon -->           <string>ContextMenu</string> <!-- Show on Context Menu -->   </ShowOn>  <MatchPattern>MS_ASYNC_RAS</MatchPattern>  
 <MatchValueToTest>##SUB:AddressType##</MatchValueToTest>  
 <DialogId>AsyncRasSenderAddress</DialogId></ActionDescription>  

Llamadas al método

Se puede mostrar una acción en función del resultado de una llamada al método. El ActionDescription elemento ActionStateAssembly secundario define el ensamblado, el tipo y el método al que se va a llamar. Si el método devuelve true, se muestra la acción; si el método devuelve false, la acción está oculta.

El siguiente XML llama a un método denominado EnableDecrementPriorityMenu en el ensamblado AdminUI.Addresses.dll:

<ActionDescription>  
 <ShowOn>  
    <string>DefaultContextualTab</string> <!-- Show on Ribbon -->         <string>ContextMenu</string><!-- Show on Context Menu --> </ShowOn> <ActionStateAssembly>  
  <Assembly>AdminUI.Addresses.dll</Assembly>   <Type>Microsoft.ConfigurationManagement.AdminConsole.Addresses.AddressUtilityClass</Type>  
  <Method>EnableDecrementPriorityMenu</Method> </ActionStateAssembly>  
</ActionDescription>  

El método se implementa en un ensamblado de .NET Framework con la siguiente firma:

public static bool EnableDecrementPriority(object sender, ScopeNode scopeNode, ActionDescription action, ResultObjectBase resultObject)

Para obtener más información sobre cómo llamar a métodos en un ensamblado de .NET Framework, vea Configuration Manager AssemblyType Action.

Permisos de seguridad

Puede restringir la disponibilidad de una acción aplicando restricciones de seguridad al objeto o la clase de objeto seleccionados.

Permisos de instancia de objeto

Puede restringir la disponibilidad de una acción aplicando los permisos necesarios al objeto seleccionado. En el siguiente ejemplo XML, los siguientes elementos especifican los permisos de instancia para el objeto seleccionado:

Elemento Descripción
InstancePermissions Elemento primario de la lista de permisos de instancia.
SecurityFlagsDetailDescription Marcas de seguridad que se deben establecer para que la acción funcione.

En el siguiente ejemplo XML, la Delete acción de un objeto seleccionado solo está disponible si el usuario tiene permisos de modificación:

<ActionDescription ActionVerb="Delete" Class="Default" SelectionMode="Both" InstanceDependsOn="SMS_Site">  
<ShowOn> <string>DefaultContextualTab</string> <!-- Show on Ribbon -->    <string>ContextMenu</string> <!-- Show on Context Menu --></ShowOn><InstancePermissions><SecurityFlagsDetailDescription BitName="Modify" BitValue="2" DependsOn="1" /></InstancePermissions>  
</ActionDescription>  

Permisos de clase de objeto

Puede usar el ClassPermissions elemento para establecer los permisos de clase de objeto necesarios para una acción. ActionSecurityDescription describe la clase de objeto y los permisos necesarios para esa clase de objeto. En el ejemplo XML siguiente se describen los permisos necesarios para las colecciones de SMS:

<ClassPermissions> <ActionSecurityDescription ClassObject="SMS_Collection" RequiredPermissions="1280" />  
</ClassPermissions>  

Valores de permiso

Los valores de permiso para el atributo RequiredPermissions son los mismos que para la clase SecurityFlagsDetailDescription y son los siguientes:

Permiso Valores Depende
Lectura 1 Ninguno
Modify 2 1
Delete 4 1
Distribuir 8 1
CreateChild 16 1
Remotecontrol 32 Ninguno
Advertise 64 1
ModifyResource 128 1
Administrar 256 7
DeleteResource 512 1
Crear 1024 Ninguno
ViewCollectedFiles 2048 1
ReadResource 4096 1
Delegado 8192 Ninguno
Metro 16384 1
ManageSqlCommand 32768 1
ManageStatusFilter 65536 1
ManageFolder 131072 1
Networkaccess 262144 1
ImportMachineEntry 524288 1
CreateMediaCertificate 1048576 1
ModifyCollectionSetting 2097152 1
ManageOsdCertificate 4194304 1

Consulta también

acciones de Configuration Manager
XML de acción de Configuration Manager
Configuration Manager acción AssemblyType
Configuration Manager acción ejecutable
Configuration Manager acción de grupo
Configuration Manager acción de informe
Configuration Manager acción ShowDialog
Cómo crear una acción de Configuration Manager
Cómo buscar un GUID de nodo de Configuration Manager