特定Windows用户组的Windows身份验证

时间:2014-01-08 09:44:27

标签: c# asp.net windows iis

我创建了asp.net网页,我想在登录按钮点击时使用Windows用户名和密码登录我的asp页面。我在网上搜索了一些代码(http://www.codeproject.com/Articles/37558/Windows-Authentication-Using-Form-Authentication),用于登录我的asp页面。它适用于我的本地用户名和密码,但我想访问我的asp.net页面的特定域组成员

有人帮助我......

1 个答案:

答案 0 :(得分:6)

要提供/限制对特定用户/群组的访问权限,需要在Web.config中完成相应的条目。

在Windows身份验证中,名称以DomainName\UserNameComputerName\UserName

格式输入

在授权规则中列出用户时,您需要使用相同的格式。例如,如果您在名为FARIAMAT的计算机上拥有用户帐户john和nolan,则可以使用这些授权规则。请注意users元素中的<allow>属性。

<authorization> 
<deny users="?" /> 
<!-- permit only specific users to have access -->
<allow users="FARIAMAT\john,FARIAMAT\nolan" /> 
<deny users="*" /> 
</authorization>

要允许名为Managers的NT组的所有用户都可以访问您的资源,请使用以下代码。请注意roles元素中的<allow>属性。

<configuration>
  <system.web>
    <authorization>
  <!-- Format is:: <allow roles="DomainName\WindowsGroup" /> -->
      <allow roles="domainname\Managers" />
      <deny users="*" />
    </authorization>
  </system.web>
</configuration>

注意: Windows组用作角色,它们采用domainName\windowsGroup形式。使用Administrators前缀作为:{/ p>引用BUILTIN等组

<authorization>
  <allow users="DomainName\john, DomainName\nolan" />
  <allow roles="BUILTIN\Administrators, DomainName\Manager" />
  <deny users="*" />
</authorization>