1

我有一个使用 Windows 身份验证的 ASP.NET MVC 应用程序。我希望我们的员工无需登录即可使用该应用程序。但是,我们在 Active Directory 中拥有某些通用的部门 ID 作为用户。如何让我的应用程序禁止这些用户,以便如果员工使用这些通用想法之一登录到计算机,应用程序将使他们登录?

谢谢!

4

1 回答 1

1

我会将受限制的部门用户放入一个 AD 组,然后您可以将其放入您的 web.config 中,并获得拒绝该特定组权限的授权。

例如,请参见下文(DepartmentIDs 将是您的 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

于 2013-07-31T15:51:19.050 回答