Najlepszy samouczek Instrukcja ASP.NET Web Pages WebSecurity referencyjny W 2024 r. W tym samouczku możesz dowiedzieć się opis,WebSecurity obiektu - obiekt,WebSecurity Object Reference - metody,dane techniczne,inicjalizacji baza WebSecurity,_AppStart.cshtml,baza WebSecurity,Prosta konfiguracja członkiem,
WebSecurity ASP.NET Web Pages Obiekt zapewnia bezpieczeństwo aplikacji i uwierzytelniania.
Przez obiektu WebSecurity można tworzyć konta użytkowników, logowania i wylogowania użytkownika, zresetować lub zmienić swoje hasło, a kolejne funkcje związane z bezpieczeństwem.
属性 | 描述 |
---|---|
CurrentUserId | 获取当前登录用户的 ID。 |
CurrentUserName | 获取当前登录用户的名称。 |
HasUserId | 如果当前有用户 ID,则返回 true。 |
IsAuthenticated | 如果当前用户是登录的,则返回 true。 |
方法 | 描述 |
---|---|
ChangePassword() | 为指定的用户更改密码。 |
ConfirmAccount() | 使用帐户确认令牌确认帐户。 |
CreateAccount() | 创建一个新的用户帐户。 |
CreateUserAndAccount() | 创建一个新的用户帐户。 |
GeneratePasswordResetToken() | 生成一个密码重置令牌,可以在电子邮件中发送给用户以便用户可以重设密码。 |
GetCreateDate() | 获取指定会员创建的时间。 |
GetPasswordChangeDate() | 获取密码变更的日期和时间。 |
GetUserId() | 根据用户名称获取用户 ID。 |
InitializeDatabaseConnection() | 初始化 WebSecurity 系统(数据库)。 |
IsConfirmed() | 检查用户是否已被确认。如果已确认,则返回 true。(例如,可通过电子邮件进行确认。) |
IsCurrentUser() | 检查当前用户的名称是否与指定用户名匹配。如果匹配,则返回 true。 |
Login() | 设置身份验证令牌,登录用户。 |
Logout() | 移除身份验证令牌,注销用户。 |
RequireAuthenticatedUser() | 如果用户未通过身份验证,则设置 HTTP 状态为 401(未经授权)。 |
RequireRoles() | 如果当前用户不是指定角色的成员,则设置 HTTP 状态为 401(未经授权)。 |
RequireUser() | 如果当前用户不是指定用户名的用户,则设置 HTTP 状态为 401(未经授权)。 |
ResetPassword() | 如果密码重置令牌是有效的,改变用户的密码为新密码。 |
UserExists() | 检查指定的用户是否存在。 |
名称 | 值 |
---|---|
Class | WebMatrix.WebData.WebSecurity |
Namespace | WebMatrix.WebData |
Assembly | WebMatrix.WebData.dll |
Jeśli chcesz korzystać z obiektów WebSecurity w kodzie, należy najpierw utworzyć lub zainicjować bazę WebSecurity.
W swoim katalogu WWW, utwórz plik o nazwie Strona _AppStart.cshtml (jeśli już istnieje, można bezpośrednio edytować stronę).
Skopiuj poniższy kod do pliku:
Powyższy kod będzie działał w każdym miejscu (zastosowanie) rozpoczyna. To inicjuje bazy WebSecurity.
"Użytkownicy" to baza WebSecurity (Users.sdf) Nazwa.
"UserProfile" to nazwa tabeli bazy danych, która zawiera informacje o konfiguracji użytkownika.
"UserId", który zawiera identyfikator użytkownika (klucz podstawowy) nazwę kolumny.
"E-mail" jest nazwą kolumny nazwa użytkownika.
Wreszcie prawdziwy parametr jest wartością logiczną, która wskazuje, czy tabele konfiguracyjne użytkownika i tabel użytkownika nie istnieje, zostanie ona automatycznie utworzyć tabelę. Jeśli nie chcesz, aby automatycznie utworzyć tabelę, należy ustawić parametr na wartość false.
Chociaż prawdą do automatycznego tworzenia tabel w bazie danych, ale baza danych nie zostanie utworzony automatycznie. A więc musi istnieć w bazie danych. |
Stół UserProfile stworzony dla każdego użytkownika, aby zachować zapis, identyfikator użytkownika (klucz podstawowy) i nazwę użytkownika (email):
UserId | |
---|---|
1 | john@johnson.net |
2 | peter@peterson.com |
3 | lars@larson.eut |
Tabela zawiera informacje Członkostwo członkostwa, takich jak, gdy użytkownik jest tworzony, jeśli członek posiada certyfikat certyfikat członkiem Która godzina, i tak dalej.
Jak przedstawiono poniżej (część kolumny nie są wyświetlane)
User Id |
Create Date |
Confirmation Token |
Is Confirmed |
Last Password Failure |
Password | Password Change |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULL | True | NULL | AFNQhWfyplpl | 12.04.2012 16:12:17 |
Uwaga: Jeśli chcesz zobaczyć wszystkie kolumny i samych materiałów, otworzyć bazę danych, spójrz na każdym stole w środku.
Podczas korzystania z obiektów WebSecurity, jeśli witryna nie jest skonfigurowany do korzystania z systemu ASP.NET Web Pages państwa SimpleMembership, może być podana.
W przypadku skonfigurowania serwera dostawcy hostingu i lokalna konfiguracja serwera jest inna, może być również podane. Aby rozwiązać ten problem, należy dodać następujący element w pliku Web.config na stronie internetowej: