常用方法:
1. CreateAccount 方法:
- WebSecurity.CreateAccount(username, password) 用于创建新用户账户。
- 示例:WebSecurity.CreateAccount("john", "password123")
2. Login 方法:
- WebSecurity.Login(username, password, persistCookie) 用于用户登录。
- 示例:WebSecurity.Login("john", "password123", persistCookie: false)
3. Logout 方法:
- WebSecurity.Logout() 用于用户注销。
- 示例:WebSecurity.Logout()
4. ChangePassword 方法:
- WebSecurity.ChangePassword(username, oldPassword, newPassword) 用于更改用户密码。
- 示例:WebSecurity.ChangePassword("john", "password123", "newpassword456")
5. IsAuthenticated 属性:
- WebSecurity.IsAuthenticated 用于检查用户是否已通过身份验证。
- 示例:if (WebSecurity.IsAuthenticated) { /* 已登录 */ }
6. CurrentUser 属性:
- WebSecurity.CurrentUser 提供对当前已登录用户的信息的访问。
- 示例:var username = WebSecurity.CurrentUser
7. GetUserId 和 GetUserName 方法:
- WebSecurity.GetUserId(username) 返回给定用户名的用户 ID。
- WebSecurity.GetUserName(userId) 返回给定用户 ID 的用户名。
- 示例:var userId = WebSecurity.GetUserId("john")
WebSecurity 配置:
可以在 Web.config 文件中配置 WebSecurity 的一些设置,如:
<appSettings>
<add key="enableSimpleMembership" value="false" />
<add key="autoFormsAuthentication" value="false" />
<add key="enableWebSecurity" value="true" />
</appSettings>
- enableSimpleMembership:指定是否启用简单成员资格提供程序。
- autoFormsAuthentication:指定是否自动配置表单身份验证。
- enableWebSecurity:指定是否启用 WebSecurity 功能。
备注:
- 在使用 WebSecurity 之前,确保你的应用程序已启用成员资格系统。可以通过 WebSecurity.InitializeDatabaseConnection 方法初始化成员资格数据库连接。
WebSecurity.InitializeDatabaseConnection("YourConnectionString", "UserProfile", "UserId", "UserName", autoCreateTables: true);
- 使用 WebSecurity 时,可以使用其他 ASP.NET Web Pages 功能,如 Roles 类,来处理角色和授权。
以上只是 WebSecurity 类的一些基本用法和配置。对于更详细和全面的信息,请查阅[官方文档](https://learn.microsoft.com/en-us/aspnet/web-pages/overview/security)。
转载请注明出处:http://www.pingtaimeng.com/article/detail/6544/ASP.NET