Web サイト管理ツールの [プロバイダ] タブ
更新 : 2007 年 11 月
Web サイト管理ツールの [プロバイダ] タブを使用して、アプリケーション機能のデータ (ユーザー アカウント、ロール、その他の設定など) を ASP.NET により保存する方法を管理します。
ASP.NET は、メンバシップやロール管理などのさまざまな機能のデータ ストレージを、プロバイダ クラスを使用して管理します。プロバイダ クラスとは、メンバシップのユーザー アカウントの管理など、ASP.NET の特定の機能を公開するコンポーネントです。アプリケーションのこれらの各機能は、データ ストレージを要求します。各プロバイダ クラスは同じアプリケーション機能を実行しますが、プロバイダ クラスごとにデータの保存方式は異なります。たとえば、ASP.NET メンバシップのそれぞれのプロバイダ クラスが、次のような異なる方法でユーザー アカウント情報を保存します。
Microsoft SQL Server データベースを使用
Microsoft Windows Active Directory ディレクトリ サービスを使用
カスタムのユーザー データベースを使用
これらのプロバイダ クラスがユーザー アカウントの管理のために実行する中核的なタスクは同じであり、アプリケーションでプロバイダ クラスと対話する方法も同じです。
Web サイト管理ツールのプロバイダの構成
Web サイト管理ツールを使用すると、メンバシップやロールなどのアプリケーションの機能ごとに異なるプロバイダ クラスを使用できます。ASP.NET のインストール時には、アプリケーション機能の種類ごとに複数のプロバイダ クラスがインストールされます。たとえば、ASP.NET には、SQL Server データベース内の情報を格納する、メンバシップのプロバイダ クラス (AspNetSqlMembershipProvider) があり、また Active Directory のメンバシップ情報を格納する別のプロバイダ クラスもあります。
プロバイダ設定の管理
Web サイト管理ツールを使用して、Web サイトのプロバイダを変更しテストできます。アプリケーションでは、アプリケーションの機能に対して単一のプロバイダを使用することも、複数の異なるプロバイダを使用することもできます。
既定では、Web サイト管理ツールはすべてのアプリケーション機能に対して AspNetSqlProvider プロバイダを使用します。
Web サイト管理ツールを使用して、Web サイトのプロバイダを次の方法で管理します。
ロール承認にローカルの Windows グループを使用したい場合は、既定の AspNetSqlRoleProvider プロバイダから代わりの AspNetWindowsTokenRoleProvider プロバイダに変更します。
すべてのアプリケーション機能に同じプロバイダを使用するか、アプリケーション機能ごとに異なるプロバイダを使用するかを指定します。一般に、個別のプロバイダを選択するのは、情報が格納される場所を正確に制御する場合、またはロールなどの 1 つの機能についてのみ異なるプロバイダを使用する必要がある場合です。
単一プロバイダと複数プロバイダの選択
すべてのアプリケーション機能に同じプロバイダを使用するように Web サイトを構成できます。この場合、メンバシップやロールなどのすべてのデータは、単一のデータ ストア (通常は単一のデータベース) に格納されます。または、アプリケーションの機能ごとに異なるプロバイダを選択することもできます。
Web サイト管理ツールの [プロバイダ] タブで、まず、すべての機能に同じプロバイダを使用するか、アプリケーション機能ごとに個別にプロバイダを指定するかを選択します。次のオプションから選択できます。
すべてのアプリケーション機能に単一のプロバイダを指定するには、[すべてのサイト管理データに対して 1 つのプロバイダを選択します。] をオンにします。
アプリケーション機能ごとにプロバイダを指定するには、[各機能に対して異なるプロバイダを選択します。(高度なオプション)] をオンにし、アプリケーション機能ごとにプロバイダを選択します。
SQL Server プロバイダの構成
SQL Server プロバイダを使用して SQL Server データベースにアプリケーション機能のデータを格納する場合は、まず、適切なデータベースを作成して SQL Server を構成する必要があります。ASP.NET には、このタスクを実行する aspnet_regsql.exe というコマンド ライン ユーティリティが含まれています。
aspnet_regsql.exe 実行可能ファイルは、Web サーバーの WINDOWS\Microsoft.NET\Framework\versionNumber フォルダにあります。aspnet_regsql.exe ユーティリティは、SQL Server データベースを作成したり、既存のデータベースにオプションを追加または削除したりするために使用します。
コマンド ライン引数を指定せずに aspnet_regsql.exe 実行可能ファイルを実行すると、ウィザードが起動します。これにより、SQL Server の接続情報を指定し、サポートされているすべての機能についてデータベース要素をインストールまたは削除できます。また、aspnet_regsql.exe 実行可能ファイルをコマンド ライン ユーティリティとして使用し、個々の機能に対するデータベース要素を構成できます。
aspnet_regsql.exe のウィザードを実行するには、次の例に示すように、コマンド ライン引数を指定せずに aspnet_regsql.exe 実行可能ファイルを実行します。
[%system root%]\Microsoft.NET\Framework\versionNumber\aspnet_regsql.exe
aspnet_regsql.exe ユーティリティで使用できる追加のオプションをオンライン ヘルプで確認するには、/? オプションを使用します。
内部の動作
[プロバイダ] タブは、アプリケーションの Web.config ファイルに格納されている構成設定を管理します。特に、[プロバイダ] タブを通じて管理される設定は、構成ファイルの <membership> セクションと <roleManager> セクション内にあります。
次のコードは、ロール管理に AspNetWindowsTokenRoleProvider プロバイダを使用することを指定した後に、Web サイト管理ツールで生成される Web.config ファイルです。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<membership defaultProvider="AspNetSqlMembershipProvider" />
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider" />
<authentication mode="Forms" />
</system.web>
</configuration>
詳細情報
詳細については、.NET Framework クラス リファレンスおよび「ASP.NET 構成設定」の次のセクションを参照してください。