Условные действия 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