列出远程机器上的服务将我锁定在机器之外

列出远程机器上的服务将我锁定在机器之外

我运行 powershell 命令来列出远程 matchine 上的所有服务:

$b = 0;
get-wmiobject win32_service -computer $computerName -credential $cred | select-object Name, @{n='Counter';e={$script:b+=1;$b}} | % "{0}: {1}" -f $_.Counter, $_.Name }

我第一次运行它时它就成功了。有时第二次运行它也能成功。然后它运行到一半就停止了,拒绝访问错误。然后我发现我的帐户在远程计算机上被锁定。我解锁了帐户,运行了几次脚本,然后我又被锁定了。WTF?

为什么使用 WMI 访问远程机器会锁定该机器上的我的帐户?

我怎样才能阻止它的发生?


支持信息

我正在使用机器本地帐户的名称和密码查询远程机器。我没有使用域帐户。

远程计算机正在运行 Windows Server 2008 R2。

我所说的“部分停止”是指它打印出大约 20 个服务,然后出现错误。


经过进一步调查

这可能是 Windows 中的一个异常(或彻头彻尾的错误),由我的特定配置暴露出来:

  • 我有一个域帐户 COMPANY_DOMAIN\ashepherd
  • 远程服务器有一个本地帐户 SERVER_NAME\ashepherd

我使用域帐户登录到客户端计算机,但尝试使用其本地帐户访问服务器。这两个帐户具有相同的帐户名,但恰好有不同的密码。

作为实验,我修改了服务器名称\ashepherd这样两个账户就有了相同的密码。现在一切都正常了,没有任何锁定。

为了获取凭证,我输入了

$cred = (get-credential)

然后我只输入 ashepherd,而不是 SERVER_NAME\ashepherd。

我觉得这不是应该的做法。这是已知行为吗?

答案1

检查安全事件日志,查看该帐户列出了哪些安全审核失败。您没有提到锁定策略...锁定是否重置?如果重置,是否还有其他原因导致锁定。安全事件日志会为您提供线索,判断是否是这种情况。

答案2

安德鲁,你说它“打印出大约 20 个服务”,你能检查它是否总是停在同一个服务上吗?这也许能给你一些线索?

干杯

相关内容