Bil*_*Day 2 c# windows powershell vmware hyper-v
我想在域上保留带有快照的虚拟机?目前,如果我定期关闭它们或恢复到以前的快照,这些机器往往会在大约 30 天后脱离域。
我想在启动时运行一个小应用程序\服务来检查机器是否在域中,如果没有将其添加回来。
如果可能的话,我想通过 C# 来使域管理员密码更安全,我可以这样做吗?
我发现的唯一可能的方法是通过 PowerShell 进行,但我必须手动传入域用户名\密码。
Test-ComputerSecureChannel -Repair -Credential
Run Code Online (Sandbox Code Playgroud)
这种情况发生在内置 Hyper-V 和 VMware 的机器上。
谢谢你的帮助
计算机帐户与用户帐户一样具有密码,即使您从未与它们交互。在 AD 域中,计算机密码用于建立到域的安全通道。默认情况下,计算机帐户密码不会过期。但默认情况下,计算机每 30 天更新一次密码(更多详细信息)。
在您的情况下,您拍摄了 VM 的快照。之后,这台机器在某个时间点(<30 天)更改了密码。恢复到快照后,您的机器再次使用旧密码,该密码与您的 AD 中的密码不匹配。
总之,您的机器不再连接到域,并且没有任何信任来重新创建安全通道。所以你不能使用你机器上的任何东西来重建它(比如计算机帐户或域中的任何其他帐户)。您必须通过新的身份验证重新获得信任。
我不建议在任何地方硬编码任何凭据,尤其是域管理员的凭据。您甚至可以从 C#(或任何)二进制文件中反转密码。这只是一个努力的问题(不一定是时间!)。
我能想到的唯一解决办法就是延长电脑账户密码更新的期限。如果您可以确定一个合理的时间跨度,您可以确定快照不会早于此时间跨度,您可以通过 GPO 修改更新间隔(更多详细信息):
Computer Configuration\Windows Settings\Security Settings\Local Policies\Security Options。Domain member: Maximum machine account password age并将其设置为 1 到 999 天之间的值。它必须应用于包含 VM 的计算机帐户的位置。它不一定必须应用于您的 DC,因为计算机会自行更改其密码。更改不是由您的域(控制器)发起的。
安全考虑:间隔越大,暴力攻击的时间越长。做出明智的选择。
| 归档时间: |
|
| 查看次数: |
105 次 |
| 最近记录: |