共用方式為


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

安全性許可權

您可以將安全性限制套用至選取的物件或物件類別,以限制動作的可用性。

物件實例許可權

您可以將必要許可權套用至選取的物件,以限制動作的可用性。 在下列 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
建立 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動作
Configuration Manager動作 XML
Configuration Manager AssemblyType 動作
Configuration Manager可執行檔動作
Configuration Manager群組動作
Configuration Manager報表動作
Configuration Manager ShowDialog 動作
如何建立Configuration Manager動作
如何尋找Configuration Manager節點 GUID