Keselamatan Halaman Web
ASP.NET Web Pages - WebSecurity Object
Penerangan
WebSecurity Object disediakan oleh ASP . Aplikasi Halaman Web BERSIH.
Dengan objek WebSecurity, anda boleh membuat akaun pengguna, log masuk dan keluar daripada pengguna, menetapkan semula atau menukar kata laluan dan banyak lagi fungsi berkaitan keselamatan.
Manual Rujukan Objek WebSecurity - Properties
属性 | 描述 |
---|---|
CurrentUserId | 获取当前登录用户的 ID。 |
CurrentUserName | 获取当前登录用户的名称。 |
HasUserId | 如果当前有用户 ID,则返回 true。 |
IsAuthenticated | 如果当前用户是登录的,则返回 true。 |
Manual Rujukan Objek WebSecurity - Kaedah
方法 | 描述 |
---|---|
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() | 检查指定的用户是否存在。 |
Data Teknikal
名称 | 值 |
---|---|
Class | WebMatrix.WebData.WebSecurity |
Namespace | WebMatrix.WebData |
Assembly | WebMatrix.WebData.dll |
Memulakan pangkalan data WebSecurity
Jika anda ingin menggunakan objek WebSecurity dalam kod anda, mula-mula anda mesti mencipta atau memulakan pangkalan data WebSecurity.
Dalam direktori akar web anda, buat halaman yang dipanggil _AppStart.cshtml (atau edit halaman terus jika ia sudah wujud).
Salin kod berikut ke dalam fail:
_AppStart.cshtml
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "Id Pengguna", "E-mel", benar);
}
Kod di atas akan dijalankan setiap kali tapak web (aplikasi) bermula. Ia memulakan pangkalan data WebSecurity.
"Pengguna" ialah nama pangkalan data WebSecurity (Users.sdf).
"UserProfile" ialah nama jadual pangkalan data yang mengandungi maklumat profil pengguna.
"UserId" ialah nama lajur yang mengandungi ID pengguna (kunci utama).
"E-mel" ialah nama lajur yang mengandungi nama pengguna.
Parameter terakhir true ialah nilai Boolean, menunjukkan bahawa jika jadual konfigurasi pengguna dan jadual keahlian tidak wujud, jadual akan dibuat secara automatik. Jika anda tidak mahu mencipta jadual secara automatik, anda harus menetapkan parameter kepada false.
![]() | Walaupun
🎜> bermaksud mencipta pangkalan data jadual secara automatik, tetapi pangkalan data tidak akan dibuat secara automatik. Jadi pangkalan data mesti wujud. |
---|
Pangkalan data WebSecurity
UserId | |
---|---|
1 | john@johnson.net |
2 | peter@peterson.com |
3 | lars@larson.eut |
jadual mencipta dan menyimpan rekod untuk setiap pengguna. ID Pengguna (kunci utama) dan nama pengguna (e-mel):
Keahlian
Jadual mengandungi maklumat ahli, seperti apabila pengguna dicipta, sama ada ahli telah disahkan, dan apakah ahli itu Apabila diperakui, dsb.User Id | Create Date | Confirmation Token | Is Confirmed | Last Password Failure | Password | Password Change |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULL | True | NULL | AFNQhWfy.... | 12.04.2012 16:12:17 |
User<🎜>Id th> | Buat<🎜>Tarikh | Pengesahan<🎜>Token | Telah<🎜>Disahkan | Terakhir<🎜>Kata Laluan<🎜 >Kegagalan | Kata Laluan | Kata Laluan<🎜>Tukar |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12 :17 | NULL | Benar | NULL | AFNQhWfy.... | 12.04.2012 16: 12: 17 |
Nota: Jika anda ingin melihat semua lajur dan kandungan, sila buka pangkalan data dan lihat setiap jadual di dalamnya.
Konfigurasi keahlian mudah
Apabila anda menggunakan objek WebSecurity, jika tapak anda tidak dikonfigurasikan untuk menggunakan sistem keahlian Halaman Web ASP.NET SimpleMembership, ia boleh Laporkan ralat.
Ralat juga mungkin berlaku jika pelayan penyedia pengehosan dikonfigurasikan secara berbeza daripada pelayan tempatan anda. Untuk menyelesaikan isu ini, tambahkan elemen berikut pada fail Web.config tapak web anda:
<add key="enableSimpleMembership" value="true" /> 🎜></appSettings>