次の方法で共有


<forms> 要素

ASP.NET アプリケーションをカスタム フォーム ベース認証に合わせて設定します。

<configuration>
   <system.web>
      <authentication>
         <forms>

<forms name="name"        loginUrl="url"protection="All|None|Encryption|Validation"timeout="30"       path="/"        requireSSL="true|false"       slidingExpiration="true|false">   <credentials passwordFormat="format"/></forms>

省略可能属性

属性 オプション 説明
name     認証に使用する HTTP Cookie を指定します。既定では、name の値は .ASPXAUTH です。1 つのサーバー上で複数のアプリケーションが実行され、各アプリケーションに一意の Cookie が必要な場合は、各アプリケーションの Web.config ファイルで Cookie 名を設定する必要があります。
loginUrl     有効な認証 Cookie が見つからない場合に、ログオンのために要求をリダイレクトする先の URL を指定します。既定値は default.aspx です。
protection     Cookie に使用する暗号化の種類を指定します。
    All アプリケーションが Cookie を保護するためにデータ検証と暗号化を両方とも使用することを指定します。このオプションでは、(<machineKey> 要素に基づいて) 設定されたデータ検証アルゴリズムを使用します。Triple-DES (3DES) 方式が利用でき、キーの長さが十分である場合は (48 バイト以上)、Triple-DES を使用して暗号化します。All は、既定値です。これは推奨値でもあります。
    None Cookie がパーソナル化だけのために使用され、セキュリティの要件が低く設定されているサイトで、暗号化と検証を両方とも使用しないことを指定します。この方法で Cookie を使用することはお勧めできません。しかし、この方法では、.NET Framework を使用してパーソナル化を有効にするために使用するリソースを最小限に抑えることができます。
    Encryption Triple-DES または DES を使用して Cookie を暗号化するけれども、Cookie に対するデータ検証は実行しないことを指定します。この方法で使用される Cookie は、なんらかの平文攻撃の対象になる可能性があります。
    Validation 暗号化された Cookie が送信中に変更されていないことを、検証スキームを使用して検査することを指定します。Cookie 検証を使用して Cookie を作成する場合は、検証キーと Cookie データを連結し、MAC (Message Authentication Code) を計算してから、送信する Cookie にその MAC を追加します。
timeout     Cookie のタイムアウトまでの所要時間を整数の分の値で指定します。既定値は 30 です。SlidingExpirationtrue の場合、timeout 属性は変化する値であり、最後の要求を受信してから指定した時間 (分) が経過するとタイムアウトします。パフォーマンスの低下を防ぎ、Cookie 警告が有効になっているユーザーに対して複数のブラウザ警告が出力されないようにするために、指定した時間の半分が経過すると Cookie は更新されます。これにより、精度が低下する可能性があります。永続的な Cookie がタイムアウトすることはありません。
path     アプリケーションが発行する Cookie のパスを指定します。既定値はスラッシュ (/) です。これは、ほとんどのブラウザでは大文字と小文字が区別されるため、パスの大文字と小文字が正確に一致しない場合には Cookie が戻されないからです。
requireSSL     認証 Cookie を送信するために安全な接続が必要かどうかを指定します。
    true ユーザーの資格情報を保護するために安全な接続が必要であることを指定します。true を指定すると、ASP.NET で認証 Cookie に HttpCookie.Secure が設定され、規格に準拠しているブラウザでは、SSL (Secure Sockets Layer) の接続でない限り、Cookie は返しません。
    false Cookie の送信に安全な接続は必要ないことを指定します。既定値は false です。
slidingExpiration     変化する有効期限が有効かどうかを指定します。変化する有効期限を指定すると、アクティブな認証 Cookie の有効期限が単一のセッション内の各要求ごとにリセットされます。
    true 変化する有効期限が有効であることを指定します。単一のセッション内で、以降の要求ごとに認証 Cookie は更新され、有効期限までの時間がリセットされます。ASP.NET バージョン 1.0 での既定値は true でした。
    false 変化する有効期限を有効にしないことを指定します。Cookie は、発行されたときから指定の期間がたつと有効期限が切れます。既定値は false です。

サブタグ

サブタグ 説明
<credentials> 構成ファイル内で、名前資格情報およびパスワード資格情報を定義できるようにします。カスタム パスワード スキームを実装して、検証を制御するためにデータベースなどの外部ソースを使用することもできます。

解説

1 つのサーバー上で複数のアプリケーションが実行される場合は、各アプリケーションの Web.config ファイルで <forms> 属性を設定する必要があります。

フォーム ベース認証のサイトを設定し、クライアントからのログオン情報を伝送する Cookie の名前を指定し、最初の認証が失敗したときに使用するログオン ページの名前を指定する例を次に示します。

<configuration>
   <system.web>
      <authentication mode="Forms">
         <forms name="401kApp" loginUrl="/login.aspx">
            <credentials passwordFormat = "SHA1" 
               <user name="UserName" 
                     password="07B7F3EE06F278DB966BE960E7CBBD103DF30CA6"/>
            </credentials>
         </forms>
      </authentication>
   </system.web>
</configuration>

必要条件

格納されている場所 : <system.web>

Web プラットフォーム : IIS 5.0、IIS 5.1、IIS 6.0

構成ファイル : Machine.config、Web.config

構成セクション ハンドラ : System.Web.Configuration.AuthenticationConfigHandler

参照

<authentication> 要素 | ASP.NET の構成 | ASP.NET 設定スキーマ