Share via


authorization の allow 要素 (ASP.NET 設定スキーマ)

[このドキュメントはプレビューのみを目的としており、以降のリリースで変更される可能性があります。プレースホルダーとして空白のトピックが含まれています。]

承認規則のマップにリソースへのアクセスを許可する承認規則を追加します。

<allow 
   users="comma-separated list of users"
   roles="comma-separated list of roles"
   verbs="comma-separated list of verbs"
/>

属性および要素

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

属性

属性

Description

users

必須の String 属性です。

リソースへのアクセスが許可されるユーザー名のコンマ区切りのリスト。 疑問符 (?) は、匿名ユーザーがリソースへのアクセスを許可されたことを示します。 アスタリスク (*) は、すべてのユーザーがリソースへのアクセスを許可されたことを示します。

roles

必須の String 属性です。

リソースへのアクセスが許可されるロールのコンマ区切りのリスト。

verbs

省略可能な String 型の属性です。

リソースへのアクセスが許可される HTTP 伝送方法のコンマ区切りのリスト。

ASP.NET に登録されている動詞は、GET、HEAD、POST、および DEBUG です。

子要素

なし。

親要素

要素

Description

configuration

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

system.web

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

authorization

Web アプリケーションの承認を構成します。 authorization タグは、URL リソースへのクライアント アクセスを制御します。 この要素は、コンピューター、サイト、アプリケーション、サブディレクトリ、ページの各レベルで宣言できます。

解説

allow 要素は、リソースへのアクセスを許可する承認規則を authorization 要素に格納されている承認規則のマップに追加します。

authorization 要素は、クライアントによる URL リソースへのアクセスを管理することで、Web アプリケーションの承認を構成します。 必要な属性として、users 属性か roles 属性またはこの両方を使用できます。

既定の承認規則は <allow users="*"/> です。 これにより、既定で、特に指定がない限りアクセスは許可されます。

配置を容易にするため、現在のコンピューターを示すショートカット表記としてピリオド (.) がサポートされています。 これにより、各ユーザーまたはロールのプレフィックスとしてピリオドとバックスラッシュ (.\) によるシーケンスを使用できます。次にコード例を示します。

<allow roles=". \roleName"/>

<allow users=". \userName"/>

実行時に、ピリオドとバックスラッシュによるシーケンスは、"localmachinename\" シーケンスに置き換えられます。 この置き換えは、要求で Windows ID が使用されている場合にのみ実行されます。 これにより、カスタム プリンシパルを使用する任意のロールでピリオドとバックスラッシュによるシーケンスが使用されていても、競合を避けることができます。

authorization 要素はコレクションを表さないので、子要素として clear または remove は存在しません。 承認規則のマップをプログラムでクリアするには、Clear() メソッドまたは Remove メソッドを使用します。

既定の構成

次の既定の authorization 要素は、.NET Framework Version 2.0 のルート Web.config ファイルおよび .NET Framework Versions 1.1 および 1.0 の Machine.config ファイルに構成されています。

<authorization>
   <allow users="*" />
</authorization>

使用例

すべてのユーザー アカウントへのアクセスを拒否し、ロール admins のすべてのメンバーへのアクセスを許可する方法を、次のコード例に示します。

<configuration>
  <system.web>
    <authorization>
      <allow roles="admins"/>
      <deny users="*"/>
    </authorization>
  </system.web>
</configuration>

要素情報

構成セクション ハンドラー

AuthorizationSection

構成メンバー

AuthorizationRuleCollection

構成できる場所

Machine.config

ルート レベルの Web.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

参照

処理手順

How to: Configure Specific Folders Using Location Settings

How to: Lock ASP.NET Configuration Settings

Reference

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

authorization の deny 要素 (ASP.NET 設定スキーマ)

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

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

System.Configuration

System.Web.Configuration

概念

ASP.NET Authorization

ASP.NET Configuration File Hierarchy

Securing Configuration

Configuration Inheritance

その他の技術情報

Managing Authorization Using Roles

全般構成設定 (ASP.NET)

ASP.NET 構成設定

Configuring ASP.NET Applications

ASP.NET Configuration API