C# 向用户添加角色(Windows身份验证)

C# 向用户添加角色(Windows身份验证),c#,asp.net,iis,iis-7,C#,Asp.net,Iis,Iis 7,我的web应用程序中有两个文件夹,第一个是普通用户文件夹,第二个是管理员文件夹,为了保护它们,我在asp.net配置中创建了两个角色,一切正常,但问题是我想用Windows身份验证对我的用户进行身份验证,而不是表单身份验证,我该怎么办?你可以通过 您应该更改您的authentication部分 <system.web> <authentication mode="Windows"/> </system.web> 要为Web应用程序启用模拟,请在应用程序

我的web应用程序中有两个文件夹,第一个是普通用户文件夹,第二个是管理员文件夹,为了保护它们,我在asp.net配置中创建了两个角色,一切正常,但问题是我想用Windows身份验证对我的用户进行身份验证,而不是表单身份验证,我该怎么办?

你可以通过

您应该更改您的
authentication
部分

<system.web>
 <authentication mode="Windows"/>
</system.web>

要为Web应用程序启用模拟,请在应用程序的 Web.config文件设置identity元素的模拟属性 设置为true,如下面的代码示例所示


使用Windows身份验证时,用户名的格式为domainName\userName。>Windows组被用作角色,它们将 格式为domainName\windowsGroupName。著名的当地团体,如 通过使用“内置”前缀引用管理员和用户 如图所示


清单1:通过web.config文件拒绝所有用户。。向windows声明您的模式:

<system.web>
   <authentication mode="Windows" />
   <authorization>
      <deny users="*" />
   </authorization>
</system.web>


如果您想使用自己的RoleProvider,您需要使用表单身份验证。但是,您可以使用内置的身份验证来根据Active Directory验证您的用户。

但是我的两个文件夹由两个角色保护,如何在web.config中将角色添加到我的Windows用户?如果您使用的Windows身份验证角色相当于用户所属的本地组,或者在域的情况下,Active Directory组。它不用角色扮演器。没问题@ben01!如果你想把我作为你的答案/投票:)@ben01,顺便说一句,只能给出一个核对答案。
 <authorization>   
    <allow users="DomainName\Bob, DomainName\Mary" />  
    <allow roles="BUILTIN\Administrators, DomainName\Manager" />   
    <deny  users="*" /> 
 </authorization>
<system.web>
   <authentication mode="Windows" />
   <authorization>
      <deny users="*" />
   </authorization>
</system.web>