コード グループ
重要 |
---|
.NET Framework Version 4 では、共通言語ランタイム (CLR: Common Language Runtime) がコンピューターにセキュリティ ポリシーを提供しなくなります。Microsoft では、CLR のセキュリティ ポリシーの代替として、Windows のソフトウェアの制限のポリシーを使用することをお勧めしています。このトピックの情報は、.NET Framework Version 3.5 以前に適用され、Version 4 以降には適用されません。この変更およびその他の変更の詳細については、「.NET Framework 4 におけるセキュリティの変更点」を参照してください。 |
コード グループは、メンバーシップについて特定の条件を持つコードの論理的な集まりです。 このメンバーシップ条件を満たす任意のコードが、そのコード グループのメンバーになります。 コード グループは、ポリシーの適用時に評価されるアクセス許可セットに関連付けられています。 管理者は、コード グループとそれに関連付けられたアクセス許可セットを管理することによって、セキュリティ ポリシーを構成します。
.NET Framework によって提供されるコード グループのメンバーシップ条件を次の表に示します。 メンバーシップ条件はクラスとして実装されます。
メンバーシップ条件 |
説明 |
---|---|
すべてのコード |
すべてのコードに一致するメンバーシップ条件を表します。 |
アプリケーション ディレクトリ |
アプリケーションのインストール ディレクトリ。 |
暗号ハッシュ |
MD5、SHA1、またはその他の暗号ハッシュ。 |
ソフトウェア発行元 |
有効な Authenticode 署名の公開キー。 |
サイト メンバーシップ |
コードの発生元である HTTP、HTTPS、および FTP サイト。 |
厳密な名前 |
暗号化された厳密署名。 |
URL |
コードの発生元である URL。http://site/app/* のように、最後のワイルドカードも使用できます。 |
ゾーン |
コードの発生元であるゾーン。 |
共通言語ランタイムは、コードについて記述した識別特性 (証拠) を使用して、このコードがグループのメンバーシップ条件に一致しているかどうかを判断します。 たとえば、グループのメンバーシップ条件が "www.microsoft.com Web サイトを発生元とするコード" である場合、ランタイムはコードの証拠を調べ、そのコードの発生元が www.microsoft.com かどうかを確認します。
各コード グループは、名前付きアクセス許可セットに関連付けられています。 また、コード グループには属性もあり、これらの属性を使用して、セキュリティ ポリシーを定義するために、そのコード グループをどのように使用するかを制御できます。
エンタープライズ、マシン、ユーザーの各ポリシー レベルは、コード グループの階層構造で表されます。 アプリケーション ドメイン レベルは管理者が構成することはできませんが、プログラムによって設定できるコード グループ階層構造を持っています。 各階層構造のルートは、すべてのコードを含んでいるグループです。 すべてのコード グループには、いくつかの子ノードがあり、それらの子ノードの下にもさらに子ノードがあるというように、階層構造が形成されています。 あるコードが親コード グループのメンバーである場合、そのコードは同じ親コード グループの下にある 1 つ以上の子コード グループのメンバーである可能性があります。 コードが親コード グループのメンバーでない場合、そのコードがその親コード グループの子であるコード グループのメンバーになることはありません。
コード グループにはオプションの説明と名前属性があり、これらは .NET Framework 構成ツールを使用して参照できます。