虽然似乎有三种可用的选项,其中一种实际上是安全的,但似乎只有两种可用的select,能够影响在更改时尚未启动的机器,或者是移动的而不在networking上的机器在变化的时候。 两者似乎都不是一个安全的select。 我知道的三个选项是:
我忽略了Powershell选项,因为我不知道如何有效地进行目标/迭代,并且closures已经更改的机器,networking上的所有机器以及对不必要的networking开销有什么影响,尽pipe这可能是最好的解决scheme因为密码本身可以存储在CipherSafe.NET(第三方解决scheme)容器中,并将密码传递给目标机器的脚本。 我还没有检查过Powershell是否可以从脚本中使用本地Windows机器的Credential Manager获取密码,或者是否可以在其中存储密码以便与脚本一起使用。
.vbs脚本选项是不安全的,因为密码以明文forms存储在networking上任何域计算机可用的SYSVOL共享中。 任何想要find后门,只要有一点Google的人都会发现,如果持续下去的话。
GPO选项也是不安全的,如MSDN注: http : //code.msdn.microsoft.com/Solution-for-management-of-ae44e789
我正在寻找一个非第三方的解决scheme,我认为这应该是可用的或能够在正确的知识或指导下在内部开发。
我要继续前进,并采取我的评论answertown。
这将是第三方。 正如您已经指出的那样,您提到的三个选项都不是最佳的。 微软并没有提供这样做的完美方式。 没有一个。 这将是第三方,几乎肯定会让您在所有客户端安装一个软件代理。
我为这个确切的问题开发了一个解决scheme(除了可以同时处理多个森林和域),它确实涉及VBscript,以便与尽可能多的Windows版本以及一些C#位以及第三版这家公司幸运的是已经用于监控目的,并且已经安装在每一台机器上,我可以利用它。
或者,您可以通过GPO禁用所有本地pipe理员帐户,这很常见。 但是,如果该域成员上的域同步出现问题,恢复将更像是PITA,而不是恢复“本地pipe理员”帐户。
编辑:只是为了澄清:当你说你正在寻找一个非第三方的解决scheme,而这个解决scheme应该能够在内部开发的时候,我会感到困惑。我会考虑任何不是由微软写的东西作为Windows的内置组件在这个上下文中是“第三方”。 你能用一些使用TLSnetworking通信的聪明代码来做到这一点,并将秘密存储在SQL Server数据库中,并使用透明数据encryption,并使用一些复杂的散列函数为每台机器生成一个唯一的密码。 是。 它是否内置到Windows中,而不需要您的努力? 没有。 🙂
那么对于GPO选项,您指出的Microsoft Article( http://code.msdn.microsoft.com/Solution-for-management-of-ae44e789 )在其文档(下载Documentation.zip文件)中指定了以下内容:
从受pipe理的计算机向Active Directory传输密码受Kerberos Encryption保护,因此无法通过嗅探networkingstream量来获知密码。
详细技术规格 – 本地pipe理员帐户的密码pipe理 – 第5页
也许文章定义没有更新,所以我说你看看文档,也许做一些testing,而嗅探stream量,这样你可以肯定。