securityPolicy の trustLevel 要素 (ASP.NET 設定スキーマ)

更新 : 2007 年 11 月

セキュリティ ポリシー ファイルと名前付きセキュリティ信頼レベルとの間のマップを、セキュリティ ポリシーのマップのコレクションに追加します。追加後は、trust 要素の level 属性に信頼レベルの名前を指定することによって、セキュリティ ポリシー ファイルを ASP.NET アプリケーションに適用できます。

configuration 要素 (全般設定スキーマ)
  system.web 要素 (ASP.NET 設定スキーマ)
    securityPolicy 要素 (ASP.NET 設定スキーマ)
      securityPolicy の trustLevel 要素 (ASP.NET 設定スキーマ)

<trustLevel 
   name="trust level name" 
   policyFile="file name" 
/>

属性と要素

以降のセクションでは、属性、子要素、および親要素について説明します。

属性

属性

説明

name

必須の String 属性です。

ポリシー ファイルに割り当てられる名前付きセキュリティ レベルを指定します。

この属性は、ユーザー定義値、または次の値のいずれかにできます。

説明

Full

ASP.NET がアプリケーション ドメイン固有のポリシーによってセキュリティ ポリシーを制限しないことを指定します。Full に関連付けられたセキュリティ ポリシー ファイルはありません。既定では、この信頼レベル名は、policyFile 属性の "internal" にマップされます。

High

ポリシー ファイルのマップに高レベルのセキュリティを指定します。既定では、この信頼レベル名は、Web_hightrust.config ポリシー ファイルにマップされます。

Medium

ポリシー ファイルのマップに中レベルのセキュリティを指定します。既定では、この信頼レベル名は、Web_mediumtrust.config ポリシー ファイルにマップされます。

Low

ポリシー ファイルのマップに低レベルのセキュリティを指定します。既定では、この信頼レベル名は、Web_lowtrust.config ポリシー ファイルにマップされます。

Minimal

ポリシー ファイルのマップに最低レベルのセキュリティを指定します。既定では、この信頼レベル名は、Web_minimaltrust.config ポリシー ファイルにマップされます。

User Defined

ユーザー定義の信頼レベルの名前を指定します。詳細については、「セキュリティ ポリシーの管理」を参照してください。

各信頼レベルで許可される内容の詳細については、AspNetHostingPermissionLevel または「trust 要素 (ASP.NET 設定スキーマ)」を参照してください。

policyFile

必須の String 属性です。

名前付きセキュリティ レベルのセキュリティ ポリシー設定値を格納する構成ファイルを指定します。構成ファイルは、trustLevel 定義が含まれる構成ファイルと同じディレクトリに存在している必要があります。

子要素

なし。

親要素

要素

説明

configuration

共通言語ランタイムおよび .NET Framework ベースのアプリケーションで使用されるすべての構成ファイルで必要なルート要素です。

system.web

構成ファイルの ASP.NET 構成設定のルート要素を指定します。ASP.NET Web アプリケーションを構成する構成要素やアプリケーションの動作を制御する構成要素が含まれます。

securityPolicy

セキュリティ ポリシー ファイルと関連付けられた信頼レベルの名前との間のマップのコレクションを定義します。

解説

独自の名前付き <trustLevel> 要素を作成して、policyFile 属性で指定されたファイルにマップすることにより、セキュリティ システムを拡張できます。ASP.NET とポリシー ファイルについては、「ASP.NET 信頼レベルとポリシー ファイル」および「セキュリティ ポリシーの管理」を参照してください。

ASP.NET では、Full 信頼レベルを特殊なケースとして扱っているため、Full 信頼レベルには関連付けられているポリシー ファイルがありません。Full が設定された場合、ASP.NET ホストはアプリケーションにその他のアプリケーション ドメイン レベル ポリシーを追加しません。Full 信頼レベルは常に内部ハンドラにマップされ、policyFile 属性は無視されます。

既定の構成

次の既定の trustLevel 要素は、ルートの Web.config ファイルで構成されます。

<location allowOverride="true">
<system.web>
   <securityPolicy>
      <trustLevel name="Full" policyFile="internal" />
      <trustLevel name="High" policyFile="web_hightrust.config" />
      <trustLevel name="Medium" policyFile="web_mediumtrust.config" />
      <trustLevel name="Low" policyFile="web_lowtrust.config" />
      <trustLevel name="Minimal" policyFile="web_minimaltrust.config"/>
   </securityPolicy>
   <trust 
      level="Full" 
      originUrl="" 
      processRequestInApplicationTrust="true" 
   />
</system.web>
</location>

使用例

ASP.NET アプリケーションのカスタム信頼レベルの名前とポリシー ファイルを指定し、継承されたコレクションにセキュリティ ポリシーのマップを追加する方法を次のコード例に示します。

<securityPolicy>
   <trustLevel 
      name="CustomTrustLevel" 
      policyFile="customtrust.config"
   />
</securityPolicy>

要素情報

構成セクション ハンドラ

System.Web.Configuration.SecurityPolicySection

構成メンバ

SecurityPolicySection.TrustLevels

TrustLevelCollection.Add

System.Web.Configuration.TrustLevel

構成できる場所

Machine.config

ルート レベルの Web.config

アプリケーション レベルの Web.config

必要条件

Microsoft Internet Information Services (IIS) バージョン 5.0、5.1、または 6.0

.NET Framework Version 1.0、1.1、または 2.0

Microsoft Visual Studio 2003 または Visual Studio 2005

参照

処理手順

方法 : Location の設定を使用して特定のディレクトリを構成する

方法 : ASP.NET 構成設定をロックする

概念

ASP.NET 信頼レベルとポリシー ファイル

セキュリティ ポリシーの管理

ASP.NET 構成の保護

ASP.NET の構成のシナリオ

参照

securityPolicy 要素 (ASP.NET 設定スキーマ)

system.web 要素 (ASP.NET 設定スキーマ)

configuration 要素 (全般設定スキーマ)

trust 要素 (ASP.NET 設定スキーマ)

System.Configuration

System.Web.Configuration

System.Web.Configuration.SecurityPolicySection

System.Web.Configuration.TrustLevel

その他の技術情報

ASP.NET Web アプリケーションのセキュリティ

全般構成設定 (ASP.NET)

ASP.NET 構成設定

ASP.NET Web サイトの管理

ASP.NET 構成ファイル

ASP.NET 構成 API