Условные действия Configuration Manager

Configuration Manager действия могут отображаться в соответствии с указанными условиями. Условия определяются следующими:

  • Регулярные выражения

  • Вызовы методов

  • Разрешения системы безопасности

Регулярные выражения

Регулярные выражения позволяют применять шаблоны поиска на основе строк. Следующие элементы указывают регулярное выражение для действия:

Элемент Описание
MatchPattern Указывает шаблон для поиска.
MatchValueToTest Задает значение для сравнения. Следующее значение ##Sub является свойством выбранного объекта. Свойство не должно быть отложенным и должно существовать в объекте select.

Следующее действие отображает диалоговое окно, если указанный шаблон (MS_ASYNC_RAS) соответствует свойству выбранного AddressType объекта:

<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>  

Вызовы методов

Действие может отображаться в зависимости от результата вызова метода. Дочерний ActionDescription элемент ActionStateAssembly определяет сборку, тип и метод для вызова. Если метод возвращает true, действие отображается; если метод возвращает false, действие скрыто.

Следующий XML-код вызывает метод с именем EnableDecrementPriorityMenu в 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>  

Метод реализуется в сборке платформа .NET Framework со следующей сигнатурой:

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

Дополнительные сведения о вызове методов в сборке платформа .NET Framework см. в разделе Действие Configuration Manager AssemblyType.

Разрешения безопасности

Доступность действия можно ограничить, применяя ограничения безопасности к выбранному объекту или классу объектов.

Разрешения экземпляра объекта

Доступность действия можно ограничить, применив к выбранному объекту необходимые разрешения. В следующем примере XML следующие элементы указывают разрешения экземпляра для выбранного объекта:

Элемент Описание
InstancePermissions Родительский элемент в списке разрешений экземпляра.
SecurityFlagsDetailDescription Флаги безопасности, которые должны быть установлены для работы действия.

В следующем примере XML действие для выбранного объекта доступно только в том случае, Delete если у пользователя есть разрешения на изменение:

<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>  

Разрешения класса объектов

Элемент можно использовать для ClassPermissions задания разрешений класса объектов, необходимых для действия. ActionSecurityDescription описывает класс объектов и необходимые разрешения для этого класса объектов. В следующем xml-примере описываются разрешения, необходимые для коллекций SMS:

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

Значения разрешений

Значения разрешений для атрибута RequiredPermissions такие же, как и для класса SecurityFlagsDetailDescription , и имеют следующие значения:

Разрешение Значения Зависит от
Чтение 1 Нет
Изменение 2 1
Удалить 4 1
Distribute 8 1
CreateChild 16 1
RemoteControl 32 Нет
Advertise 64 1
ModifyResource 128 1
Администрирования 256 7
DeleteResource 512 1
Create 1024 Нет
ViewCollectedFiles 2048 1
ReadResource 4096 1
Делегат 8192 Нет
Метр 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

См. также

Действия Configuration Manager
XML-код действия Configuration Manager
Действие assemblyType Configuration Manager
Исполняемое действие Configuration Manager
Действие группы Configuration Manager
Действие отчета Configuration Manager
Действие Configuration Manager ShowDialog
Создание действия Configuration Manager
Поиск GUID узла Configuration Manager