我最近把我的公司迁移到Active Directory。 随之而来的是一个强制时间同步被启用的默认设置。
麻烦的是,有些用户需要更改date时间设置以进行testing,但自动同步将恢复实际时间值。 禁用时间同步的选项显示为灰色。 有问题的用户是受信任的,并且是他的计算机上的本地pipe理员组的成员。
我试图find一种方法,让用户启用和禁用此设置,但我只发现一个全局启用/禁用。
我想知道是否有可能将此设置(启用/禁用时间同步)留给用户自行决定。
谢谢大家
编辑更多的精度:用户有权修改系统时间(在GPO中定义的严重性)。 用户可以更改时间,只有几分钟后才会自动更改。 这是我希望禁用的行为。 禁用Windows时间服务(w32time)没有帮助。
正如@MDMarra指出的那样,使用虚拟机是一个好方法,因为阻塞时间同步会导致authentication,TLS证书有效性等方面的重大问题。但是,对于真正的testing,您可能会想要在一台机器上进行testingjoin到“真实世界”的情况下。 无论哪种方式,熟悉Windows域中时间设置的configuration总是有帮助的。
内置的W32TM命令应该是您的挑战的答案。 以下两个命令string将阻止您的testing机器自动重置其时间:
w32tm /config /syncfromflags:no /update net stop w32time && net start w32time
要在testing完成后恢复正确的操作,请运行以下两个命令string:
w32tm /config /syncfromflags:domhier /update net stop w32time && net start w32time
这将告诉计算机从Active Directory域控制器同步它的时间,然后重新启动时间服务。
其他参考:
编辑附加信息:这些命令假设问题已经说明 – 运行命令的人具有本地pipe理员权限。
我还会借用另外一篇有关configuration时间的精彩 SF Q&A的小贴士。 这是现在是社区wiki的答案的直接引用:
9.如果您之前一直在使用Windows时间服务,或者从其他人那里inheritance了此networking,则在开始重新configurationw32time之前将其重置为默认设置可能是一个好主意。 在您的域控制器上运行以下命令,从PDCe开始。
net stop w32time w32tm /unregister <-- If you get an Access Denied message, reboot. w32tm /register net start w32time我build议您在运行这些命令后重新启动服务器1-2次,并确保Windows时间服务存在,设置为自动,然后启动。 我看过/ unregister命令在下面的重新启动之前没有生效的情况。 那么当你在做Windows补丁之后重新启动时,你会感到惊讶,并且w32time服务突然失效了!
你真的不想这样做。 时间同步对于Kerberos正常运行至关重要。 除非你想要authentication失败,否则你会离开系统时钟。
也许在客户端Hyper-V内运行的一个非域join的虚拟机是一个更好的解决scheme。