You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

访问AWS EKS出现Unauthorized错误,已配置AWS CLI及管理员权限求排查

AWS EKS 访问出现 error: You must be logged in to the server (Unauthorized) 错误的排查方案

核心逻辑:EKS集群认证独立于IAM全局权限

即使你的IAM用户拥有AdministratorAccess,EKS集群默认仅允许创建集群的IAM实体访问,其他用户需要手动添加到集群的认证配置中。以下是具体排查和解决步骤:

  • 检查当前用户是否为集群创建者
    如果不是,必须将该用户添加到EKS的aws-auth ConfigMap(集群级别的认证配置):

    1. 使用集群创建者的账号执行命令获取当前配置:
      kubectl get configmap aws-auth -n kube-system -o yaml
      
    2. 在mapUsers节点下添加你的用户信息,示例:
      mapUsers:
        - userarn: arn:aws:iam::956675039632:user/test-eks-windows
          username: test-eks-windows
          groups:
            - system:masters
      
    3. 保存为aws-auth.yaml后更新配置:
      kubectl apply -f aws-auth.yaml
      
  • 验证kubeconfig文件有效性

    1. 查看本地kubeconfig内容,确认集群、用户、上下文信息匹配:
      cat ~/.kube/config
      
    2. 检查用户段的exec命令是否正确调用AWS CLI获取token,正确格式示例:
      user:
        exec:
          apiVersion: client.authentication.k8s.io/v1beta1
          args:
          - --region
          - ap-northeast-2
          - eks
          - get-token
          - --cluster-name
          - test-eks-cluster
          command: aws
      
  • 确认AWS CLI配置上下文

    1. 检查当前CLI使用的配置是否为目标用户:
      aws configure list
      
    2. 如果存在多个AWS配置文件,执行update-kubeconfig时需指定对应profile:
      aws eks --region ap-northeast-2 update-kubeconfig --name test-eks-cluster --profile your-profile-name
      
  • 排查IAM权限限制

    1. 确认用户拥有eks:DescribeCluster权限(update-kubeconfig命令依赖此权限获取集群端点等信息)
    2. 检查是否存在组织级SCP(服务控制策略)限制了EKS相关操作

内容的提问来源于stack exchange,提问作者hhk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 21:22:52