共用方式為


HOW TO:使用 Caspol.exe 加入程式碼群組

加入群組命令範例

當您使用程式碼存取安全性原則工具 (Caspol.exe) 將程式碼群組加入至程式碼群組階層架構時,您必須同時為新程式碼群組定義成員資格條件和使用權限集合。 您也必須定義父程式碼群組 (您正要在其中加入新程式碼群組那一個) 的標記 (Label) 或名稱。 您也可以選擇性地在程式碼群組上設定其他旗標。 如需這些旗標的詳細資訊,請參閱程式碼存取安全性原則工具 (Caspol.exe)

若要加入程式碼群組至程式碼群組階層架構

  • 在命令提示字元中輸入下列命令:

    caspol [-enterprise| -machine |-user] -addgroup {parentLabel|parentName} mship pset_name [-exclusive {on|off}][-levelfinal {on|off}] [-name name] [-description description text]

    -addgroup 選項之前指定原則層級選項。 如果您省略原則層級選項,Caspol.exe 會將程式碼群組加入至預設原則層級。 對於電腦系統管理員而言,預設層級為電腦原則層級;對其他人而言,則為使用者原則層級。 在這個命令中:

    • parentLabel 引數為新程式碼群組的父程式碼群組標記。 此外,您也可以使用父代 (Parent) 的程式碼群組名稱 (parentName) 來代替 parentLabel。 若要取得此資訊,請按照 HOW TO:使用 Caspol.exe 檢視程式碼群組的說明,列出程式碼群組。

    • pset_name 引數是要和新程式碼群組產生關聯的使用權限集合的名稱。 在具名使用權限集合可以和程式碼群組產生關聯之前,它必須在您將要加入新程式碼群組的原則層級上為已知的。 例如,如果您想要使 MyPset 使用權限集合與使用者原則中的新程式碼群組產生關聯,您必須已經將 MyPset 使用權限集合加入至使用者原則。 使用權限集合不需事先加入的唯一時機是,當您使用 .NET Framework 所提供標準使用權限集合的其中之一時。 若要了解如何將使用權限集合加入原則層級,請參閱 HOW TO:使用 Caspol.exe 加入使用權限集合

    • mship 引數為新程式碼群組的成員資格條件。 如需 mship 引數值的清單,請參閱程式碼存取安全性原則工具 (Caspol.exe)

注意事項注意事項

您不能使用 -addgroup 選項一次將程式碼群組加入至一個以上的層級。每一個這樣的加入都必須個別進行,因為不同程式碼群組標記和某些使用權限集合的可用性會造成混淆。

加入群組命令範例

下列程序描述如何執行一些最常見的程式碼群組加入工作。

若要加入以來自內部網路的程式碼為目標的程式碼群組

  • 使用 -zone 選項,並指定 Intranet 做為成員資格值。

    下列命令可使 Everything 使用權限集合與來自內部網路的程式碼產生關聯。 程式碼群組名稱也指定為 Intranet_CG。 您可以使用這個名稱來參考新建立的程式碼群組,而非使用其數值標記。

    caspol –addgroup 1.1. –zone Intranet Everything –name "Intranet_CG"
    

若要加入以來自Internet Explorer 信任網站的程式碼為目標的程式碼群組

  • 使用 -zone 選項,並指定 Trusted 做為成員資格值。

    下列命令使 LocalIntranet 使用權限集合與來自受信任區域的程式碼產生關聯,並插入新程式碼群組當做程式碼群組階層架構的根 (Root) 的子系。

    caspol -addgroup All_Code -zone Trusted LocalIntranet
    

若要加入以特定軟體發行者為目標的程式碼群組

  • 使用 -pub 選項,並指定憑證檔、已簽名檔案,或 X.509 憑證的十六進位表示。

    軟體發行者的檔案必須為這個成員資格條件妥善簽名才能運作。 成員資格條件可以在實際的憑證檔或簽名的 .exe 檔案其中之一的基礎上來建構。

    假定有 FourthCoffee (FourthCoffee.cer) 的憑證檔可用。 下列命令會為 FourthCoffee 發行的程式碼在電腦原則中加入程式碼群組,並使 Nothing 使用權限集合與新群組產生關聯。 程式碼群組被當做根的子程式碼群組來加入。

    caspol –machine –addgroup 1 –pub –cert FourthCoffee.cer Nothing
    

若要加入以來自特定網站程式碼為目標的程式碼群組

  • 使用 -site 選項,並指定網站的 URL。

    注意事項注意事項

    由於會有 DNS 名稱冒用的可能,使用網站當做成員資格條件,並無法有效確定程式碼的識別 (Identity)。請盡可能使用強式名稱 (Strong Name) 成員資格條件、發行者成員資格條件或雜湊成員資格條件。

    下列命令會使 Intranet 使用權限集合與來自 www.microsoft.com 的程式碼產生關聯。

    caspol –addgroup 1 –site www.microsoft.com Intranet
    

若要加入以來自特定 URL 程式碼為目標的程式碼群組

  • 使用 -url 選項,並指定網站的 URL。

    URL 必須包括通訊協定,如 http://、http:// 或 ftp://。 此外,可以使用萬用字元 (*) 指定來自特定 URL 的多個組件。

    注意事項注意事項

    因為 URL 可以使用多個名稱來識別,所以將 URL 當做成員資格條件使用並不是確定程式碼識別的安全方法。請盡可能使用強式名稱 (Strong Name) 成員資格條件、發行者成員資格條件或雜湊成員資格條件。

    caspol –user –addgroup 1 –url https://www.contoso.com/bin/* FullTrust
    caspol –user –addgroup 1 –url https://www.contoso.com/bin/MyAssembly.dll FullTrust
    

若要加入覆寫原則層級上其他使用權限的程式碼群組

  • 設定新程式碼群組的 -exclusive 旗標。

    下列命令會在 Intranet_cg 程式碼群組之下加入程式碼群組。 如果區域是受信任的,並且覆寫其他程式碼群組可能授與的任何其他使用權限的話,新程式碼群組將授與 Everything 使用權限集合。

    caspol –addgroup "Intranet_cg" –zone Trusted Everything –exclusive on
    

若要加入具有自訂成員資格條件的程式碼群組

  • 使用 -custom 選項,並指定含有自訂成員資格條件的 XML 序列化 (Serialization) 的 XML 檔。

    Caspol.exe 在原則中支援自訂成員資格條件的使用,這原則使得原則系統的可擴充性大大提高。

    下列命令會將新程式碼群組加入至使用者原則的根。 這個新程式碼群組包含存在於 NewMembershipCondition.xml 檔案的自訂成員資格條件,並對符合這個成員資格條件的組件授與完全信任。

    caspol –user –addgroup All_Code –custom NewMembershipCondition.xml FullTrust
    

若要加入具有名稱和說明的程式碼群組

  1. 使用 -name 選項,並指定程式碼群組的名稱。 含有空格的名稱需要以雙引號 (" ") 括住。

  2. 使用 -description 選項,並指定程式碼群組的說明。

您可以稍後使用名稱來參考程式碼群組。 名稱為指令碼原則變更提供較數值標記為佳的支援。

預設原則將與預設名稱一起發行。 如果沒有被系統管理員明確變更,預設名稱會讓系統管理員在使用 Caspol.exe 來跨原則和電腦存取特定程式碼群組時,變得更為輕鬆。

下列命令會在電腦原則中的 All_Code 群組之下加入程式碼群組。 新程式碼群組將檢查 FourthCoffee 強式名稱 (Signed.exe 中所看到的),並將 FullTrust 授與所有如此簽名的程式碼。 程式碼群組被命名為 FouthCoffeeStrongName,並有適當說明指定給它。

caspol –machine –addgroup All_Code –strong –file signed.exe FullTrust –name FouthCoffeeStrongName –description "Code group granting trust to code signed by FourthCoffee"
注意事項注意事項

如果相同名稱存在於一個以上的程式碼群組,Caspol.exe 將解析至可以使用指定名稱找到的第一個程式碼群組。它會在搜尋同層級 (Sibling) 群組之前搜尋程式碼群組的所有子程式碼群組。

請參閱

參考

Caspol.exe (程式碼存取安全性原則工具)

概念

安全性原則模型

其他資源

使用程式碼存取安全性原則工具 (Caspol.exe) 設定安全性原則

使用 Caspol.exe 設定程式碼群組