CloudFront政策仅使特定的分散分散无效



我正在使用s3 buccet存储文件和云范围来分发它们。我有一个可以自动处理同步的工具,并且效果很好。

但是,我也希望能够以编程方式创建云偏转无效。我需要在工具的策略中添加什么声明,以便仅针对此特定分布创建无效?

现在,我有这个说法:

{
    "Effect": "Allow",
    "Action": [
        "cloudfront:CreateInvalidation"
    ],
    "Resource": "*"
}

,但是,如您所见,它允许为帐户中的任何分布创建无效。

我试图将这些值用于Resource属性,但是由于某种原因,该工具给了我一个错误,称访问被拒绝:

  • arn:aws:cloudfront::12345678:distribution/ABCDEFG
  • arn:aws:cloudfront:::distribution/ABCDEFG

我需要在Resource属性中指定什么,以便仅针对特定分布创建无效?

它的ARN是arn:aws:cloudfront::12345678:distribution/ABCDEFG

更新:从2021年开始,cloudfront:CreateInvalidation操作支持资源级别的权限,可用于仅允许仅使特定的分布无效。请参阅下面的 @GraphicalDot的答案。原始答案 - 截至2017年 - 下面。

cloudfront:CreateInvalidation命令不支持资源级权限。因此,仅支持*。因此,不可能限制用户/角色仅能使特定分布无效。

来源:http://docs.aws.amazon.com/amazoncloudfront/latest/developerguide/cf-api-permissions-ref.html

现在CloudFront支持发行级别的权限。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "cloudfront:UpdateDistribution",
                "cloudfront:DeleteDistribution",
                "cloudfront:CreateInvalidation"
            ],
            "Resource": "arn:aws:cloudfront::<account_id>:distribution/<distribution_id>"
        }
    ]
}

更多详细信息:https://docs.amazonaws.cn/en_us/amazoncloudfront/latest/developerguide/access-control-overview.html

最新更新