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

使用Terraform创建EKS集群时读取Add-On出现IAM权限报错

问题根因

你配置的EKS集群部署用IAM最小权限策略,缺失了EKS附加组件(Add-On)对应的API操作权限。Terraform在创建、读取coredns、vpc-cni、kube-proxy三个默认EKS插件资源时,调用相关EKS接口被权限拦截,才会抛出AccessDeniedException报错。

修复方案
  • 在现有IAM策略中补充EKS Add-On相关的最小权限集合,不需要放开全量EKS操作,仅需添加插件管理相关动作即可,参考权限片段如下:
{
    "Effect": "Allow",
    "Action": [
        "eks:ListAddons",
        "eks:DescribeAddon",
        "eks:CreateAddon",
        "eks:UpdateAddon",
        "eks:DeleteAddon",
        "eks:TagResource",
        "eks:UntagResource"
    ],
    "Resource": [
        "arn:aws:eks:<你的区域>:<你的AWS账号ID>:cluster/*",
        "arn:aws:eks:<你的区域>:<你的AWS账号ID>:addon/*/*/*"
    ]
}

注:如果使用中国区AWS,将ARN前缀的aws替换为aws-cn即可。

  • 检查权限拦截的额外规则:如果你使用AWS Organizations管理账号,需要确认账号绑定的SCP服务控制策略没有显式拒绝上述EKS操作;同时检查当前IAM用户是否配置了权限边界(Permissions Boundary),权限边界的限制优先级高于自定义允许策略,会导致权限不生效。
  • 校验凭证一致性:权限更新后,先执行aws sts get-caller-identity确认当前Terraform运行环境使用的IAM身份,就是你绑定了新策略的用户/角色,避免错用其他无权限的本地凭证、实例角色凭证,确认无误后重新执行terraform apply即可。

如果你使用的是社区公开的terraform-aws-eks官方模块,其文档标注的最小权限清单默认包含上述Add-On操作权限,自行裁剪策略时很容易漏掉这部分插件相关的权限动作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 12:51:19