ASP.NET:禁止某些Active Directory用户

时间:2013-07-31 15:42:06

标签: asp.net .net asp.net-mvc active-directory windows-authentication

我有一个使用Windows身份验证的ASP.NET MVC应用程序。我希望我们的员工能够在不必登录的情况下使用该应用程序。但是,我们将某些通用的部门ID作为用户放在Active Directory中。如何让我的应用程序禁止这些用户,以便如果员工使用这些通用创意之一登录到计算机,应用程序将使他们登录?

谢谢!

1 个答案:

答案 0 :(得分:1)

我将受限制的部门用户放入AD组,然后您可以将其放在您的web.config中,授权拒绝具体的组权限。

请参阅下面的示例(DepartmentID将是您的AD组):

<?xml version="1.0"?>
<configuration>
    <system.web>
        <compilation debug="true" />
        <authentication mode="Windows" />

        <authorization>
            <allow roles="DomainName\AuthorizedUsers" />
            <deny users="DomainNames\DepartmentIDs" />
        </authorization>
    </system.web>
</configuration>

用户还可以指定为

  <deny users="comma-separated list of users">

或者你可以否认角色。这里有很多选择。您还可以直接在IIS中执行权限,具体取决于Web应用程序,虚拟目录,NTFS目录访问。我坚持使用web.config,但我相信你会从其他人那里听到一些不同的选择。

我还阅读了一篇关于.NET中的身份模仿的有趣文章,看看: http://msdn.microsoft.com/en-us/library/xh507fc5%28v=VS.90%29.aspx