引言

在现代云原生应用的部署中,身份验证和授权是至关重要的环节。AWS EKS(Elastic Kubernetes Service)提供了强大的容器化解决方案,而 OpenID Connect(OIDC)则是一种灵活的认证协议,能够实现安全的身份验证和授权。本文将详细介绍如何在 AWS EKS 控制台创建 OIDC 提供商,以便为 Kubernetes 服务账户分配 IAM 角色,从而实现更细粒度的权限管理。

步骤一:获取 EKS 集群的 OIDC 提供商 URL

  1. 登录 AWS 管理控制台:使用您的 AWS 账户登录 AWS 管理控制台。

  2. 导航到 EKS 控制台:在控制台的搜索栏中输入“EKS”,然后选择“Amazon EKS”服务。

  3. 选择您的集群:在左侧导航栏中选择“Clusters”(集群),然后点击您要配置的集群名称。

  4. 获取 OIDC 提供商 URL:在集群的“Overview”(概述)选项卡中,找到“Details”(详细信息)部分,记下“OpenID Connect provider URL”(OpenID Connect 提供商 URL)的值。

步骤二:在 IAM 控制台创建 OIDC 提供商

打开 IAM 控制台:在 AWS 控制台中,点击“Services”(服务),然后选择“IAM”(身份与访问管理)。

  1. 选择标识提供程序:在左侧导航栏中,选择“Access management”(访问管理)下的“Identity Providers”(身份提供者)。

  2. 检查现有提供商:查看是否已存在与您的集群 OIDC 提供商 URL 匹配的提供商。如果已存在,您可以跳过创建步骤。

  3. 添加新的提供商

    • 点击“Add provider”(添加提供商)。

    • 在“Provider type”(提供者类型)中选择“OpenID Connect”。2025-01-04T20:13:08-vsbdqeya.png

    • 在“Provider URL”(提供商 URL)中输入您在 EKS 控制台获取的 OIDC 提供商 URL。

    • 在“Audience”(受众)中输入“sts.amazonaws.com”。2025-01-04T20:13:34-jkhhoznw.png

    • (可选)添加标签以标识该提供商所属的集群。

    • 点击“Add provider”(添加提供程序)完成创建。

    • 2025-01-04T20:12:56-uespodfp.png

步骤三:验证 OIDC 提供商

  1. 查看提供商列表:在 IAM 控制台的“Identity Providers”页面,您应能看到新创建的 OIDC 提供商。

  2. 检查提供商详细信息:点击提供商名称,查看其详细信息,包括提供商 URL、受众等。

结论

通过在 AWS EKS 控制台创建 OIDC 提供商,您可以为 Kubernetes 服务账户分配 IAM 角色,从而实现更安全和灵活的权限管理。这一过程不仅提高了集群的安全性,还为您的应用提供了更细粒度的访问控制。希望本文的指南能帮助您顺利完成 OIDC 提供商的创建和配置。