首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >User.IsInRole返回false

User.IsInRole返回false
EN

Stack Overflow用户
提问于 2010-03-16 07:01:25
回答 1查看 17.4K关注 0票数 7

我的ASP.NET应用程序正在使用windows身份验证。如果我运行以下代码:

代码语言:javascript
复制
WindowsIdentity wi = (WindowsIdentity)User.Identity;

foreach (IdentityReference r in wi.Groups)
{
    ListBox1.Items.Add(r.Translate (typeof (NTAccount)).Value);
}

if (User.IsInRole ("Everyone"))
    Label1.Text = "Is in role";

列表框将包含用户所属的每个组的名称。如果我随后调用User.IsInRole,并传入其中任何一个组的名称,我总是得到一个false。

有人能告诉我我哪里做错了吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-03-16 09:59:24

我们需要看看你的web.config。角色是如何处理的?角色管理器是否已启用?

编辑:

您需要使用以下格式:

代码语言:javascript
复制
User.IsInRole(@"DOMAINNAME\rolename")

您正在删除域名。如果仍然不起作用,请确保已在web.config中设置了角色提供程序:

代码语言:javascript
复制
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider"/>

此信息直接来自MSDN。查看“检查代码中的角色成员资格”部分。都在这里了。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2451068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档