コード アクセス許可
コード アクセス許可は、リソースと操作が権限なしに使用されないように保護するために役立つアクセス許可オブジェクトです。 アクセス許可オブジェクトは、マネージ コードにセキュリティ制限を適用するための共通言語ランタイムの機構の基本的な部分です。
各コード アクセス許可は、次の権限のいずれかを表します。
ファイルや環境変数など、保護されたリソースにアクセスする権限。
アンマネージ コードへのアクセスなど、保護された操作を実行するための権限。
すべてのコード アクセス許可は、コードで要求できます。コードに与えられる許可の種類は、ランタイムが決定します。
各コード アクセス許可は、CodeAccessPermission クラスから派生します。つまり、すべてのコード アクセス許可には、Demand、Assert、Deny、PermitOnly、IsSubsetOf、Intersect、Union などの共通のメソッドがあります。
重要 |
---|
.NET Framework Version 4 では、Deny、RequestMinimum、RequestOptional、および RequestRefuse の各アクセス許可要求を適用するためのランタイム サポートは削除されています。これらの要求は、.NET Framework 4 以降に基づくコードで使用しないでください。この変更およびその他の変更の詳細については、「.NET Framework 4 におけるセキュリティの変更点」を参照してください。 |
.NET Framework には、次のコード アクセス許可が用意されています。
アクセス許可クラス名 |
クラスが表す権限 |
---|---|
ASP.NET によってホストされた環境のリソースへのアクセス。 |
|
System.DirectoryServices クラスへのアクセス。 |
|
DNS (Domain Name System) へのアクセス。 |
|
環境変数の読み取りと書き込み。 |
|
イベント ログ サービスへの読み取りアクセスまたは書き込みアクセス。 |
|
ユーザーが [ファイルを開く] ダイアログ ボックスで選択したファイルへのアクセス。 |
|
ファイルまたはディレクトリの読み取り、追加、または書き込み。 |
|
分離ストレージへのアクセス。分離ストレージとは、固有のユーザー、およびコードの ID のいくつかの側面 (Web サイト、発行者、署名など) に関連付けられたストレージです。 |
|
管理された Microsoft メッセージ キュー (MSMQ: Microsoft Message Queuing) インターフェイスを通じてのメッセージ キューへのアクセス。 |
|
ODBC データ ソースへのアクセス。 |
|
OLE DB を使用したデータベースへのアクセス。 |
|
Oracle データベースへのアクセス |
|
パフォーマンス カウンターへのアクセス。 |
|
プリンターへのアクセス。 |
|
実行時における型情報の発見。 |
|
レジストリ キーとレジストリ値の読み取り、書き込み、作成、または削除。 |
|
アクセス許可の実行とアサート、アンマネージ コードの呼び出し、検査のスキップ、およびその他の権限。 |
|
実行中または停止中のサービスへのアクセス。 |
|
トランスポート アドレスでの接続の確立と承認。 |
|
SQL データベースへのアクセス。 |
|
ユーザー インターフェイスの機能へのアクセス。 |
|
Web アドレスでの接続の確立と承認。 |
さらに、.NET Framework では以下の抽象クラスを用意しています。これらのクラスはカスタム アクセス許可の作成に使用できます。
アクセス許可クラス名 |
クラスが表す権限 |
---|---|
データベースへのアクセス。 |
|
分離ストレージへのアクセス。 |
|
システム リソースへのアクセス。 |