是否可以在 EKS 中启用客户端证书身份验证?

is it possible to enable client certificate authentication in EKS?

网上搜索,看到EKS只对IAM用户启用IAM认证。
是否可以手动配置客户端证书身份验证?我的意思是,在内部创建 Kubernetes 用户和角色,而不使用 IAM 身份验证。

Kubernetes 支持多种身份验证模块,例如:

  • X509 客户端证书

  • 服务帐户令牌

  • OpenID Connect 令牌

  • Webhook 令牌身份验证

  • 认证代理等

您可以在 official documentation 中找到有关它们的更多详细信息。

但是,Amazon EKS 仅使用一种特定的身份验证方法,即 Webhook 令牌身份验证的实现来对 Kube API 请求进行身份验证。这个webhook服务是由一个名为AWS IAM Authenticator的开源工具实现的,它有客户端和服务器端。

简而言之,客户端发送一个令牌(其中包括 AWS IAM 身份——用户或角色——进行 API 调用),该令牌在服务器端由 webhook 服务验证。

所以你的问题的答案是:如果你选择使用 EKS,你只有一个身份验证选项,即 IAM。

希望对您有所帮助。