C# Active directory角色管理

C# Active directory角色管理,c#,active-directory,web-config,roleprovider,user-roles,C#,Active Directory,Web Config,Roleprovider,User Roles,我开发内联网应用程序,但我对广告角色有问题。用户已被windows登录 <authentication mode="Windows"></authentication> 我只需要通过AspNetWindowsTokenRoleProvider读取用户的AD角色 <roleManager defaultProvider="AspNetWindowsTokenRoleProvider" enabled="true"

我开发内联网应用程序,但我对广告角色有问题。用户已被windows登录

<authentication mode="Windows"></authentication>

我只需要通过AspNetWindowsTokenRoleProvider读取用户的AD角色

<roleManager defaultProvider="AspNetWindowsTokenRoleProvider" 
                 enabled="true" 
                 cacheRolesInCookie="false">
    <providers>
      <remove name="AspNetSqlRoleProvider" />
    </providers>
  </roleManager>

对于阅读角色,我使用了静态类角色(Roles.GetRolesForUser和Roles.IsUserInRole(roleName))

提取角色列表时,可以:

foreach (var i in Roles.GetRolesForUser())
{
   tmp.Text += i + "<br />";
}
foreach(Roles.GetRolesForUser()中的变量i)
{
tmp.Text+=i+“
”; }
tmp是asp:Literal控件的ID

出于测试目的,我在AD中创建了一个名为TESTGROUP的测试角色。我将向角色测试组添加一个用户,但此更改不会反映在角色列表中

我看到列表中的新角色无助于重新启动IIS,我必须重新启动整个服务器

我使用Windows Server 2008 R2和IIS 7。 我正在手动将用户添加到组

有人知道问题出在哪里,或者我错在哪里了吗


谢谢

据我2008年的记忆,每次更新active directory组时,都必须重新验证该用户。这意味着注销并重新登录。真的吗?我不知道。这是我第一次申请广告。谢谢