Share via


計算允許的使用權限集合

重要事項重要事項

在 .NET Framework 4 版 中,Common Language Runtime (CLR) 不會為電腦提供安全性原則。Microsoft 建議您使用 Windows 軟體限制原則做為 CLR 安全性原則的取代項目。本主題中的資訊適用於 .NET Framework 3.5 (含) 以前版本,而不適用於 4 (含) 以後版本。如需這項變更和其他變更的詳細資訊,請參閱 .NET Framework 4 中的安全性變更

Common Language Runtime 會藉由經過相關原則層級的程式碼群組階層架構,計算出應用程式定義域和組件允許的使用權限集合。 對應用程式定義域而言,相關的原則層級是企業、電腦和使用者; 對組件而言,相關的原則層級是企業、電腦、使用者和應用程式定義域。

Runtime 會使用下列程序來計算允許的使用權限集合:

  1. 對每一個相關的原則層級,執行階段都會使用辨識項所提供的識別資訊來決定程式碼所屬的群組。 如果程式碼是群組的成員,該群組就是符合項目。

    在所有程式碼群組中,搜尋符合項目是從程式碼群組階層架構的最上層開始。 執行階段會搜尋階層架構中的層級,如果符合項目是在某個父群組中找到,則還包括子群組。

  2. 辨識完階層架構中的所有符合項目之後,會以加法方式 (聯集) 將和每一個符合程式碼群組關聯的使用權限組合起來,即產生該原則層級所允許的使用權限集合。

    如果將 Exclusive 或 LevelFinal 屬性套用於程式碼群組,執行階段會使用不同的方式來計算允許的使用權限集合。 如需詳細資訊,請參閱程式碼群組屬性

  3. 然後執行階段會重複執行階層架構搜尋,並將每一個原則層級的使用權限集合相交,計算出應用程式定義域或組件允許的使用權限集合。 產生的使用權限集合只會包含所有原則層級都允許的使用權限。

下列圖例顯示程式碼群組階層架構,其中 Microsoft® Money 是四個程式碼群組的成員:所有程式碼、Microsoft (發行者 (Publisher))、本機網際網路 (區域) 和 Microsoft Money (名稱)。 指定原則層級允許的使用權限集合 (電腦、使用者或應用程式定義域) 是和每一個程式碼群組關聯的具名使用權限集合的加法組合 (聯集)。

程式碼群組階層架構

程式碼群組階層架構

請參閱

概念

程式碼群組屬性

其他資源

安全性原則管理