一、與session的不同點(diǎn)
Membership 一般指用微軟的aspnetdb數(shù)據(jù)庫(kù)來(lái)進(jìn)行身份認(rèn)證
Session是指網(wǎng)站用戶的會(huì)話信息
二、Membership 類提供的功能可用于:
1.創(chuàng)建新用戶。
2.將成員資格信息(用戶名、密碼、電子郵件地址及支持?jǐn)?shù)據(jù))存儲(chǔ)在 Microsoft SQL Server 或其他類似的數(shù)據(jù)存儲(chǔ)區(qū)。
3.對(duì)訪問(wèn)網(wǎng)站的用戶進(jìn)行身份驗(yàn)證。可以以編程方式對(duì)用戶進(jìn)行身份驗(yàn)證,也可以使用 Login 控件創(chuàng)建一個(gè)只需很少代碼或無(wú)需代碼的完整的身份驗(yàn)證系統(tǒng)。
4.管理密碼,包括創(chuàng)建、更改、檢索和重置密碼等等。可以選擇配置 ASP.NET 成員資格以要求一個(gè)密碼提示問(wèn)題及其答案來(lái)對(duì)忘記密碼的用戶的密碼重置和檢索請(qǐng)求進(jìn)行身份驗(yàn)證。
雖然 ASP.NET 成員資格是 ASP.NET 中用來(lái)進(jìn)行身份驗(yàn)證的獨(dú)立功能,但它可以與 ASP.NET 角色管理集成來(lái)為站點(diǎn)提供授權(quán)服務(wù)。成員資格還可以與 ASP.NET 用戶的 System.Web.Profile 集成,以提供可為各個(gè)用戶量身訂做的特定于應(yīng)用程序的自定義實(shí)現(xiàn)。有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn) 了解角色管理 和 ASP.NET 配置文件屬性概述。
Membership 類依賴于成員資格提供程序與數(shù)據(jù)源通信。.NET Framework 包括一個(gè) SqlMembershipProvider(將用戶信息存儲(chǔ)在 Microsoft SQL Server 數(shù)據(jù)庫(kù)中)和一個(gè) ActiveDirectoryMembershipProvider(允許在 Active Directory 或 Active Directory 應(yīng)用程序模式 (ADAM) 服務(wù)器上存儲(chǔ)用戶信息)。還可以實(shí)現(xiàn)一個(gè)自定義成員資格提供程序與可由 Membership 類使用的其他類似的數(shù)據(jù)源進(jìn)行通信。自定義成員資格提供程序?qū)⒗^承 MembershipProvider 抽象類。有關(guān)更多信息,請(qǐng)參見(jiàn) 實(shí)現(xiàn)成員資格提供程序。
默認(rèn)情況下,ASP.NET 成員資格可支持所有 ASP.NET 應(yīng)用程序。默認(rèn)成員資格提供程序?yàn)?SqlMembershipProvider 并在計(jì)算機(jī)配置中以名稱 AspNetSqlProvider 指定。SqlMembershipProvider 的默認(rèn)實(shí)例配置為連接到 Microsoft SQL Server 的一個(gè)本地實(shí)例。
可以通過(guò)修改默認(rèn)設(shè)置將一個(gè)非 AspNetSqlProvider 實(shí)例的 SqlMembershipProvider 指定為默認(rèn)提供程序,或使用 Web.config 文件將自定義提供程序的實(shí)例指定為 ASP.NET 應(yīng)用程序的默認(rèn)提供程序。可以使用 Web.config 文件中 membership 配置節(jié)來(lái)為 Web 應(yīng)用程序指定 ASP.NET 成員資格配置。可以使用 membership 節(jié)的 providers 子節(jié)來(lái)指定默認(rèn)提供程序之一以外的成員資格提供程序。例如,下面的 membership 節(jié)從當(dāng)前應(yīng)用程序配置中移除默認(rèn)成員資格提供程序并添加一個(gè)名為 SqlProvider 的新提供程序,它連接到名為 MySqlServer 的 SQL Server 實(shí)例。
復(fù)制代碼 代碼如下:
configuration>
connectionStrings>
add name="SqlServices" connectionString="Data Source=MySqlServer;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
/connectionStrings>
system.web>
membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
providers>
remove name="AspNetSqlProvider" />
add name="SqlProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="SqlServices" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" passwordFormat="Hashed" applicationName="/" />
/providers>
/membership>
/system.web>
/configuration>
在 ASP.NET 應(yīng)用程序中,Membership 類用于驗(yàn)證用戶憑據(jù)并管理用戶設(shè)置(如密碼和電子郵件地址)。Membership 類可以獨(dú)自使用,或者與 FormsAuthentication 一起使用以創(chuàng)建一個(gè)完整的 Web 應(yīng)用程序或網(wǎng)站的用戶身份驗(yàn)證系統(tǒng)。Login 控件封裝了 Membership 類,從而提供一種便捷的用戶驗(yàn)證機(jī)制。
您可能感興趣的文章:- asp.net membership 密碼重設(shè)
- asp.net 權(quán)限管理分析
- asp.net Forms身份驗(yàn)證和基于角色的權(quán)限訪問(wèn)
- 實(shí)例說(shuō)明asp.net中的簡(jiǎn)單角色權(quán)限控制
- asp.net 基于forms驗(yàn)證的目錄角色權(quán)限的實(shí)現(xiàn)
- 獲取創(chuàng)建Membership的數(shù)據(jù)庫(kù)創(chuàng)建腳本
- 一個(gè)基于Asp.Net MVC的權(quán)限方案
- asp.net+sqlserver實(shí)現(xiàn)的簡(jiǎn)單高效的權(quán)限設(shè)計(jì)示例
- asp.net BasePage類+Session通用用戶登錄權(quán)限控制
- Asp.net Mvc 身份驗(yàn)證、異常處理、權(quán)限驗(yàn)證(攔截器)實(shí)現(xiàn)代碼
- ASP.NET MVC 中實(shí)現(xiàn)基于角色的權(quán)限控制的處理方法
- ASP.NET通用權(quán)限驗(yàn)證的實(shí)現(xiàn)代碼思路