将对IIS站点的访问限制到AD组

IIS中是否可以在IIS中设置一个站点,并且只允许某个AD组的用户访问它?

以下应该工作,取决于您的IIS版本。 如果您的网站的目录根目录中没有(但应该在IIS7上),则需要添加一个web.config。 下面将允许域pipe理员和拒绝域用户(相当自我解释)。 如果你已经有一个部分,确保你排列configuration部分,等等。

<configuration> <location path="MyPage.aspx/php/html"> <system.web> <authorization> <allow users="DOMAIN\Domain Admins"/> <deny users="DOMAIN\Domain Users"/> </authorization> </system.web> </location> </configuration> 

您需要在您的站点首选项中的“身份validation”下启用Windows身份validation才能正常工作,但我认为您已经启用了此function。

joshatkins的答案在IIS7中不起作用。 对于IIS7,您需要使用angular色属性。 另外,如果你想限制整个网站,你不需要位置元素。

 <authorization> <allow roles="DOMAIN\Domain Users"/> <deny users="*" /> </authorization> 

只是添加了几个点,其他答案,帮助我弄清楚如何得到这个工作之后,我有基本的身份validation身份validation与IIS正常工作。

  1. 通过Windows服务器pipe理器添加angular色或function:Web服务器(IIS) – > Web服务器 – >安全性 – > URL授权。
  2. closures然后重新打开IISpipe理器 (如果你打开它),现在你会看到(在您的网站的IIS部分) 授权规则 。 打开这个。
  3. 点击右侧面板: 添加允许规则
  4. 指定的angular色或用户组下键入您需要的AD组的名称。 例如。 myDomain \ myGroup并select确定
  5. 重复4,为您需要的组。

如果你只是想直接编辑configuration文件,那么它看起来像这样:

 <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> ... <security> <authorization> <remove users="*" roles="" verbs="" /> <add accessType="Allow" roles="myDomain\myGroup01" /> <add accessType="Allow" roles="myDomain\myGroup02" /> </authorization> </security> </system.webServer> </configuration> 

如果使用web.config授权规则不起作用(例如因为运行CGI脚本),则可以使用文件夹权限系统来禁用inheritance,删除IIS用户(以便没有人拥有读取权限),只需将安全组添加到具有读取权限。 您还必须启用某种forms的身份validation方法(例如Basic或Windows Integrated)才能识别访问者。

仅将该文件夹的读取权限授予该域组也是可行的。