在ActiveDirectory for ASP.NET网站中管理角色的最佳方法是什么?

时间:2014-02-18 23:26:54

标签: c# asp.net visual-studio-2012 active-directory active-directory-group

要点:

我正在使用Active Directory为用户提供针对我们域中用户的INTRAnet网站的身份验证。处理权限的最佳方式是什么(管理员,主管,读者)?

环境:

我在Windows Server 2008 R2上使用带有IIS 7.5的Visual Studio 2012的ASP.NET C#(.NET Framework 4.5)网站。

我的问题详细说明:

我试图找出处理权限的最佳方法。我可能会将角色添加到我的项目的活动目录中。该项目名为Eagle。我想知道我是否应该将3个角色添加到AD并称之为EagleAdmin,EagleSupervisor和EagleReader)或者是否应该在SQL Server中为用户创建我的权限(如果是,那么最好的方法是什么?)

仅供参考:Here是帮助我找出AD身份验证的精彩代码项目!

1 个答案:

答案 0 :(得分:0)

您可以利用命名空间System.DirectoryServices和System.DirectoryServices.AccountManagement中的类

您可以使用System.DirectoryServices.AccountManagement.PrincipalContext类来访问所需的活动目录,并使用UserPrincipal的方法使用GroupPrincipal获取用户信息和角色。

using(var context=new PrincipalContext(ContextType.Domain,"YOURDOMAINNAME")
{
    using(var user=UserPrincipal.FindByIdentity(context,"usernametosearchfor")
     {
var userGroupsOfCurrentUser=user.GetAuthorizationGroups();
     }
}

如果有帮助,请标记为答案。