WCF 客戶端呼叫服務時拋出 MessageSecurityException:
System.ServiceModel.FaultException: 訊息中至少有一個安全權杖無法驗證。
內部例外堆疊指向 SecuritySessionSecurityTokenProvider、SecurityChannelFactory 等安全通道元件。
客戶端與服務端系統時間差異超過 5 分鐘。WCF 安全對話(WS-SecureConversation)依賴時間戳記防重放攻擊,預設允許誤差 5 分鐘。時間不同步導致權杖時間戳驗證失敗。
net time \\ServerIP /set /yes
缺點:需開放 RPC/網路存取,可能降低伺服器安全性。
NetRemoteTOD 或 WMI Win32_LocalTime 取得伺服器時間並調整本地時間(需 SeSystemtimePrivilege)。maxClockSkew(預設 5 分鐘),但會削弱安全性。時間同步是 WCF 安全通訊的基石。90% 的「安全權杖驗證失敗」皆源於時間偏移。建立統一時間源、自動化同步機制,可從根源消除此類故障。