【发布时间】:2012-09-17 05:56:36
【问题描述】:
我有一个在 C# 中使用 Windows 身份验证 的 Web 应用程序,目前我将用户单独分配给角色。
例如在应用程序的每个页面上,我都会检查
if(Roles.IsUserInRole(AU\UserName, "PageAccessRole"))
由于我需要在本周将应用程序推广到整个团队(最终是整个公司),我需要使用 AD 组,因为有超过 3000 人,所以我不打算手动执行!
作为 ASP.NET(以及一般编程)的新手,我真的不太了解设置 AD 组(例如,如何从我的应用程序访问 AD 组等?)
如果有人能指出我正确的方向,我将不胜感激...我一直在阅读有关 LDAP 和 System.DirectoryServices.AccountManagement 等的所有内容但我越来越糊涂了。
到目前为止,我的 web.config 中有这个
<authentication mode="Windows">
</authentication>
<authorization>
<allow roles="AU\Active Directory Group Name"/>
<deny users="?"/>
</authorization>
<roleManager enabled="true" >
<providers>
<clear/>
<add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
</providers>
我在 IIS 服务器中启用了 Windows 身份验证并禁用了匿名。
请帮忙!!
【问题讨论】:
-
我怀疑这个线程 (stackoverflow.com/questions/2188954/…) 会很有用,但我不知道如何将代码合并到我的应用程序中...
-
您要添加新组并将人员添加到组吗?
-
不,我想使用公司现有的 Active Directory 组!
-
我不想手动将数千人添加到一个组中等。
-
我可以在这里向您展示的是使用 Foreach 循环将一堆用户添加到 Active Directory 组。如果您想要相同的内容,请告诉我,我可以在这里向您展示一个示例。
标签: c# asp.net authentication active-directory