網站管理工具提供者索引標籤
更新:2007 年 11 月
使用網站管理工具的 [提供者] 索引標籤,以管理 ASP.NET 如何為應用程式功能 (例如使用者帳戶、角色和其他設定) 儲存資料。
ASP.NET 使用提供者類別 (Class) 為各種功能 (例如,成員資格和角色管理) 管理資料儲存。提供者類別是公開 (Expose) 特定之 ASP.NET 功能 (例如,管理成員資格中的使用者帳戶) 的元件。這些應用程式功能中的每一項都需要進行資料儲存。雖然每個提供者類別都執行相同的應用程式功能,但是每個提供者類別都可以不同方式儲存資料。例如,ASP.NET 成員資格的不同提供者類別可能會以下列不同方式儲存使用者帳戶資訊:
在 Microsoft SQL Server 資料庫中。
在 Microsoft Windows Active Directory 目錄服務中。
在自訂使用者資料庫中。
每個提供者類別仍會執行相同的核心工作集以管理使用者帳戶,而您也會以相同的方式與應用程式中的提供者類別互動。
在網站管理工具中設定提供者
網站管理工具可讓您為應用程式功能 (例如,成員資格和角色) 使用不同的提供者類別。ASP.NET 為每種類型的應用程式功能安裝了數個提供者類別。例如,ASP.NET 具有一個將資訊儲存在 SQL Server 資料庫 (AspNetSqlMembershipProvider) 中之成員資格的提供者類別,還有另一個將成員資格資訊儲存在 Active Directory 中之成員資格的提供者類別。
管理提供者設定
您可以使用網站管理工具變更和測試網站的提供者。您的應用程式可以為應用程式功能使用單一提供者,可以使用數個不同的提供者。
根據預設,網站管理工具會為所有應用程式功能使用 AspNetSqlProvider 提供者。
使用網站管理工具以下列方式管理網站的提供者:
如果您想要使用角色授權的本機 Windows 群組,請從預設 AspNetSqlRoleProvider 提供者變更為替代 AspNetWindowsTokenRoleProvider 提供者。
指定是為所有應用程式功能使用相同提供者,還是為每項應用程式功能使用不同提供者。通常,只有在您要精確地控制資訊的儲存位置,或必須只為一個功能 (例如,角色) 使用不同提供者時,才會選取個別提供者。
選取單一提供者與不同的提供者
您可以將網站設定為所有應用程式功能都使用相同的提供者。在這種情況下,成員資格和角色等的所有資料都儲存在單一資料存放區 (通常是單一資料庫)。或者,您也可以為每項應用程式功能選取不同的提供者。
在網站管理工具中的 [提供者] 索引標籤上,您首先要選擇是為所有功能使用相同的提供者,還是為每項應用程式功能分別選取提供者。您可從下列選項中選擇:
若要為所有應用程式功能指定單一提供者,請按一下 [為所有網站管理資料選取單一提供者]。
若要為特定應用程式功能指定提供者,請按一下 [為每項功能選取不同的提供者 (進階)],然後再為每項應用程式功能選取提供者。
設定 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> 區段中。
下列程式碼為 Web.config 檔,指定 AspNetWindowsTokenRoleProvider 提供者將用於角色管理以後,由網站管理工具將產生該檔案。
<?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 組態設定中的下列區段: