將 IRSA 與 AWS SDK 搭配使用 - Amazon EKS

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

將 IRSA 與 AWS SDK 搭配使用

使用憑證

若要使用服務帳戶來自 IAM 角色的憑證,您的程式碼可以使用 any AWS SDK 為具有 SDK AWS 的服務建立用戶端,並根據預設, SDK 會在連結的位置中搜尋,以供 AWS Identity and Access Management 憑證使用。如果您在建立用戶端或以其他方式初始化 IAM 時未指定憑證提供者,則會使用服務帳戶憑證的 SDK 角色。

這是因為服務帳戶的 IAM 角色已新增為預設憑證鏈中的步驟。如果您的工作負載目前使用登入資料鏈中較早的登入資料,即使您為相同工作負載的服務帳戶設定 IAM 角色,這些登入資料仍會繼續使用。

SDK 會自動交換服務帳戶 OIDC 使用 AssumeRoleWithWebIdentity動作,從 AWS Security Token Service 取得臨時憑證的權杖。Amazon EKS 和此 SDK 動作會繼續輪換臨時憑證,方法是在憑證過期之前更新它們。

服務帳戶的 IAM 角色IAM 角色用於服務帳戶時,您 中的容器 Pods 必須使用支援透過 擔任 AWS SDK 角色的 IAM 版本 OpenID Connect Web 身分權杖檔案。請確定您使用下列版本 或更新版本的 AWS SDK:

許多熱門 Kubernetes 附加元件,例如 Cluster Autoscaler使用 AWS Load Balancer控制器路由網際網路流量Route Internet traffic with AWS Load Balancer Controller,以及 設定 Amazon VPC CNI 外掛程式以使用 IRSAAmazon VPC CNI 外掛程式 for Kubernetes 支援服務帳戶的 IAM 角色。

為確保您使用支援的 SDK,請遵循工具中偏好的 SDK 的安裝指示,在建置容器 AWS時建置 。