欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ASP.NET Web Pages - WebSecurity 對象

描述

WebSecurity 對象提供為 ASP.NET Web Pages 應(yīng)用程序提供安全和認(rèn)證。

通過 WebSecurity 對象,您能夠創(chuàng)建用戶賬戶、登錄和注銷,重置或更改密碼等等。

WebSecurity 對象參考手冊 - 屬性

屬性 描述
CurrentUserId 獲取當(dāng)前用戶的 ID。
CurrentUserName 獲取當(dāng)前用戶的名稱。
HasUserId 獲取指示當(dāng)前用戶是否具有用戶 ID 的值。如果是,返回 true。
IsAuthenticated 獲取當(dāng)前用戶的身份驗證狀態(tài)。

WebSecurity 對象參考手冊 - 方法

屬性 描述
ChangePassword() 更改用戶的密碼。
ConfirmAccount() 確認(rèn)帳戶有效并激活該帳戶。
CreateAccount() 創(chuàng)建新的用戶帳戶。
CreateUserAndAccount() 創(chuàng)建新的用戶帳戶。
GeneratePasswordResetToken() 生成可以通過電子郵件發(fā)送給用戶的密碼重置令牌。
GetCreateDate() 返回創(chuàng)建指定成員資格帳戶的日期和時間。
GetPasswordChangeDate() 返回最近更改指定成員資格帳戶密碼的日期和時間。
GetPasswordFailures
SinceLastSuccess()
返回自上次成功登錄或創(chuàng)建成員資格帳戶以來錯誤輸入密碼的次數(shù)。
GetUserId() 基于指定用戶名返回用戶 ID。
GetUserIdFrom
PasswordResetToken ()
從密碼重置令牌中返回用戶 ID。
InitializeDatabaseConnection() 通過連接到包含用戶信息的數(shù)據(jù)庫來初始化成員資格系統(tǒng)。
IsAccountLockedOut() 指示指定的成員資格帳戶是否因為密碼嘗試失敗次數(shù)太多而被鎖定。
IsConfirmed() 返回一個值,指示用戶是否已經(jīng)過確認(rèn)的值。
IsCurrentUser() 返回一個值,指示已登錄用戶的用戶名是否與指定用戶名匹配的值。
Login() 登錄用戶。
Logout() 注銷用戶。
RequireAuthenticatedUser() 如果用戶未經(jīng)過身份驗證,請將 HTTP 狀態(tài)設(shè)置為 401(未經(jīng)授權(quán))。
RequireRoles() 如果當(dāng)前用戶不屬于指定的角色,請將 HTTP 狀態(tài)代碼設(shè)置為 401。
RequireUser() 如果當(dāng)前用戶不是指定用戶,請將 HTTP 狀態(tài)設(shè)置為 401。
ResetPassword() 通過使用密碼重置令牌來重置密碼。
UserExists() 檢查用戶是否存在。

技術(shù)數(shù)據(jù)

名稱
Class WebMatrix.WebData.WebSecurity
Namespace WebMatrix.WebData
Assembly WebMatrix.WebData.dll

初始化 WebSecurity 數(shù)據(jù)庫

在代碼中使用 WebSecurity 對象之前,必須創(chuàng)建或初始化 WebSecurity 數(shù)據(jù)庫。

在 web 更目錄中,創(chuàng)建或編輯 _AppStart.cshtml 頁面。

在該文件中寫入以下代碼:

_AppStart.cshtml

@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", 
true);
}

網(wǎng)站每次啟動時都會運行以上代碼。它會對 WebSecurity 數(shù)據(jù)庫進(jìn)行初始化。

"Users" 是 WebSecurity 數(shù)據(jù)庫的名稱。(Users.sdf)

"UserProfile" 是包含用戶配置信息的數(shù)據(jù)庫表的名稱。

"UserId" 包含用戶 ID 的列的名稱(主鍵)。

"Email" 是包含用戶名稱的列名。

最后一個參數(shù) true 是一個邏輯值,指示應(yīng)創(chuàng)建用戶配置文件表和成員資格表(如果它們不存在),否則 false。

提示:盡管 true 指示自動創(chuàng)建數(shù)據(jù)庫表,但數(shù)據(jù)庫本身不會被自動創(chuàng)建。它必須存在。

WebSecurity 數(shù)據(jù)庫

UserProfile 表中的每條記錄代表一個用戶,其中包括用戶 ID (主鍵)和用戶名稱(email):

UserId Email
1 john@johnson.net
2 peter@peterson.com
3 lars@larson.eut

Membership 表包含成員資格信息,比如用戶何時創(chuàng)建以及是否(以及何時)確認(rèn)成員資格。

類似這樣(某些列未列出):

UserId 創(chuàng)建日期 確認(rèn)
令牌
是否
確認(rèn)
最后的
密碼錯誤
密碼 密碼更改
1 12.04.2012 16:12:17 NULL True NULL AFNQhWfy.... 12.04.2012 16:12:17

注釋:如果您希望看到所有列和所有內(nèi)容,請通過 WebMatrix 打開數(shù)據(jù)庫,然后查看每張表。

簡單的成員資格配置

如果您的站點未配置為使用 ASP.NET Web Pages 成員資格系統(tǒng) SimpleMembership,那么可能會在使用 WebSecurity 對象時出現(xiàn)錯誤。

如果主機(jī)提供商的配置與您的本地服務(wù)器不同,就會發(fā)生錯誤。為了解決這個問題,請在站點的 Web.config 文件中添加以下元素:

<appSettings> 
<add key="enableSimpleMembership" value="true" /> 
</appSettings>