AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 772129
Accepted
Ryan Ries
Ryan Ries
Asked: 2016-04-22 16:28:24 +0800 CST2016-04-22 16:28:24 +0800 CST 2016-04-22 16:28:24 +0800 CST

当 $Group 包含来自其他域的委托人时,Get-ADGroupMember $Group 失败

  • 772

我注意到,当我使用 Powershell 获取 Active Directory 域安全组的组成员身份时,Powershell cmdletGet-ADGroupMember $Group失败并显示错误消息:

PS C:\> get-adgroupmember MyGroup
get-adgroupmember : An operations error occurred
At line:1 char:1
+ get-adgroupmember MyGroup
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (MyGroup:ADGroup) [Get-ADGroupMember], ADException
    + FullyQualifiedErrorId : ActiveDirectoryServer:8224,Microsoft.ActiveDirectory.Management.Commands.GetADGroupMember

我已尝试指定-server $DC参数,以便 cmdlet 以特定 DC 为目标,然后在重现错误时检查该 DC 上的安全日志,并且不会生成相关的安全故障审核。我打开了services\NTDS\Diagnostics密钥中的所有诊断注册表项,并且在目录服务日志中也没有产生任何有趣的东西。

如果我从 MyGroup 中删除驻留在其他域中的组成员,则 cmdlet 可以正常工作。

有趣的是,我注意到如果我在 DC 本身上本地运行该命令,它就可以工作。但是,当我使用相同的用户帐户(域管理员)从成员服务器远程运行命令时,它会失败。

知道有什么问题吗?

windows powershell active-directory
  • 2 2 个回答
  • 9705 Views

2 个回答

  • Voted
  1. Best Answer
    Ryan Ries
    2016-04-22T16:30:50+08:002016-04-22T16:30:50+08:00

    Active Directory Powershell cmdlet,例如Get-ADGroupMember使用 Active Directory Web 服务 (ADWS)。

    声明如

    “当我在服务器上本地运行命令时它工作正常,但当我从远程服务器运行它时它失败”

    通常是一个危险信号,表明潜在的问题是 Kerberos 委派。

    许多服务都利用了 Kerberos 委派,ADWS 也不例外。

    那么让我们看看我的 Kerberos 票证授予票证(TGT):

    C:\> klist tgt
    
    Current LogonId is 0:0x95ec6
    
    Cached TGT:
    
    ServiceName        : krbtgt
    TargetName (SPN)   : krbtgt
    ClientName         : Administrator
    DomainName         : FABTOSO.COM
    TargetDomainName   : FABTOSO.COM
    AltTargetDomainName: FABTOSO.COM
    Ticket Flags       : 0xe10000 -> renewable initial pre_authent name_canonicalize
    Session Key        : KeyType 0x12 - AES-256-CTS-HMAC-SHA1-96
                       : KeyLength 32 - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 00 00
    StartTime          : 4/21/2016 18:42:34 (local)
    EndTime            : 4/22/2016 4:42:34 (local)
    RenewUntil         : 4/28/2016 18:42:34 (local)
    TimeSkew           :  + 0:00 minute(s)
    EncodedTicket      : (size: 1109)
    0000  61 82 04 51 30 82 04 4d:a0 03 02 01 05 a1 0d 1b  a..Q0..M........
    0010  0b 46 41 42 54 4f 53 4f:2e 43 4f 4d a2 20 30 1e  .FABTOSO.COM. 0.
    0020  a0 03 02 01 02 a1 17 30:15 1b 06 6b 72 62 74 67  .......0...krbtg
    0030  74 1b 0b 46 41 42 54 4f:53 4f 2e 43 4f 4d a3 82  t..FABTOSO.COM..
    0040  04 13 30 82 04 0f a0 03:02 01 12 a1 03 02 01 02  ..0.............
    .........
    

    将注意力转向 Ticket Flags 字段。缺了点什么。此票不可转寄。

    为什么机票不能转发?

    代表团

    我取消选中该复选框,使用 刷新我的 Kerberos 票证klist purge,通过执行任何需要获取新 tgt(如果我还没有)的网络活动来获取新 tgt,(gpupdate是一个很好的例子,)再次检查 TGT,并且我注意到它现在包含了可转发标志。

    现在,Powershell cmdlet 在成员服务器上按预期工作。

    当组包含来自另一个域的安全主体(用户或组)时,将返回一个必须跟踪的引用。为了追逐该推荐,ADWS 必须冒充发起原始呼叫的用户。如果在该用户帐户上禁用了 Kerberos 委派,则无法进行模拟/委派。

    • 11
  2. Mister_Tom
    2020-09-01T17:18:34+08:002020-09-01T17:18:34+08:00

    此行为已随着最近的 Windows Server 安全更新而改变。

    • Windows Server(PFE 版)中跨信任的票证授予票证 (TGT) 委派的更改
    • 跨 Windows Server 中的传入信任更新 TGT 委派
    • 运行 netdom /EnableTGTDelegation:No 后无法枚举具有 FSP 成员的组的组成员身份

    现在的安全默认设置是禁用跨林信任的 TGT 委派。因此,在 Microsoft 决定解决此问题之前,Get-ADGroupMember 将在具有跨林外部安全主体的组上失败。在此之前,一种解决方法是使用:Get-ADGroup -Properties member

    • 2

相关问题

  • 知道任何适用于 Windows 的快速可编写脚本的 ftp 客户端吗?[关闭]

  • 如果 Windows 服务崩溃,如何自动重新启动它?

  • 无法安排任务(访问被拒绝)

  • 物理机重启时自动重启虚拟机(VMWare)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve