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

如何在单个IAM信任策略语句中配置两个IRSA服务账号

在单个IAM Statement中配置多个EKS IRSA服务账号的正确语法

IAM角色信任策略的JSON结构不允许存在重复键名,直接重复oidc.eks.namehere.amazonaws.com/id/TGIFridays:sub键自然会报错。要在单个Statement内实现多服务账号授权,只需将该键对应的值改为数组格式,把所有需要授权的服务账号sub标识放入数组即可。

修改后的完整信任策略

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowIRSAForMultipleSA",
            "Effect": "Allow",
            "Principal": {
                "Federated": "arn:aws:iam::123456:oidc-provider/oidc.eks.namehere.amazonaws.com/id/TGIFridays"
            },
            "Action": "sts:AssumeRoleWithWebIdentity",
            "Condition": {
                "StringEquals": {
                    "oidc.eks.namehere.amazonaws.com/id/TGIFridays:sub": [
                        "system:serviceaccount:namespace:name",
                        "system:serviceaccount:other-namespace:new-sa"
                    ],
                    "oidc.eks.namehere.amazonaws.com/id/TGIFridays:aud": "sts.amazonaws.com"
                }
            }
        }
    ]
}

配置说明

  • StringEquals条件中,当键值为数组时,请求中的对应字段匹配数组里任意一个值即可满足条件
  • 保留aud字段为sts.amazonaws.com,这是EKS IRSA的标准校验要求,确保只有合法的AWS STS请求能Assume该角色
  • 可按需在数组中继续添加更多服务账号的sub标识,格式统一为system:serviceaccount:<命名空间>:<服务账号名>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 00:42:18