ASP.NET 4.0为自定义成员资格提供程序设置角色

时间:2013-08-17 12:26:53

标签: c# asp.net vb.net

我正在使用ASP.NET 4(Visual Web Developer 2010 Express)构建网站。 由于我有我的ms数据库,我想在我的网站上显示数据。 有一些个人信息,所以我想为用户设置一个登录系统。

我按照教程编写了一个简单的AccessMembershipProvider。 http://www.devx.com/asp/Article/29256/0/page/3

现在我想添加角色(角色信息存储在数据库中),并确定是允许还是拒绝用户访问特定网页。

我该如何实现? (我使用VB但我也理解C#代码)

谢谢大家。

编辑: 我有一个更容易的想法。 当用户尝试访问特定页面时,服务器从数据库中检索其角色信息。 当页面加载时,服务器确定是否允许她进入。 如果允许,页面将继续显示。否则,将显示错误消息并将用户重定向到另一页。 这种方法有用吗?我想知道这将导致严重的错误或安全风险...... 请帮忙

1 个答案:

答案 0 :(得分:1)

在您的会员区域(或您的aspx)后面的主代码中,您可以检查当前用户

if(User.IsInRole("RoleYouWouldCheckFor")) 
{
// user seems to be member of appropriate group, let him in
} 

或者,如果在MVC环境中工作,您可以用以下方法装饰您的控制器:

[Authorize(Roles = "RoleYouWouldCheckFor")]

要向角色添加/删除用户,请尝试以下操作:

Roles.AddUserToRole(username, roleName); 
Roles.RemoveUserFromRole(username, roleName);