- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在使用 ASP.Net 4.0 MVC 查询事件目录。我正在尝试获取用户组成员身份的列表并遍历它们。我有一个奇怪的问题。要获取我正在使用的组:
PrincipalSearchResult<Principal> groups = up.GetGroups();
它在本地主机上运行良好,但在移动到 IIS6 时返回一个空集。所以我尝试使用这个:
PrincipalSearchResult<Principal> groups = up.GetAuthorizationGroups();
这在 IIS6 上运行良好,但在本地主机上返回一个空集。这两种方法有什么区别?为什么我可以在 IIS6 中使用,而不能在本地主机上使用?为什么我可以在本地主机上使用另一个,而不能在 IIS6 中使用?
最佳答案
“为什么”部分已经得到解答,但这可能会帮助那些想知道这两种方法之间功能差异的人。来自 MS 文档:
GetGroups - Returns a collection of group objects that specify the groups of which the current principal is a member.
This overloaded method only returns the groups of which the principal is directly a member; no recursive searches are performed.
GetAuthorizationGroups - Returns a collection of principal objects that contains all the authorization groups of which this user is a member. This function only returns groups that are security groups; distribution groups are not returned.
This method searches all groups recursively and returns the groups in which the user is a member. The returned set may also include additional groups that system would consider the user a member of for authorization purposes.
因此 GetGroups
获取用户是其直接 成员的所有 组,GetAuthorizationGroups
获取所有<用户是其直接或间接成员的strong>授权组。
不管它们的命名方式如何,一个都不是另一个的子集。 GetGroups
返回的组可能不是 GetAuthorizationGroups
返回的,反之亦然。
关于c# - UserPrincipal.GetGroups 与 UserPrincipal.GetAuthorizationGroups?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11162008/
我有一个 Active Directory 搜索器,可以使用 UserPrincipal 对象获取用户的详细信息。我正在使用 System.DirectoryServices 和 System.Dir
我正在使用 ASP.Net 4.0 MVC 查询事件目录。我正在尝试获取用户组成员身份的列表并遍历它们。我有一个奇怪的问题。要获取我正在使用的组: PrincipalSearchResult g
我是事件目录的新手,我目前正在为一个项目开发一个库,以轻松管理我们的事件目录对象,如用户、资源、组等。 该库位于 .NetStandard 2.0 中,我使用的是 Principal 类 System
我想使用 JSF 创建一个登录表单,该表单还在外部上下文中创建一个新的 UserPrincipal。 当我想在外部 FacesContext 中创建新的 UserPrincipal 时,我必须做什么?
[JEE、MVC-JSP+Servlet、TomEE] 使用基于表单的声明式身份验证(容器管理)。是否可以显式设置UserPrincipal? (登录某些用户)。 我知道我可以使用 request.g
在查看托管网站时,我在我的项目中收到经典的对象引用未设置为对象的实例。在本地构建调试版本时有效。 直播 显示错误消息的代码示例: using System.DirectoryServices
在开始之前,我想说明一下,我可以使用 DirectoryServices 命名空间来执行此操作。我只想知道如何不使用 DirectoryServices 来解决我的以下问题。 我想做的是使用 Dire
我正在使用 C# 代码查询 Active Directory。我遇到的主要问题是确定帐户是否已被禁用。翻阅许多在线文章,似乎不能仅依靠属性 UserPrincipal.Enabled 来确定用户帐户是
我有一个类可以处理交换邮箱的密码更改和过期检查。我在 UserPrincipal 上检查 LastPasswordSet。 那么 TDD 呢? 我想通过编写一些测试来检查我的类(class)是否正确处
我正在尝试使用以下代码获取用户的所有Active Directory组: private static IEnumerable GetGroupNames(string userName)
通过 UserPrincipal 类,我可以设置 UserPrincipalName,因此在创建我的用户时,会填充用户登录名的第一部分: up.UserPrincipalName = "ryan.an
通过 UserPrincipal 类,我可以设置 UserPrincipalName,因此在创建我的用户时,会填充用户登录名的第一部分: up.UserPrincipalName = "ryan.an
我正在执行以下操作: How do I get the name of a file's owner in Java on OSX? 这是我的代码: private String getOwner(F
以下代码返回给定组名的 UserPricipal。但是删除组后,此代码仍然返回给我一个 UserPrincipal (已删除的)。有没有办法删除这个“缓存”? UserPrincipalLookupS
我正在尝试使用一种方法来接收用户名,如果该用户是本地管理员(不是在整个域中,只是在本地计算机上),则返回 true,否则返回 false。我试图改变在 In .NET/C# test if proce
我扩展了 UserPrincipal 类以检索我需要的一些缺失的属性: [DirectoryObjectClass("user")] [DirectoryRdnPrefix("CN")] class
这个问题在这里已经有了答案: Adding address information to active directory users (1 个回答) 关闭 5 年前。 我又被 AD 困住了。谁能给
我有一个包含很多属性的 UserPrincipal 对象,但我找不到密码过期日期的属性。 如何做到这一点? 最佳答案 这是我能想到的最简单的方法... using System.DirectorySe
我正在尝试使用 .NET System.DirectoryServices.AccountManagement 库来获取特定 Active Directory 用户的 UserPrincipal。 我
出于某种原因,GetAuthorizationGroups() 似乎需要大约 20 秒才能返回组。我正在使用这段代码: UserPrincipal user; // This takes 20 sec
我是一名优秀的程序员,十分优秀!