跨網域群組嵌套導致權限失效:Kerberos Token Bloat 排查與 MaxTokenSize 優化 各位工程師好,

Service 盛达 40 信譽點數
2026-07-22T08:08:41.5633333+00:00

各位工程師好,

我們近期在跨網域 (Cross-Domain) 資源存取上遇到一個蠻棘手的 Kerberos 驗證問題。

【現象與問題】

部分跨 Domain 的使用者在存取特定 Resource 時突然拿到 Access Denied。經查發現這些 User 都被歸類在跨多個 Domains 的 Nested Universal Groups 裡面。我們初步懷疑是 Group Nesting 太深加上跨網域的 SID 累積,導致使用者登入時觸發了 Kerberos Token Bloat(令牌過大),Access Token 直接超出系統預設上限被 Truncate 掉。

【需要請教的方向】

針對這種跨網域群組過度嵌套引起的 Token Size 問題:

大家平時有推薦的 PowerShell Script 或工具(例如 Tokensz.exe)可以精準 Diagnostic 個別 User 的 Kerberos Ticket/Token 大小嗎?

除了直接調整登錄檔的 MaxTokenSize (48K/64K) 這種治標方法外,在 AD 架構設計上,大家會怎麼做 Remediate(例如把 Universal Group 扁平化,改用 Domain Local / Global Group 結構)來徹底解決?

Windows 商務版 | Windows 365 企業版
0 則留言 沒有留言

1 個回答

排序依據: 最實用
  1. Xuan Nhu 1,700 信譽點數 獨立顧問
    2026-07-22T08:58:23.1733333+00:00

    您好,

    根據您的描述,Kerberos Token Bloat 確實可能發生在跨網域且大量使用 Nested Universal Groups 的環境中,導致 Access Token 過大,進而造成驗證失敗或 Access Denied。除了調整 MaxTokenSize 外,Microsoft 一般建議先從 AD 群組設計著手,因為增加 MaxTokenSize 並不能降低 Token 本身的大小,只是提高可接受的上限。

    若要分析個別使用者的 Token 大小,可以使用 TokenSZ、whoami /groups、klist tickets,以及 PowerShell 搭配 Active Directory 模組統計使用者所屬群組與 SID 數量,作為初步診斷工具。若確認是 Token Bloat,較建議檢視群組巢狀結構,避免過度使用 Universal Groups,並依照 AGDLP/AGUDLP 的最佳實務重新設計群組架構,以減少跨網域 SID 累積及 Token 大小。

    若您方便提供目前的 Domain/Forest Functional Level、Windows Server 版本,以及大約每位使用者所屬的群組數量(尤其是 Universal Groups),我們可以進一步討論是否屬於典型的 Token Bloat 問題,以及最適合的調整方式。

    此回答有幫助嗎?

    0 則留言 沒有留言

您的回答

答案可由問題作者標示為「已接受」,而由仲裁者標示為「推薦」,這可協助使用者知道答案解決了作者的問題。