【问题标题】:SQL Database Powered C# & ASP.Net Role based authentication controlSQL 数据库驱动的 C# 和 ASP.Net 基于角色的身份验证控制
【发布时间】:2011-06-22 20:23:17
【问题描述】:

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

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

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

有没有办法:

  1. 根据我的具体要求更改此设置的方法?
  2. 我还没有找到可以提供一些关于如何实现它的指针的资源?

【问题讨论】:

    标签: c# asp.net authentication ssms user-roles


    【解决方案1】:

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

    default.aspx 登录成功的代码。

    if(Context.User.IsInRole("System Admin")){
        //redirect to page.
    }
    

    【讨论】:

      【解决方案2】:

      您可以使用自 2.0 版以来 ASP.NET 中存在的内置 SqlMembershipProvider 和 SqlRoleProvider 轻松实现目标。

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

      【讨论】:

        猜你喜欢
        • 2016-03-07
        • 2018-09-06
        • 2016-01-03
        • 1970-01-01
        • 2020-06-08
        • 2020-05-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多