gpt4 book ai didi

Powershell 使用 Get-ADPrincipleGroup 抛出错误

转载 作者:行者123 更新时间:2023-12-05 06:09:50 39 4
gpt4 key购买 nike

希望有人能够帮助解决我在运行我创建的 powershell 脚本时遇到的以下错误。它在没有问题之前工作正常。

“请求的操作未执行,因为用户尚未通过身份验证。”

因此该帐户已获得许可,我可以在 PS 中正常运行各种命令。该脚本在另一台用户机器上运行良好,没有问题。我可以使用 -ResourceContextServer 参数解决错误,但这并不理想,因为这是 gui 的一部分,它将查看域 A 之上的另一个域。所以我使用它不会搜索域B 出现提示时。

虽然我发现了我尝试过的东西并且它工作了一段时间然后我又得到了同样的结果,但谷歌并没有给我什么见解

$PSDefaultParameterValues.Add('Get-ADPrincipalGroupMembership:Server',"$((Get-ADDomain).PDCEmulator)")

导致问题的命令是 Get-ADPrincipalGroupMembership 自己在 PS 中运行,我得到了同样的结果。运行其他命令没问题。

其他人看到这个并有解决方案。当我想更新脚本并测试它时,这让事情变得很困难。

谢谢

最佳答案

这是让它发挥作用的一种方法。如果您在某个时候请求凭证,您可以多次使用相同的 $Creds 变量,这确实有效

$username = TheUserToFindGroupd
$OperatorUsername = YourOperatorOrScriptUsername
$Creds = Get-Credential -Credential $OperatorUsername
Get-ADPrincipalGroupMembership $username -Credential $Creds | Get-ADGroup -Properties * | select name

它将针对当前连接的 DC 进行身份验证并运行(我已经尝试过,其中为 DC1 指定 -server 有效,但 DC2 和 DC3 无效)

我可能更喜欢的两种替代方法是从 Get-ADUser 获取 MemberOf 字段。在我的测试中,它获取所有组,Domain Users 除外。

Get-ADUser $username -Properties MemberOf | Select-Object -ExpandProperty MemberOf | Get-ADGroup | Select-Object Name

foreach ($Group in (Get-ADUser $username -Properties MemberOf | Select -ExpandProperty MemberOf)) { write-host ($Group.Split(",")[0]).Split("=")[1] }

它们都比 Get-ADPrincipalGroupMembership 快,但第一个更干净(即使它在 DC 上更密集)。

关于Powershell 使用 Get-ADPrincipleGroup 抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64606936/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com