共用方式為


HOW TO:使用 XML 檔匯入程式碼群組

應用程式可能要求,您應該將應用程式特定程式碼群組加入至安全性原則。 應用程式可能隨同實作新程式碼群組的組件和含有新程式碼群組的序列化的 XML 檔來發行。 您可以使用 Caspol.exe (程式碼存取安全性原則工具) 將 XML 檔匯入至安全性原則中。 XML 檔也可能包含與程式碼群組相關的成員資格條件和使用權限集合的資訊。 通常,應用程式符合指定的成員資格條件,並且需要相關聯的使用權限集合。

下列範例示範程式碼群組、其相關成員資格條件和使用權限集合資訊可能如何出現於 XML 檔中。

範例

<CodeGroup class="System.Security.Policy.UnionCodeGroup, mscorlib,
           Version=1.0.2411.0, Culture=neutral,
           PublicKeyToken=b77a5c561934e089" version="1"
           Name="myCodeGroup"
           Description="test code group">
   <IMembershipCondition class="MyCustomMembershipCondition, myAssembly,
       Version=1.0.0.0, Culture=neutral,
       PublicKeyToken=b77a5c561934e089" version="1"
       Url="https://www.microsoft.com/"/>
 
   <PermissionSet class="NamedPermissionSet" version="1"
       Name="MyPermissionSet"
       Description="Permission set containing my custom permission">
          <IPermission class="myCustomNamespace.CustomPermission,
             customPerm, Version=0.0.0.0, Culture=neutral,
             PublicKeyToken=64a85a7d791b1a32"  version="1"
             Unrestricted="True"/>
   </PermissionSet>
</CodeGroup>

<CodeGroup> 項目包含新程式碼群組的資訊。 classversion 屬性對 <CodeGroup> 項目是必要的。 class 屬性指向實作新程式碼群組的類別和組件。 class 屬性的值可以採用指定完整的型別名稱中討論的任何格式,但通常將會是範例中示範的形式。 對於這個版本的 .NET Framework 而言,version 屬性為 "1"。 NameDescription 屬性可以是任何有效字串,並且可以被編輯。 Name 屬性是使用權限集合的名稱,正如 .NET Framework 組態工具中所顯示的。

<IMembershipCondition> 項目包含將會指定條件 (組件必須符合以成為程式碼群組的成員) 和接收其相關使用權限的屬性或子項目。 <IMembershipCondition>class 屬性採用與 <CodeGroup>class 屬性相同的格式。

如果 <CodeGroup> 項目含有 <IMembershipCondition> 項目和 <PermissionSet> 項目,則在匯入此項目時,成員資格條件和使用權限集合便會自動關聯到程式碼群組。 如果遺漏這些項目的其中一個,您必須使用 Caspol.exe (程式碼存取安全性原則工具),讓遺漏項目與新程式碼群組產生關聯。 如需詳細資訊,請參閱 HOW TO:使用 Caspol.exe 檢視程式碼群組

請參閱

其他資源

安全性原則管理

使用 XML 檔匯入安全性元件