既定のセキュリティ ポリシー
重要 |
---|
.NET Framework Version 4 では、共通言語ランタイム (CLR: Common Language Runtime) がコンピューターにセキュリティ ポリシーを提供しなくなります。Microsoft では、CLR のセキュリティ ポリシーの代替として、Windows のソフトウェアの制限のポリシーを使用することをお勧めしています。このトピックの情報は、.NET Framework Version 3.5 以前に適用され、Version 4 以降には適用されません。この変更およびその他の変更の詳細については、「.NET Framework 4 におけるセキュリティの変更点」を参照してください。 |
コンピューター ポリシーは、次の表に示す既定値に設定されています。 許可されるアクセス許可セットを決定するときは、すべてのポリシー レベルの積集合が計算されるため、コンピューター ポリシーの設定によって既定のセキュリティ ポリシーが決定されます。 これらの表は名前付きアクセス許可セットと既定のポリシー設定で使用されるアクセス許可を表しますが、すべての名前付きアクセス許可セットとセキュリティ ポリシーのカスタマイズで利用できるアクセス許可を示すものではありません。
コンピューター ポリシーの既定のコード グループと、コード グループが既定で受け取る名前付きアクセス許可セットを次の表に示します。 たとえば、ローカル コンピューターから発生したコードは My Computer Zone に割り当てられ、既定で完全な信頼を受け取ります。
コード グループ |
既定で受け取る名前付きアクセス許可セット |
---|---|
|
Full Trust |
|
Local Intranet |
|
Internet |
|
Nothing |
メモ |
---|
.NET Framework 1.0 Service Pack 1 および Service Pack 2 では、Internet Zone コード グループは Nothing という名前付きアクセス許可セットを受け取ります。.NET Framework のそれ以外のすべてのリリースでは、Internet Zone コード グループは、上の表で示したように、Internet という名前付きアクセス許可セットを受け取ります。 |
All Code コード グループは、既定で設定された Nothing アクセス許可セットを受け取りますが、一致する複数のコード グループを結合して (和集合という)、許可されるアクセス許可セットを計算するため、これらのコードにアクセス許可がまったく与えられないというわけではありません。
既定のアクセス許可セットを構成する個々のアクセス許可を次の表に示します。 左側の列に個々のアクセス許可オブジェクトを掲載し、右側の列でアクセス許可セットにおける各オブジェクトの構成を表します。 たとえば、Local Intranet Zone から発生したコードは Local Intranet アクセス許可セットを受け取ります。 この表によると、Local Intranet アクセス許可セットは、無制限の DNSPermission、無制限の FileDialogPermission などで構成されていることがわかります。 Internet Zone からのコードは、既定では Internet アクセス許可セットは受け取らず、Nothing アクセス許可セットを受け取ることに注意してください。
アクセス許可 |
Full Trust アクセス許可セット (この表に示していないアクセス許可も含め、すべてのアクセス許可に対して無制限のアクセス権を持ちます) |
Nothing アクセス許可セット (アクセス許可はまったくなく、実行権限もありません) |
Local Intranet アクセス許可セット |
Internet アクセス許可セット |
---|---|---|---|---|
制限なし |
アクセスなし |
アクセスなし |
||
制限なし |
アクセスなし |
Read Username (環境変数) |
アクセスなし |
|
制限なし |
アクセスなし |
アクセスなし |
||
制限なし |
アクセスなし |
|||
制限なし |
アクセスなし |
9223372036854775807 のディスク クォータ |
512000 のディスク クォータ |
|
制限なし |
アクセスなし |
|||
制限なし |
アクセスなし |
アクセスなし |
||
制限なし |
アクセスなし |
|||
制限なし |
アクセスなし |
多くの場合、既定のセキュリティ ポリシーをそのまま利用できますが、管理者がそれぞれの組織の要件に応じてセキュリティ ポリシーを変更したりカスタマイズしたりできます。 詳細については、「セキュリティ ポリシーの管理」を参照してください。
コードは、固有の LinkDemand に関連付けられた追加の制限の影響を受ける可能性があることに注意してください。LinkDemand はグローバル アセンブリ キャッシュに格納されたアセンブリによって自動的に実行され、完全な信頼を求めます。 AllowPartiallyTrustedCallersAttribute がグローバル アセンブリ キャッシュ内のアセンブリに適用されていない場合、Full Trust アクセス許可セットを受け入れていないコードがアセンブリにリンクしようとすると、SecurityException が発生します。 詳細と AllowPartiallyTrustedCallersAttribute を持つアセンブリのリストについては、「部分信頼コードからのライブラリの使用」を参照してください。