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

AWS IAM Policy逻辑OR运算符应用:ECR权限条件配置问询

调整ECR仓库IAM策略实现多条件任一匹配授权

要实现任一条件满足即授予ecr:*权限,你需要修改IAM策略的Condition部分,使用IAM的Or逻辑运算符包裹三个授权条件。以下是完整的策略示例:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "ecr:*",
      "Resource": "arn:aws:ecr:region:your-account-id:repository/your-repo-name",
      "Condition": {
        "Or": [
          {
            "StringEquals": {
              "aws:PrincipalArn": "arn:aws:iam::your-account-id:user/user01"
            }
          },
          {
            "StringEquals": {
              "aws:PrincipalArn": "arn:aws:iam::your-account-id:user/marketing"
            }
          },
          {
            "And": [
              {
                "StringEquals": {
                  "aws:PrincipalService": "lambda.amazonaws.com"
                }
              },
              {
                "StringEquals": {
                  "aws:PrincipalArn": "arn:aws:lambda:region:other-account-id:function/your-lambda-function-name"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}

关键调整说明:

  • 用Or逻辑运算符替代默认的And逻辑,确保三个条件中只要有一个满足就触发授权。
  • 前两个条件直接匹配指定IAM用户的ARN,验证请求方为user01或marketing用户。
  • 第三个条件通过And组合双重验证:确认请求方是Lambda服务(aws:PrincipalService),同时匹配指定外部账户的Lambda函数ARN,确保只有该特定函数能访问。

注意替换策略中的占位符:region、your-account-id、your-repo-name、other-account-id、your-lambda-function-name为你的实际信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 13:05:13