membership の providers の add 要素 (ASP.NET 設定スキーマ)
メンバーシップ プロバイダーのコレクションにメンバーシップ プロバイダーのインスタンスを追加します。
この要素は、.NET Framework Version 2.0 で追加されました。
<!-- SqlMembershipProvider syntax -->
<add name="string"
type="string"
connectionStringName="string"
applicationName="MyApplication"
commandTimeout
description
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
passwordAttemptWindow="10"
minRequiredPasswordLength
minRequiredNonalphanumericCharacters
passwordStrengthRegularExpression
/>
<!-- ActiveDirectoryMembershipProvider syntax -->
<add
name="string"
type="string"
applicationName
attributeMapUsername="string"
attrbuteMapEmail="string"
attributeMapPasswordQuestion="string"
attributeMapPasswordAnswer="string"
attributeMapFailedPasswordAnswerCount="number"
attributeMapFailedPasswordAnswerTime="interval"
attributeMapFailedPasswordAnswerLockoutTime="interval"
clientSearchTimeout="interval"
serverSearchTimeout
connectionUsername="string"
connectionPassword="string"
connectionProtection="string"
connectionStringName="connection string identifier"
enablePasswordReset="true|false"
enablePasswordRetrieval="true|false"
enableSearchMethods="true|false"
requiresQuestionAndAnswer="true|false"
maxInvalidPasswordAttempts="number"
passwordAttemptWindow="number"
commandTimeout="number"
description="string"
passwordAnswerAttemptLockoutDuration="interval"
minRequiredPasswordLength
minRequiredNonalphanumericCharacters
passwordStregnthRegularExpression="string"
passwordAnswerAttemptLockoutDuration="number"
requiresUniqueEmail="true|false"
/>
属性および要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
属性 |
説明 |
---|---|
applicationName |
省略可能な String 型の属性です。 データ ソースでメンバーシップ データを格納するアプリケーションの名前を指定します。 アプリケーション名を指定すると、複数の ASP.NET アプリケーションで同じデータベースを使用できます。ユーザー名は異なるアプリケーションごとに複製されません。 また、同じアプリケーション名を指定すると、複数の ASP.NET アプリケーションで同じメンバーシップ情報を使用できます。 applicationName 属性を指定しない場合、.NET Framework に含まれるメンバーシップ プロバイダーは、ApplicationName プロパティに対して ApplicationVirtualPath 値を使用します。 この属性は Active プロバイダーのプロバイダーに指定できますが、プロバイダーは値を無視します。 |
attributeMapUsername |
ActiveDirectoryMembershipProvider 属性にだけ適用されます。 省略可能な String 型の属性です。 MembershipUser オブジェクトの UserName プロパティから、ディレクトリ内の UserName 属性へのマップの定義に使用されます。 既定値は userPrincipalName です。 |
attributeMapEmail |
ActiveDirectoryMembershipProvider 属性にだけ適用されます。 省略可能な String 型の属性です。 MembershipUser オブジェクトの Email プロパティから、ディレクトリ内の Email 属性へのマップの定義に使用されます。 既定値は、"mail" です。 |
attributeMapPasswordQuestion |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な String 型の属性です。 MembershipUser オブジェクトの PasswordQuestion プロパティから、ディレクトリ内の属性へのマップの定義に使用されます。 既定値は未定義です。 したがって、管理者はパスワードの質問と解答機能を使用するためには、この属性を明示的に構成する必要があります。 |
attributeMapPasswordAnswer |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な String 型の属性です。 ユーザーのパスワードの解答からディレクトリ内の属性へのマッピングの定義に使用されます。 既定値は未定義です。 したがって、管理者はパスワードの質問と解答機能を使用するためには、この属性を明示的に構成する必要があります。 |
attributeMapFailedPasswordAnswerCount |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な Int32 型の属性です。 失敗したパスワードの解答を追跡するディレクトリ内の属性の定義に使用されます。 既定値は未定義です。 したがって、管理者はパスワードの質問と解答機能を使用するためには、この属性を明示的に構成する必要があります。 |
attributeMapFailedPasswordAnswerTime |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な Interval 型の属性です。 MembershipUser オブジェクトのプロパティから、ディレクトリ内の属性へのマップの定義に使用されます。 既定値は未定義です。 したがって、管理者がクラス プロパティに属性を明示的にマップしない場合、そのプロパティに関連付けられた機能は値の設定または取得をしません。 この場合、既定の動作がプロバイダーで実装されます。 |
attributeMapFailedPasswordAnswerLockoutTime |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な Interval 型の属性です。 無効なパスワードの解答が多すぎるためにユーザー アカウントがロックアウトされた場合に格納するディレクトリの属性の定義に使用されます。 既定値は未定義です。 したがって、管理者はパスワードの質問と解答機能を使用するためには、この属性を明示的に構成する必要があります。 |
clientSearchTimeout |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な Int32 型の属性です。 管理者が、クライアント側で LDAP クエリ タイムアウトを指定できるようにします。 クライアントおよびサーバーの検索タイムアウトが、ディレクトリ内のクエリ ページングと連動する方法の詳細については、Active Directory のプロバイダーの検索方法に関するドキュメントを参照してください。 |
serverSearchTimeout |
管理者が、サーバー側で LDAP クエリ タイムアウトを指定できるようにします。 クライアントおよびサーバーの検索タイムアウトが、ディレクトリ内のクエリ ページングと連動する方法の詳細については、Active Directory のプロバイダーの検索方法に関するドキュメントを参照してください。 |
commandTimeout |
SQL プロバイダーにだけ適用されます。 省略可能な Int32 型の属性です。 メンバーシップ データ ソースに対して実行されたコマンドがタイムアウトするまでの時間を秒単位で指定します。 このタイムアウト値は、SQL プロバイダーが SqlCommand オブジェクトを作成するときに使用します。 この属性は、ASP.NET 構成では既定で設定されていません。 そのため、ADO.NET の既定値である 30 秒が使用されます。 この属性が設定されると、SQL プロバイダーは、データベースに対して実行されるすべての SQL コマンドについて、構成されたタイムアウト値を使用します。 既定値は 30 です (ADO.NET の既定値)。 |
connectionStringName |
必須の String 属性です。 <connectionStrings> 要素に定義されている接続文字列の名前を指定します。 指定した接続文字列は、追加されるプロバイダーによって使用されます。 |
connectionUsername |
ActiveDirectoryMembershipProvider 属性にだけ適用されます。 省略可能な String 型の属性です。 ディレクトリに接続する際に認証目的で使用されるユーザー名を定義します。 この属性を指定する場合は、connectionPassword 属性も指定する必要があります。 ディレクトリに接続する際に、有効なプロセス アカウントまたはアプリケーションの偽装資格情報の代わりに使用されます。 |
connectionPassword |
ActiveDirectoryMembershipProvider 属性にだけ適用されます。 省略可能な String 型の属性です。 ディレクトリに接続する際に認証目的で使用されるパスワードを定義します。 この属性を指定する場合は、connectionUsername 属性も指定する必要があります。 ディレクトリに接続する際に、有効なプロセス アカウントまたはアプリケーションの偽装資格情報の代わりに使用されます。 |
connectionProtection |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な String 型の属性です。 ディレクトリへの接続を開く際に使用する、トランスポート層のセキュリティ オプションを定義します。 この属性には、Secure または None を指定できます。 Secure の場合、プロバイダーは接続先ディレクトリの種類で使用可能な最高レベルの接続セキュリティの使用を自動的に試みます。 保護は、次の方法および順序で決定されます。
None の場合、明示的な資格情報が必要です。 connectionUsername および connectionPassword 属性が指定されていない場合、接続保護に None を使用する場合は、プロセス資格情報を使用する既定値がサポートされないことを示す ProviderException 例外がスローされます。 |
description |
省略可能な String 型の属性です。 メンバーシップ プロバイダーのインスタンスの説明を指定します。 |
enablePasswordRetrieval |
省略可能な Boolean 型の属性です。 メンバーシップ プロバイダーのインスタンスがパスワードの取得をサポートするかどうかを指定します。 メンバーシップ プロバイダーのインスタンスがパスワードの取得をサポートする場合は true になります。 SQL および Active Directory プロバイダーの場合、どちらも既定値は false になります。 ActiveDirectoryMembershipProvider では、構成ファイルで enablePasswordRetrieval を true に設定することはできません。 このプロバイダーは、パスワードの取得を許可しません。 |
enablePasswordReset |
省略可能な Boolean 型の属性です。 メンバーシップ プロバイダーのインスタンスがパスワードのリセットをサポートするかどうかを指定します。 メンバーシップ プロバイダーのインスタンスがパスワードのリセットをサポートする場合は true になります。 既定値は、SQL プロバイダーの場合は true、Active Directory のプロバイダーの場合は false になります。 |
enableSearchMethods |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な Boolean 型の属性です。 検索指向の ActiveDirectoryMembershipProvider メソッドを使用可能にするかどうかを指定します。 true の場合、検索指向の ActiveDirectoryMembershipProvider メソッドは使用可能になります。 既定値は、false です。 |
maxInvalidPasswordAttempts |
省略可能な Int32 型の属性です。 有効でないパスワードの試行およびパスワードの解答の試行が許容される回数を指定します。 有効でない試行の回数が構成値に達した場合、メンバーシップ ユーザーはロックアウトされます。 既定値は、5 です。 . Active Directory のプロバイダーの場合、この属性は有効でないパスワードの解答の試行の回数だけを制御する点に注意してください。 ディレクトリ エンジン自体が、パスワードのロックアウトを処理します。 |
minRequiredNonalphanumericCharacters |
省略可能な Int32 型の属性です。 有効なパスワードに存在している必要のある特殊文字の最小数を指定します。 この属性には、0 より小さい値、128 より大きい値、または minRequiredPasswordLength の値より大きい値を設定できません。 既定値は、1 です。 |
minRequiredPasswordLength |
省略可能な Int32 型の属性です。 パスワードに必要な最小文字数を指定します。 この属性には、0 より小さい値、または 128 (SQL プロバイダーにおけるエンコードされていないパスワードの最大長) より大きい値は指定できません。 既定値は、7 です。 |
name |
必須の String 属性です。 プロバイダーのインスタンスの名前を指定します。 これは、プロバイダー インスタンスを既定のメンバーシップ プロバイダーとして識別するために、membership 要素の defaultProvider 属性に使用される値です。 プロバイダーの name は、Providers コレクション内のプロバイダーにインデックスを付けるためにも使用します。 |
passwordAnswerAttemptLockoutDuration |
ActiveDirectoryMembershipProvider にだけ適用されます。 省略可能な Int32 型の属性です。 無効なパスワードの解答が多すぎる場合にユーザー アカウントがロックアウトされる時間の長さを分単位で指定します。 既定値は、30 分です。 |
passwordAttemptWindow |
省略可能な Int32 型の属性です。 失敗した試行を追跡する時間 (分) です。 別の失敗が発生するたびに、ウィンドウによりリセットされます。 有効でないパスワードの試行およびパスワードの解答の試行が、許容される最大回数発生した場合、メンバーシップ ユーザーはロックアウトされます。 既定値は、10 です。 |
passwordFormat |
SQL プロバイダーにだけ適用されます。 省略可能な String 型の属性です。 メンバーシップ データ ストアにパスワードを格納する形式を示す MembershipPasswordFormat 値の 1 つ。 既定値は、Hashed です。 |
passwordStrengthRegularExpression |
SqlMembershipProvider にだけ適用されます。 省略可能な String 型の属性です。 パスワードの評価に使用される正規表現を指定します。 この属性は、Regex クラスと連動する正規表現にする必要があります。 既定値は、空の文字列 ("") です。 |
requiresQuestionAndAnswer |
省略可能な Boolean 型の属性です。 メンバーシップ プロバイダーのインスタンスが、パスワードのリセットおよびパスワードの取得にパスワードの解答を必要とするかどうかを指定します。 true の場合、メンバーシップ プロバイダーではパスワードのリセットおよびパスワードの取得にパスワードの解答が必要です。 既定値は、SQL プロバイダーの場合は true、Active Directory のプロバイダーの場合は false になります。 |
requiresUniqueEmail |
省略可能な Boolean 型の属性です。 Active Directory を実行しているサーバーに格納される電子メール アドレスを一意にする必要があるかどうかを指定します。 true の場合、メンバーシップ プロバイダーのインスタンスでは一意の電子メール アドレスが必要です。 既定値は、SQL プロバイダーの場合は true、Active Directory のプロバイダーの場合は false になります。 |
type |
必須の String 属性です。 MembershipProvider 抽象基本クラスを継承するカスタム メンバーシップ プロバイダーの型名を指定します。 カスタム メンバーシップ プロバイダーの使用の詳細については、「メンバーシップ プロバイダーの実装」を参照してください。 |
子要素
なし。
親要素
要素 |
説明 |
---|---|
configuration |
共通言語ランタイムおよび .NET Framework アプリケーションで使用されるすべての構成ファイルのルート要素を指定します。 |
system.web |
ASP.NET 構成セクションのルート要素を指定します。 |
membership |
ASP.NET メンバーシップが使用できるようにアプリケーションを構成します。 |
providers |
ASP.NET メンバーシップのメンバーシップ プロバイダーのコレクションを定義します。 |
解説
Active Directory のメンバーシップ プロバイダーの構成の詳細については、ActiveDirectoryMembershipProvider を参照してください。
既定の構成
次の既定の add 要素は、.NET Framework Version 2.0 の Machine.config ファイルで構成されます。
<providers>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression="" />
</providers>
使用例
ユーザー情報を格納および取得する ASP.NET アプリケーションの構成方法を次のコード例に示します。 最初の例は、SQLMembershipProvider を使用するように構成された ASP.NET アプリケーションを示しています。
<membership defaultProvider="SqlProvider"
userIsOnlineTimeWindow="20">
<providers>
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
passwordFormat="Hashed"
applicationName="/" />
</providers>
</membership>
要素情報
構成セクション ハンドラー |
|
構成メンバー |
|
構成できる場所 |
Machine.config ルート レベルの Web.config アプリケーション レベルの Web.config |
要件 |
Microsoft Internet Information Services (IIS) バージョン 5.0、5.1、または 6.0 .NET Framework Version 2.0 Microsoft Visual Studio 2005 |
参照
処理手順
参照
membership の providers 要素 (ASP.NET 設定スキーマ)
system.web 要素 (ASP.NET 設定スキーマ)
membership の providers の remove 要素 (ASP.NET 設定スキーマ)
membership の providers の clear 要素 (ASP.NET 設定スキーマ)
ActiveDirectoryMembershipProvider
概念
ASP.NET Web サーバー コントロールとブラウザーの機能