本文適用於負責為企業或學校管理 Chrome OS 裝置的管理員。
管理員可以在 ChromeOS 裝置上使用 Kerberos 票證,為支援 Kerberos 驗證的內部資源啟用單一登入 (SSO) 服務。內部資源可能包含網站、檔案共用區和憑證等。
相關規定
- 搭載 ChromeOS 91 以上版本的裝置。
- 目前不支援資訊站。
- Active Directory 環境。
設定 Kerberos
-
-
在管理控制台中,依序點選「選單」圖示 「裝置」「Chrome」「設定」。系統會預設開啟「使用者與瀏覽器設定」頁面。
如果您已註冊 Chrome 瀏覽器雲端管理服務,請依序點選「選單」圖示 「Chrome 瀏覽器」「設定」。
- (選用) 按一下頂端的「受管理的訪客工作階段設定」。
-
如要為所有使用者套用設定,請選取頂層機構單位;如果只要為部分使用者套用設定,請選取子機構單位。
-
前往 Kerberos。
-
按一下「Kerberos 票證」。
-
選取「啟用 Kerberos」。
-
(選用) (限使用者和瀏覽器) 在使用者登入後自動要求 Kerberos 票證。
-
選取「自動新增 Kerberos 帳戶」。
-
輸入主要名稱。系統支援 ${LOGIN_ID} 和 ${LOGIN_EMAIL} 預留位置。
-
選取「採用預設的 Kerberos 設定」。您也可以選取「自訂 Kerberos 設定」,然後指定支援您環境所需的 Kerberos 設定。詳情請參閱設定票證的取得方式。
注意:請檢查您的 Kerberos 設定,亦即 krb5.conf。預設設定會強制執行高強度 AES 加密,但您的環境可能未全面支援這種加密方式。
-
-
按一下「儲存」。
設定如何在裝置上使用 Kerberos
-
-
在管理控制台中,依序點選「選單」圖示 「裝置」「Chrome」「設定」。系統會預設開啟「使用者與瀏覽器設定」頁面。
如果您已註冊 Chrome 瀏覽器雲端管理服務,請依序點選「選單」圖示 「Chrome 瀏覽器」「設定」。
- (選用) 按一下頂端的「受管理的訪客工作階段設定」。
-
如要為所有使用者套用設定,請選取頂層機構單位;如果只要為部分使用者套用設定,請選取子機構單位。
- 前往「網路」部分。
- 設定允許的驗證伺服器:
- 按一下「整合式驗證伺服器」。
- 輸入受 Kerberos 保護的網站網址。這樣一來,使用者不必登入,就能利用使用中的票證來存取您列出的伺服器。
注意:您可以新增多個伺服器名稱 (以半形逗號分隔),也可以使用萬用字元 (*)。不過,請不要在網域名稱中加入萬用字元。舉例來說,請避免在清單中加入 *example.com。範例清單如下:*.example.com, example.com。 - 按一下「儲存」。
- (僅限使用者和瀏覽器) 設定允許委派的伺服器:
- 按一下「Kerberos 委派伺服器」。
- 輸入允許 Chrome 委派的伺服器網址。
注意:您可以新增多個伺服器名稱 (以半形逗號分隔),也可以使用萬用字元 (*)。 - 按一下「儲存」。
- (限使用者和瀏覽器) 指定是否要讓金鑰分配中心 (KDC) 政策委派 Kerberos 票證:
- 按一下「Kerberos 票證委派」。
- 選擇下列其中一種做法:
- 遵循 KDC 政策
- 忽略 KDC 政策
- 按一下「儲存」。
- (限使用者和瀏覽器) 指定用來產生 Kerberos 服務主體名稱 (SPN) 的名稱來源。
- 按一下「Kerberos 服務主體名稱」。
- 選擇下列其中一種做法:
- 使用標準 DNS 名稱
- 使用原始的輸入名稱
- 按一下「儲存」。
- (限使用者和瀏覽器) 指定產生的 Kerberos SPN 是否應納入非標準通訊埠。
- 按一下「Kerberos SPN 通訊埠」。
- 選擇下列其中一種做法:
- 納入非標準通訊埠
- 不要納入非標準通訊埠
- 按一下「儲存」。
- (限使用者和瀏覽器) 指定是否允許網頁中的第三方附屬內容彈出 HTTP 基本驗證對話方塊。
- 按一下「跨來源驗證」
- 選擇下列其中一種做法:
- 允許跨原始來源驗證
- 禁止跨原始來源驗證
- 按一下「儲存」。
使用者可執行的動作
新增票證
當使用者嘗試存取受 Kerberos 保護的資源時,可以選擇新增票證,或在沒有票證的情況下繼續操作。
如要新增票證,請按照下列步驟操作:
- 按一下方塊中的「管理票證」。
- 在「Kerberos 票證」頁面中,按一下「新增票證」。
- 輸入您的 Active Directory 使用者名稱和密碼。
注意:ChromeOS 僅支援 <使用者名稱>@<網域名稱> 標記法,不支援 <網域名稱>/<使用者名稱> 標記法。 - (選用) 如要自動重新整理票證,請勾選「記住密碼」方塊。
- (選用) 編輯設定檔:
- 按一下「進階」。
- 變更 Kerberos 設定資訊,例如票證生命週期、加密類型和網域領域的對應關係。詳情請參閱設定票證的取得方式。
- 按一下「儲存」。
- 按一下「新增」。
- 請重新載入想瀏覽的網頁。
注意:Kerberos 須具備特定的 DNS 設定,尤其是 _kerberos
和 _kerberos-master
服務的 SRV 記錄。詳情請參閱下方的疑難排解。
設定使用中票證
使用者可以在 ChromeOS 裝置上新增多個 Kerberos 票證。不過,一次只能啟用一張票證用於驗證作業。使用者可以切換票證,進而存取需要不同授權等級的資源。舉例來說,某個內部網頁需要具備更高權限層級的 Kerberos 票證時,使用者就可以這麼做。
- 如果尚未登入受管理的 ChromeOS 裝置,請先登入。
- 選取右下方的時間。
- 按一下「設定」圖示 。
- 在「使用者」部分按一下「Kerberos 票證」。
- 找出要設為使用中的票證。
- 依序按一下右側的「更多」圖示 「設為使用中票證」。
更新票證及修改設定
根據預設,票證的有效期限為 10 小時,且可持續一週,使用者不必重新輸入使用者名稱和密碼。當票證到期且無法自動更新時,系統會顯示訊息,提醒使用者須手動更新票證。如果使用中的票證過期,Kerberos 驗證將會失效,直到使用者更新票證為止。
- 如果尚未登入受管理的 ChromeOS 裝置,請先登入。
- 選取右下方的時間。
- 按一下「設定」圖示 。
- 在「使用者」部分按一下「Kerberos 票證」。
- 找出要更新的票證。
- 按一下「更新」。
如果票證未到期,請依序按一下右側的「更多」圖示 「立即更新」。 - 輸入您的 Active Directory 使用者名稱和密碼。
注意:ChromeOS 僅支援 <使用者名稱>@<網域名稱> 標記法,不支援 <網域名稱>/<使用者名稱> 標記法。 - (選用) 如要自動更新票證,請勾選「記住密碼」核取方塊。
- (選用) 編輯設定檔:
- 按一下「進階」。
- 變更 Kerberos 設定資訊,例如票證生命週期、加密類型和網域領域的對應關係。詳情請參閱設定票證的取得方式。
- 按一下「儲存」。
- 按一下「更新」。
移除票證
- 如果尚未登入受管理的 ChromeOS 裝置,請先登入。
- 選取右下方的時間。
- 按一下「設定」圖示 。
- 在「使用者」部分按一下「Kerberos 票證」。
- 找出要移除的票證。
- 依序按一下右側的「更多」圖示 「從這個裝置中移除」。
設定票證的取得方式
區域 | 關係 |
---|---|
[libdefaults] |
|
[realms] |
|
[domain_realm] |
任何值 |
[capaths] |
任何值 |
範例:要求使用不同的票證生命週期
[libdefaults]
ticket_lifetime = 16h
以上範例要求票證有效期限須達 16 小時。生命週期在伺服器端可能有所限制,預設值是 10 小時。
如何變更伺服器端的限制:
- 開啟群組原則管理主控台。
- 依序前往「設定」「安全性設定」「帳戶原則」「Kerberos 原則」。
- 修改「使用者票證最長留存期」原則。
範例:要求票證使用不同的更新生命週期
[libdefaults]
renew_lifetime = 14d
以上範例要求票證擁有 14 天的更新週期。更新的生命週期在伺服器端可能有所限制,預設值是 7 天。
如何變更伺服器端的限制:
- 開啟群組原則管理主控台。
- 依序前往「設定」「安全性設定」「帳戶原則」「Kerberos 原則」。
- 修改「使用者票證更新的最長存留期」原則。
疑難排解
一般來說,您可以使用 Linux 上的 kinit 指令列工具排解問題。ChromeOS 是以 Linux 做為基礎,而 Kerberos 票證實作時會使用 kinit
,因此,如果您可以在 Linux 上使用 kinit
取得 Kerberos 票證,那麼您在 ChromeOS 中也應該能取得設定相同的票證。
錯誤訊息:KDC 不支援加密類型
根據預設,Google 會強制執行高強度 AES 加密。如果您看到加密類型相關錯誤訊息,可能是部分伺服器環境無法處理 AES 加密。建議您修正這個問題。
否則,請考慮從開發設定中移除 default_tgs_enctypes
、default_tkt_enctypes
和 permission_enctypes
這三行,這樣即可啟用 MIT Kerberos 說明文件中的所有加密類型 (標示為低強度者除外)。請記得確認安全性設定是否符合您的需求,因為部分加密已不再屬於高強度類型。
確認所有加密類型皆正常運作後,建議您將 default_tgs_enctypes
、default_tkt_enctypes
和 permitted_enctypes
加密類型限制為適當類型的子集合,藉此將安全性風險降到最低。
錯誤訊息:無法連線至指定領域的伺服器
- 確認您輸入的 Kerberos 使用者名稱正確無誤。
Kerberos 使用者名稱 ( <使用者名稱>@example.com) 包含以下部分:- 使用者登入名稱 (也稱為 sAMAccountName)
- Kerberos 領域,通常與 Windows 網域名稱相符
- 確認網路連線設定正確無誤。
確認 ChromeOS 裝置可以透過標準 Kerberos 通訊埠 88 連線至伺服器。 - 確認 DNS 設定正確無誤。
Kerberos 會索取特定 DNS SRV 記錄,以便找出 Kerberos 服務的 DNS 網域名稱。舉例來說,如果登入網域 (或領域) 是 example.com,而唯一的 Kerberos 服務的 DNS 網域名稱為 dc.example.com,則應加入以下 DNS SRV 記錄:
服務 | 通訊協定 | 優先順序 | 權重 | 通訊埠 | 目標 (主機名稱) |
---|---|---|---|---|---|
_kerberos | _udp.dc._msdcs | 0 | 100 | 88 | dc.example.com |
_kerberos | _tcp.dc._msdcs | 0 | 100 | 88 | dc.example.com |
_kerberos | _udp | 0 | 100 | 88 | dc.example.com |
_kerberos | _tcp | 0 | 100 | 88 | dc.example.com |
_kerberos-master | _udp.dc._msdcs | 0 | 100 | 88 | dc.example.com |
_kerberos-master | _tcp.dc._msdcs | 0 | 100 | 88 | dc.example.com |
_kerberos-master | _udp | 0 | 100 | 88 | dc.example.com |
_kerberos-master | _tcp | 0 | 100 | 88 | dc.example.com |
如果無法修改 DNS 設定,可以在 Kerberos 設定中加入這些對應關係。
例如:
[realms]
EXAMPLE.COM = {
kdc = dc.example.com
master_kdc = dc.example.com
}
如果還是無法順利取得 Kerberos 票證,請收集系統記錄。如果可以的話,也請收集 tcpdump 或 wireshark 記錄,然後與支援團隊聯絡。