SQL 数据库驱动的 C# 和 ASP.Net 基于角色的身份验证控制
Posted
技术标签:
【中文标题】SQL 数据库驱动的 C# 和 ASP.Net 基于角色的身份验证控制【英文标题】:SQL Database Powered C# & ASP.Net Role based authentication control 【发布时间】:2011-06-22 20:23:17 【问题描述】:我想要一个 ASP.net 和 C# 身份验证/登录控件,它引用包含两个表的 SQL 服务器数据库:用户和角色。身份验证成功后,我希望将用户重定向到网站上的特定页面,该页面由存储在数据库中的角色确定。
例如,角色为 “系统管理员” 的用户将被定向到站点上系统管理员文件夹中的受保护主页,其中角色为 “系统用户” " 将被重定向到受保护的系统用户文件夹中各自的主页。
我设法在 MSDN 库上找到了一些东西,但这会将所有成功的登录重定向到“default.aspx”。
有没有办法:
-
根据我的具体要求更改此设置的方法?
我还没有找到可以提供一些关于如何实现它的指针的资源?
【问题讨论】:
【参考方案1】:您总是可以有一个代理登录成功页面,在成功登录后获取角色并重定向到后续页面。
default.aspx 登录成功的代码。
if(Context.User.IsInRole("System Admin"))
//redirect to page.
【讨论】:
【参考方案2】:您可以使用自 2.0 版以来 ASP.NET 中存在的内置 SqlMembershipProvider 和 SqlRoleProvider 轻松实现目标。
真正的问题是确定用户在拥有多个用户时应该扮演什么“角色”。
【讨论】:
以上是关于SQL 数据库驱动的 C# 和 ASP.Net 基于角色的身份验证控制的主要内容,如果未能解决你的问题,请参考以下文章
C# asp.net 删除三天前的所有数据 SQL语句怎么写