必威电竞|足球世界杯竞猜平台

Membership
來源:互聯(lián)網(wǎng)

在ASP.NET應(yīng)用程序中,Membership類用于驗證用戶憑據(jù)并管理用戶設(shè)置(如密碼和電子郵件地址)。Membership類可以獨自使用,或者與FormsAuthentication一起使用以創(chuàng)建一個完整的Web應(yīng)用程序或網(wǎng)站的用戶身份驗證系統(tǒng)。Login控件封裝了Membership類,從而提供一種便捷的用戶驗證機制。

簡介

驗證用戶憑據(jù)并管理用戶設(shè)置。無法繼承此類。

命名空間:System.Web.Security

程序集:System.Web(在 system.web.dll 中)

語法

Visual Basic(聲明)

Public NotInheritable Class Membership

Visual Basic(用法)

可對靜態(tài)類的成員直接進行訪問,無需類的實例。

C#

public static class Membership

C++

public ref class Membership abstract 單一歐洲法案led

J#

public final class Membership

JScript

public final class Membership

功能

Membership 類提供的功能可用于:

創(chuàng)建新用戶。

將成員資格信息(用戶名、密碼、電子郵件地址及支持數(shù)據(jù))存儲在 Microsoft SQL Server 或其他類似的數(shù)據(jù)存儲區(qū)。

對訪問網(wǎng)站的用戶進行身份驗證??梢砸跃幊谭绞綄τ脩暨M行身份驗證,也可以使用 Login 控件創(chuàng)建一個只需很少代碼或無需代碼的完整的身份驗證系統(tǒng)。

管理密碼,包括創(chuàng)建、更改、檢索和重置密碼等等??梢赃x擇配置 ASP.NET 成員資格以要求一個密碼提示問題及其答案來對忘記密碼的用戶的密碼重置和檢索請求進行身份驗證。

雖然 ASP.NET 成員資格是 ASP.NET 中用來進行身份驗證的獨立功能,但它可以與 ASP.NET 角色管理集成來為站點提供授權(quán)服務(wù)。成員資格還可以與 ASP.NET 用戶的 System.Web.Profile 集成,以提供可為各個用戶量身訂做的特定于應(yīng)用程序的自定義實現(xiàn)。有關(guān)詳細信息,請參見 了解角色管理 和 ASP.NET 配置文件屬性概述。

Membership 類依賴于成員資格提供程序與數(shù)據(jù)源通信。.NET Framework 包括一個 SQLMembershipProvider(將用戶信息存儲在 Microsoft SQL Server 數(shù)據(jù)庫中)和一個 ActiveDirectoryMembershipProvider(允許在 Active Directory 或 Active Directory 應(yīng)用程序模式 (ADAM) 服務(wù)器上存儲用戶信息)。還可以實現(xiàn)一個自定義成員資格提供程序與可由 Membership 類使用的其他類似的數(shù)據(jù)源進行通信。自定義成員資格提供程序?qū)⒗^承 MembershipProvider抽象類。有關(guān)更多信息,請參見 實現(xiàn)成員資格提供程序。

默認情況下,ASP.NET 成員資格可支持所有 ASP.NET 應(yīng)用程序。默認成員資格提供程序為 SQLMembershipProvider 并在計算機配置中以名稱 AspNetSqlProvider 指定。SqlMembershipProvider 的默認實例配置為連接到 Microsoft SQL Server 的一個本地實例。

可以通過修改默認設(shè)置將一個非 AspNetSqlProvider 實例的 SqlMembershipProvider 指定為默認提供程序,或使用 Web.config 文件將自定義提供程序的實例指定為 ASP.NET 應(yīng)用程序的默認提供程序??梢允褂?Web.config 文件中 membership 配置節(jié)來為 Web 應(yīng)用程序指定 ASP.NET 成員資格配置。可以使用 membership 節(jié)的 providers 子節(jié)來指定默認提供程序之一以外的成員資格提供程序。例如,下面的 membership 節(jié)從當前應(yīng)用程序配置中移除默認成員資格提供程序并添加一個名為 SQLProvider 的新提供程序,它連接到名為 MySqlServer 的 SQL Server 實例。

type="System.Web.Security.SqlMembershipProvider"

connectionStringName="SqlServices"

enablePasswordRetrieval="false"

enablePasswordReset="true"

requiresQuestionAndAnswer="true"

passwordFormat="Hashed"

applicationName="/" />

Topic Location

演練:使用成員資格和用戶登錄創(chuàng)建網(wǎng)站 (Visual Studio)

示例

下面的代碼示例演示配置為使用 Forms身份驗證和 ASP.NET 成員資格的 ASP.NET 應(yīng)用程序的登錄頁。如果提供的用戶憑據(jù)無效,則會向用戶顯示一條消息。否則,使用 RedirectFromLoginPage 方法將用戶重定向到最初請求的 URL。

注意

ASP.NET 登錄控件(Login、LoginView、LoginStatus、LoginName 和 PasswordRecovery)實際上封裝了提示用戶輸入憑據(jù)及驗證成員資格系統(tǒng)中的憑據(jù)所需的所有邏輯并可以在使用 Membership 類來進行編程檢查的位置使用。

Visual Basic 復(fù)制代碼

<%@ Page Language="VB" %>

<%@ Import Namespace="System.Web.Security" %>

Login

Login

Username:

Password:

Check here if this is not a public computer.

C# 復(fù)制代碼

<%@ Page Language="C#" %>

<%@ Import Namespace="System.Web.Security" %>

Login

Login

Username:

Password:

Check here if this is not a public computer.

安全性

AspNetHostingPermission 用于在宿主環(huán)境中使用 Membership 類。要求值:LinkDemand。權(quán)限值:Minimal。

層次結(jié)構(gòu)

System.Object

System.Web.Security.Membership

線程安全

此類型的任何公共靜態(tài)(Visual Basic 中的 Shared)成員都是線程安全的,但不保證所有實例成員都是線程安全的。

平臺

Windows 98、Windows 2000 SP4、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

參考資料 >

生活家百科家居網(wǎng)