簡體   English   中英

設置時鍾向前后C#的UnauthorizedAccessException訪問注冊表

[英]UnauthorizedAccessException accessing registry after setting clocks forward c#

我正在嘗試測試我們的軟件在遇到不同的時鍾情況(例如,機器不同步,夏令時等)時如何工作。 測試驅動程序嘗試禁用Windows時間服務,並使用WMI修改遠程計算機上的時鍾。

我遇到的一個奇怪的問題是,如果我將計算機的時鍾頻率提前或滯后很多(例如幾個月),則在嘗試使用遠程注冊表時會開始收到UnauthorizedAccessExceptions。

有人見過這種行為嗎?

更新:這些帳戶是不會過期的服務帳戶。

發現問題在於Kerberos安全性會認為您正在嘗試進行回復攻擊,因為任何傳入到域控制器的授權請求都看起來像是來自將來的請求(與過去請求的請求相同) )。 從我可以收集到的5分鍾來看,時鍾的默認允許窗口不同步。

Kerberos具有嚴格的時間要求,這意味着所涉及主機的時鍾必須在配置的限制內同步。 票證具有時間可用性期限,並且如果主機時鍾未與Kerberos服務器時鍾同步,則身份驗證將失敗。 MIT的默認配置要求時鍾時間相隔不超過五分鍾。 實際上,網絡時間協議守護程序通常用於保持主機時鍾同步。

http://en.wikipedia.org/wiki/Kerberos_(協議)

因此,我不得不想出一種解決此問題的方法,以解決時間服務無法正常運行的不太可能的情況。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM