Asp.Net使用Active Directory中的安全组进行基于角色的身份验证
-
03-07-2019 - |
题
我正在尝试做一些简单的事情(我想) - 使用我们域中的Active Directory组使用基于角色的安全保护我的应用程序。
具体来说,我需要显示/隐藏页面上的项目,具体取决于当前登录的用户是否是Active Directory中domain\groupA
的一部分。出于某种原因,很难找到有关使用Active Directory的信息。我似乎发现的所有内容都详细介绍了使用角色使用基于表单的身份验证,或者它使用数据库来存储信息。
我想要做的就是在Active Directory中使用我们已经概述的安全结构。有人可以解释我需要什么吗?
我需要:
-
web.config
<allow roles ="domain\groupA"/>
中的 -
if (User.IsInRole(@"domain\groupA")){ //do stuff }
- IIS设置为Windows身份验证
- <=>在我的页面? 醇>
<roleManager enabled="true"/>
中的我还缺少什么?什么?因为它不起作用。 HEH。
感谢大家的帮助。
解决方案
您可能只需要在web.config中添加一个RoleProvider,告诉应用程序如何对AD进行搜索。
此处的示例代码。
<roleManager defaultProvider="WindowsProvider"
enabled="true"
cacheRolesInCookie="false">
<providers>
<add
name="WindowsProvider"
type="System.Web.Security.WindowsTokenRoleProvider" />
</providers>
</roleManager>
不隶属于 StackOverflow