【问题标题】:ADFS not returning domain groups (Also odd issues with get-aduser)ADFS 不返回域组(get-aduser 也有奇怪的问题)
【发布时间】:2018-05-15 14:30:32
【问题描述】:

我正在尝试帮助某人解决一个极其奇怪的 AD\ADFS 问题,但我已经没有想法了。

我们正在使用 ADFS 返回用户所属的安全组(除其他外)。如果该用户有一个特定的组,那么我们授予他们访问权限。这适用于其他几个系统\环境。在这种情况下,ADFS 不会为用户返回任何域组(我已经检查了一些用户)。

如果我使用

Get-aduser username -properties memberof | select -expandproperty memberof

什么都没有显示。如果我这样做了

get-aduser username -properties memberof | measureobject

它确实给了我一个数。

这就是事情变得非常有趣的地方。

如果我检查 ADUC 中的用户,我发现它是域用户的成员,但仅此而已。如果我查看 ADUC 中的相关组,它会显示该用户也是该组的成员(但不会在该用户的 memberof 下显示该组。)

如果我检查 get-adgroupmember 它表明该用户是我真正需要返回的组的成员。显示为属于该组的用户的 SID 与我使用 get-aduser 检查相关用户时的 SID 相同(该组未显示)。

现在,除了所有这些 - 如果我去查询 ADFS - 我没有得到任何为相关用户返回的域组(域用户也不应该在其中)

我认为这很可能与安全有关,但我不知所措。

这种与 ADFS 完全相同的配置在我的几个测试环境中绝对完美。

有什么建议\建议?

【问题讨论】:

    标签: active-directory adfs claims-based-identity


    【解决方案1】:

    一些事情:

    memberOf 只显示给你:

    1. 您的 AD 林中具有通用组范围的组
    2. 组范围为 Global 的同一域中的组

    它确实显示:

    1. 在任何域上具有域本地范围的组
    2. 您的林中其他域上的组,范围为 Global

    还有更多:域用户组有点奇怪。该组的成员通常不在该组的members 属性中。用户对象有一个名为primaryGroupID 的属性,其中包含该用户的“主要组”的 RID。 RID 是 SID 的最后一部分。这就是使他们成为该组织的“成员”的原因。

    所有这一切意味着你不能依赖memberOf。您可以搜索用户组的member属性(使用用户的distinguishedName):

    Get-ADGroup -Filter { member -eq "distinguishedName" }
    

    如果您需要主要组,也请单独查找。

    但是有一个 PowerShell cmdlet 可以为您完成所有这些工作:Get-ADPrincipalGroupMembership

    它返回组对象,所以如果您只想要名称,则将其通过管道传递到Select

    Get-ADPrincipalGroupMembership username | Select -ExpandProperty Name
    

    【讨论】:

    • 谢谢 - 我已经尝试过了,它也不会返回“隐藏\神秘”组。这必须是安全的地方,但在哪里?!编辑添加 - 这确实返回域用户。同样,最大的问题是 ADFS 根本没有返回任何组。
    • 两个问题:你的神秘群的群范围是多少?它与用户是否在不同的域中?
    • 组范围是全局,类型是安全。单域
    • 如果您在 ADUC 中打开组并使用“属性编辑器”选项卡,您能看到member 属性中列出的用户吗?
    • 这个工作(如果你使用你的distinguishedName):Get-ADGroup -Filter { member -eq "distinguishedName" }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-28
    • 1970-01-01
    • 2010-10-07
    • 2011-09-21
    • 1970-01-01
    相关资源
    最近更新 更多