觀點 · 資訊分享
Amazon EKS 一個叢集可接 10 個外部 OIDC 登入來源:員工、外包、CI/CD 各走各的身分
AWS 在 8 月 24 日宣布,EKS 叢集現在能同時綁定最多 10 個外部 OIDC 身分提供者,不用再把所有使用者合併成一個來源,也不必自己架身分轉接服務,而且沒有額外費用。
- 發布
- 2026-08-24
- 篇幅
- 約 4 分鐘 · 1,830 字
- 結構
- 7 節 + 3 題常見問題
- 標籤

一句話看懂:Amazon EKS 的叢集現在最多可以同時接 10 個外部登入來源(OIDC),員工、外包人員、自動部署系統可以各走各的,不用硬擠進同一個。

先用白話講:叢集怎麼知道「你是誰」?
EKS 是 AWS 代管的 Kubernetes 服務,可以想成一個放滿容器的大倉庫。要進倉庫的人很多:公司員工、外包廠商、還有會自動跑的部署機器人。
倉庫門口需要一位警衛來確認身分。OIDC(OpenID Connect)是一套常見的「登入證明」規格,像是你在網站按「用 Google 登入」背後用的就是它。以前 EKS 的警衛可以接受 AWS 本身的帳號(IAM),也可以接外部的 OIDC 登入來源,但外部來源的數量有限;這次放寬到最多 10 個。
發生什麼事
AWS 在 8 月 24 日宣布:EKS 現在支援「每個叢集綁定多個外部 OIDC 身分提供者」,最多 10 個。官方舉的情境很實際:
- 員工用公司的登入系統
- 外包人員用另一套
- CI/CD(自動建置部署)系統再用一套
這些以前可能得先整併成同一個來源,或是自己架一個「身分轉接服務」;現在可以各自直接綁到叢集上。每個來源獨立設定、獨立對應身分,原本的 IAM 登入也繼續能用。
費用方面,官方寫明沒有額外費用,所有提供 EKS 的區域都能用。
有什麼限制?
AWS 的使用指南補充了一些細節(我是 10 月閱讀的版本,數字可能與 8 月當時略有差異):
| 面向 | 說明 |
|---|---|
| 數量 | Kubernetes 1.32 以上的叢集最多 10 個;更舊的版本只能 1 個 |
| 設定大小 | 所有 OIDC 設定合計要小於 12 KB |
| 唯一性 | 每個來源的網址(issuerUrl)和名稱都不能重複 |
| 生效時間 | 綁定是叢集更新,會進入 UPDATING 狀態,可能要幾分鐘 |
| 登入主控台 | 不能用 OIDC 帳號登入 AWS 主控台 |
| IAM | 不能關掉,因為節點加入叢集還是需要它 |
給開發者的技術細節
設定方式跟以前一樣:在 AWS 管理主控台,或用 AssociateIdentityProviderConfig API(AWS CLI 與 SDK)。用 eksctl 的範例大致如下,只有 name、type、issuerUrl、clientId 是必填:
identityProviders:
- name: contractors
type: oidc
issuerUrl: https://login.example.com
clientId: kubernetes
usernameClaim: email
usernamePrefix: "contractor:"
groupsClaim: groups
groupsPrefix: "contractor:"
requiredClaims:
hd: example.com
多個來源同時存在時,官方文件給了三個建議:
- 一定要設前綴:每個來源設不同的
usernamePrefix與groupsPrefix,避免兩個來源產生同名的使用者或群組,造成權限混淆 - 驗證權杖內容:用
requiredClaims限制必須帶有哪些欄位,只接受你授權的權杖 - 權杖只放必要資訊:減少萬一外洩時暴露的內容
另外,前綴不可以使用 system: 開頭,這是 Kubernetes 保留的名稱。
我的看法
這個功能對小團隊比較像「把麻煩的事情拿掉」:以前如果客戶公司有自己的員工登入系統,加上我們這邊接案人員另一套,就得想辦法合併或自己架轉接器。現在可以各自綁,在權限設計上清楚得多。
不過它也有代價:來源一多,命名衝突與權限混淆的風險就跟著上來。我會先把前綴規則定好,再開始加來源;而且每個來源只給最小的群組權限,不要因為「反正都是登入」就圖方便共用同一組權限。
自架 Kubernetes 的人,這個功能是託管服務的專屬便利,但設計概念值得參考:登入來源越多,越需要用前綴與必要欄位把門管好。
名詞小辭典
- Kubernetes(K8s):管理大量容器的開源系統,EKS 是 AWS 代管的版本。
- OIDC:一種身分驗證規格,讓你用第三方登入來源證明「我是誰」。
- IAM:AWS 自己的身分與權限管理系統。
- CI/CD:自動測試、建置並部署程式的流程,常由機器人帳號執行。