允许 Active Directory 用户禁用日期时间同步

Nat*_*ini 6 active-directory ntp time-synchronization

我最近将我的公司迁移到 Active Directory。随之而来的默认设置将强制启用时间同步。

问题是,有些用户为了测试目的需要更改他们的日期时间设置,但自动同步会恢复实际时间值。禁用时间同步的选项呈灰色显示。有问题的用户是受信任的,并且是他计算机上本地管理员组的成员。

我试图找到一种方法让用户随意启用和禁用此设置,但我只找到了全局启用/禁用。

我想知道是否可以将此设置(启用/禁用时间同步)留给用户自行决定。

谢谢大家

EDIT更多精度:用户具有修改系统时间(以GPO定义-瑞)的权利。用户能够改变的时候,只有它会自动在几分钟后又变回。我希望禁用这种行为。禁用 Windows 时间服务 (w32time) 没有帮助。

Stu*_*rde 8

正如@MDMarra指出,使用虚拟机是一个伟大的路要走,因为阻塞时间同步引起进行身份验证,TLS证书的有效性等问题显著然而,真正的测试,你可能要测试的这款机器上加入域,就像在“现实世界”的情况下一样。无论哪种方式,熟悉 Windows 域中时间设置的配置总是有帮助的。

内置的W32TM命令应该是您挑战的答案。以下两个命令字符串将阻止您的测试机器自动重置其时间:

w32tm /config /syncfromflags:no /update
net stop w32time && net start w32time
Run Code Online (Sandbox Code Playgroud)

要在测试完成后恢复正常操作,请运行以下两个命令字符串:

w32tm /config /syncfromflags:domhier /update
net stop w32time && net start w32time
Run Code Online (Sandbox Code Playgroud)

这将告诉计算机从 Active Directory 域控制器同步其时间,然后重新启动时间服务。

补充参考:

使用附加信息进行编辑: 这些命令假定问题已经说明——运行命令的人具有本地管理员权限。

我还将从另一个精彩的SF Q&A 中借用一个关于配置时间的技巧。这是现在是社区维基的答案的直接引用:

9.如果您之前一直在使用 Windows 时间服务,或者您从其他人那里继承了这个网络,那么在开始重新配置之前将 w32time 重置为默认设置可能是个好主意。在域控制器上运行以下命令,从 PDCe 开始。

net stop w32time
w32tm /unregister  <-- If you get an Access Denied message, reboot.
w32tm /register
net start w32time
Run Code Online (Sandbox Code Playgroud)

我建议您在运行这些命令后重新启动服务器 1-2 次,并确保 Windows 时间服务存在,设置为自动,然后启动。我见过 /unregister 命令直到下一次重新启动才生效的情况。然后当你在打完 Windows 补丁后重新启动时会有一个惊喜,w32time 服务突然不见了!


MDM*_*rra 7

你真的不想这样做。时间同步对于 Kerberos 正常运行至关重要。除非您希望身份验证失败,否则您会将系统时钟保留在原处。

也许在客户端 Hyper-V 内运行的非域加入 VM 是更好的解决方案。

  • 我*实际上*想要这样做,因为我宁愿有暂时的身份验证失败风险,也不愿等待一年来查看我的用户正在处理的行为是否按预期运行。我会建议虚拟机的可能性。 (2认同)