我运行一个powershell命令列出远程匹配的所有服务:
$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 }
这是我第一次运行它。 有时候它是第二次。 然后,它会停止工作中途访问被拒绝错误。 然后我发现我的帐户被locking在远程机器上。 我把帐户解锁,几次运行脚本,然后我被locking了。 WTF?
为什么使用WMI访问远程计算机会locking机器上的帐户?
我怎样才能阻止它发生?
支持信息
我使用机器本地帐户的名称和密码来查询远程机器。 我没有使用域帐户。
远程计算机正在运行Windows Server 2008 R2。
通过“停止部分path”我的意思是,它打印出约20的服务,然后得到错误。
经过更多的调查
这可能是由我的特定configuration公开的Windows中的exception(或彻底的错误):
我使用域帐户login到我的客户端机器,但尝试使用它的本地帐户访问服务器。 这两个帐户具有相同的帐户名称,但恰好有不同的密码。
作为一个实验,我修改了SERVER_NAME \ ashepherd,所以两个帐户都有相同的密码。 现在一切正常,没有任何停工。
为了获得证书,我正在input
$cred = (get-credential)
然后我只是inputashepherd,而不是SERVER_NAME \ ashepherd。
我不认为这是应该的。 这是已知的行为?
检查安全事件日志以查看该帐户列出了哪些安全审核失败。 你没有提到locking政策…locking重置? 如果是这样,还有什么可能导致它locking。 安全事件日志会给你一个线索,如果是这样的话。
安德鲁当你说“打印出大约20个服务”时,你能检查它是否总是停在同一个服务器上吗? 这可能会提供一个线索?
干杯