3

我想要一个 ASP.net 和 C# 身份验证/登录控件,它引用包含两个表的 SQL 服务器数据库:用户和角色。身份验证成功后,我希望将用户重定向到网站上的特定页面,该页面由存储在数据库中的角色确定。

例如,具有“系统管理员”角色的用户将被定向到站点上系统管理员文件夹中的受保护主页,而“系统用户”角色将被重定向到受保护系统中的各自主页用户文件夹。

我设法在 MSDN 库上找到了一些东西,但这会将所有成功的登录重定向到“default.aspx”。

有没有办法:

  1. 一种将其更改为我的特定要求的方法?
  2. 我还没有找到可以提供一些关于如何实现它的指针的资源?
4

2 回答 2

1

从 2.0 版开始,您可以使用 ASP.NET 中存在的内置 SqlMembershipProvider 和 SqlRoleProvider 轻松到达那里。

真正的问题是确定用户在拥有多个用户时应该扮演什么“角色”。

于 2011-02-07T16:15:06.580 回答
0

您始终可以拥有一个代理登录成功页面,该页面在成功登录后获取角色并重定向到后续页面。

成功的 default.aspx 登录背后的代码。

if(Context.User.IsInRole("System Admin")){
    //redirect to page.
}
于 2011-02-07T16:16:37.707 回答