首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Roles.GetRolesForUser()为空

Roles.GetRolesForUser()为空
EN

Stack Overflow用户
提问于 2012-06-26 02:06:58
回答 1查看 433关注 0票数 0

我以前从未在Vb.Net中从事过授权工作。因此,下面的问题对于高级程序员来说可能听起来很愚蠢。请道歉。

我正在尝试获取已登录用户的Active Directory组列表。有人告诉我,Roles.GetRolesForUser()是实现它的最好方法。我在我的web.config中写了下面的代码。

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

并在后台代码中添加了以下代码。

代码语言:javascript
复制
Dim userRoles As String() = Roles.GetRolesForUser()

我看到userRoles.length是0。我已验证用户是否具有多个与关联的active directory组。这要么是因为我在web.config中设置的配置是错误的,要么是因为这不是获取此用户的所有active directory组的方法。如有任何建议,欢迎光临。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-04 00:30:23

要么我太傻了,不能理解Roles.GetRolesForUser(),要么配置它真的很难。:)

我使用IsInRole()方法解决了这个问题。我知道访问我的应用程序的可能的ADGroups,并将其作为web.config中的一个可配置项。然后使用String.Split(),然后使用HttpContext.Current.User.IsInRole()手动检查以验证用户是否可以访问该应用程序。

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

https://stackoverflow.com/questions/11194798

复制
相关文章

相似问题

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