MSSQL: "Login failed for user ''. The user is not associated with a trusted SQL Server connection."
Kerberos: "The Kerberos packet size exceeds the maximum allowed size."
使用 Microsoft TokenSZ 工具:
tokensz /compute_tokensize /user:Administrator /domain:CORP.COM /password:xxx
輸出 Required MaxTokenSize = 45000(示例)。
路徑:HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters
值:MaxTokenSize (DWORD)
數據:計算值 + 20% 冗餘(如 54000 → 十六進制 0xD2F8)
必須在所有域控制器、SQL Server 服務器、客戶端機器上設置,重啟生效。
| 項目 | 建議 |
|---|---|
| 組策略 | 通過 GPO 下發 MaxTokenSize,確保全域一致 |
| 監控 | 定期抽樣 TokenSZ,隨組織變化調整 |
| 替代方案 | SQL 認證(sa/應用賬號)繞過 Kerberos,但失去集中身份管理優勢 |
| 最小權限 | 定期清理冗餘組成員資格,從源頭控制 Token 體積 |