【发布时间】:2017-10-12 19:40:11
【问题描述】:
我已经开始使用 ASP.NET Web 窗体(我是一个完全初学者)开发一个内部网网站,它使用 Windows 身份验证来识别用户,但为了控制对各种页面的访问,我希望根据用户分配角色基于 SQL 表中的数据设置标准(此数据可能每天更改)。
到目前为止,我拥有带有 Windows 身份验证的“开箱即用”ASP.NET Web 表单模板,它与我的(远程)SQL Server 数据库建立了有效连接。
如果这已在其他地方得到解答,我深表歉意,但我似乎无法找到适合我需要的解决方案。
使用一些基本的 IF 逻辑,我将担任以下角色:“Admin”、“Moderator”、“HRA”、“Manager”和“Employee”。
从 SQL 表中查找登录用户的数据(最多 3-4 个字段),设置条件将确定用户的角色如下:
if (UserRole === null) Then
If (ORG_ID === 30001000) Then
UserRole === 'Admin'
else if (ORG_ID === 30001001) Then
UserRole === 'Moderator'
else if (ORG_ID === 30001002) Then
UserRole === 'HRA'
else if (CHIEF === 'Chief') Then
UserRole === 'Manager'
else
UserRole === 'Employee'
End If
End if
我猜这将在每个会话运行一次的 Site.Master 文件中使用,但我不知道这将如何准确工作以及是否需要将任何内容添加到配置文件等中。
在此先感谢,我了解这将如何与 php 一起使用,但 ASP.NET 以及它的工作方式对我来说是全新的。如果有更好的解决方案那就太好了!
还值得注意的是,我网站的某些部分(例如仪表板部分)将允许一些 UserRoles 控制对由 SQL 表控制的仪表板的自定义访问 - 但我可以在未来查看。
【问题讨论】:
标签: asp.net visual-studio c#-4.0 windows-authentication