Amazon CloudFront
开发人员指南 (API 版本 2016-09-29)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

CloudFront API 权限:操作、资源和条件参考

在设置 访问控制 和编写可附加到 IAM 身份的权限策略(基于身份的策略)时,您可以将下面的作为参考。这些表列出每个 CloudFront API 操作、您可以授予执行权限的相应操作以及您可以授予权限的 AWS 资源。您可以在策略的 Action 字段中指定这些操作,并在策略的 Resource 字段中指定资源值。

您可以在 CloudFront 策略中使用 AWS 范围的条件键来表达条件。有关 AWS 范围内的密钥的完整列表,请参阅 IAM 用户指南 中的可用密钥

对 Web 分配执行操作所需的权限

CreateDistribution

所需权限(API 操作):

  • cloudfront:CreateDistribution

  • acm:ListCertificates(仅 CloudFront 控制台)

  • 仅在您将 CloudFront 配置为保存访问日志时:

    • s3:GetBucketAcl

    • s3:PutBucketAcl

    • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源:

  • CloudFront: *

  • ACM: *

  • Amazon S3:如果将 CloudFront 配置为保存访问日志,您可以选择限制对指定存储桶的访问。

CreateDistributionWithTags

所需权限(API 操作):

  • cloudfront:CreateDistributioncloudfront:TagResource

  • acm:ListCertificates(仅 CloudFront 控制台)

  • 仅在您将 CloudFront 配置为保存访问日志时:

    • s3:GetBucketAcl

    • s3:PutBucketAcl

    • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源:

  • CloudFront: *

  • ACM: *

  • Amazon S3:如果将 CloudFront 配置为保存访问日志,您可以选择限制对指定存储桶的访问。

GetDistribution

所需的权限(API 操作):cloudfront:GetDistributionacm:ListCertificates(仅 CloudFront 控制台)

资源: *

GetDistributionConfig

所需的权限(API 操作):cloudfront:GetDistributionConfigacm:ListCertificates(仅 CloudFront 控制台)

资源: *

ListDistributions

所需的权限(API 操作):cloudfront:ListDistributions

资源: *

UpdateDistribution

所需权限(API 操作):

  • cloudfront:UpdateDistribution

  • acm:ListCertificates(仅 CloudFront 控制台)

  • 仅在您将 CloudFront 配置为保存访问日志时:

    • s3:GetBucketAcl

    • s3:PutBucketAcl

    • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源:

  • CloudFront: *

  • ACM: *

  • Amazon S3:如果将 CloudFront 配置为保存访问日志,您可以选择限制对指定存储桶的访问。

DeleteDistribution

所需的权限(API 操作):cloudfront:DeleteDistribution

资源: *

对 RTMP 分配执行操作所需的权限

CreateStreamingDistribution

所需的权限(API 操作):cloudfront:CreateStreamingDistribution

仅在您将 CloudFront 配置为保存访问日志时:

  • s3:GetBucketAcl

  • s3:PutBucketAcl

  • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源: *

如果您将 CloudFront 配置为保存访问日志,则可以选择限制对指定存储桶的访问。

CreateStreamingDistributionWithTags

所需的权限(API 操作):cloudfront:CreateStreamingDistributioncloudfront:TagResource

仅在您将 CloudFront 配置为保存访问日志时:

  • s3:GetBucketAcl

  • s3:PutBucketAcl

  • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源: *

如果您将 CloudFront 配置为保存访问日志,则可以选择限制对指定存储桶的访问。

GetStreamingDistribution

所需的权限(API 操作):cloudfront:GetStreamingDistribution

资源: *

GetStreamingDistributionConfig

所需的权限(API 操作):cloudfront:GetStreamingDistributionConfig

资源: *

ListStreamingDistributions

所需的权限(API 操作):cloudfront:ListStreamingDistributions

资源: *

UpdateStreamingDistribution

所需的权限(API 操作):cloudfront:UpdateStreamingDistribution

仅在您将 CloudFront 配置为保存访问日志时:

  • s3:GetBucketAcl

  • s3:PutBucketAcl

  • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源: *

如果您将 CloudFront 配置为保存访问日志,则可以选择限制对指定存储桶的访问。

DeleteStreamingDistribution

所需的权限(API 操作):cloudfront:DeleteDistribution

资源: *

对失效执行操作所需的权限

CreateInvalidation

所需的权限(API 操作):cloudfront:CreateInvalidation

资源: *

GetInvalidation

所需的权限(API 操作):cloudfront:GetInvalidation

资源: *

ListInvalidations

所需的权限(API 操作):cloudfront:ListInvalidations

资源: *

对源访问身份执行操作所需的权限

CreateCloudFrontOriginAccessIdentity

所需的权限(API 操作):cloudfront:CreateCloudFrontOriginAccessIdentity

资源: *

GetCloudFrontOriginAccessIdentity

所需的权限(API 操作):cloudfront:GetCloudFrontOriginAccessIdentity

资源: *

GetCloudFrontOriginAccessIdentityConfig

所需的权限(API 操作):cloudfront:GetCloudFrontOriginAccessIdentityConfig

资源: *

ListCloudFrontOriginAccessIdentities

所需的权限(API 操作):cloudfront:ListDistributions

资源: *

UpdateCloudFrontOriginAccessIdentity

所需的权限(API 操作):cloudfront:UpdateCloudFrontOriginAccessIdentity

资源: *

DeleteCloudFrontOriginAccessIdentity

所需的权限(API 操作):cloudfront:DeleteCloudFrontOriginAccessIdentity

资源: *

与 Lambda@Edge 相关的 CloudFront 操作的所需权限

要使用 Lambda@Edge,您需要以下 CloudFront 权限,这样您才能创建或更新包含 Lambda 函数的触发器的分配。有关所需的 Lambda 权限的信息,请参阅 AWS Lambda Developer Guide 的“AWS Lambda@Edge”一章中的设置 IAM 权限

CreateDistribution

所需权限(API 操作):

  • cloudfront:CreateDistribution

  • acm:ListCertificates(仅 CloudFront 控制台)

  • 仅在您将 CloudFront 配置为保存访问日志时:

    • s3:GetBucketAcl

    • s3:PutBucketAcl

    • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源:

  • CloudFront: *

  • ACM: *

  • Amazon S3:如果将 CloudFront 配置为保存访问日志,您可以选择限制对指定存储桶的访问。

CreateDistributionWithTags

所需权限(API 操作):

  • cloudfront:CreateDistributioncloudfront:TagResource

  • acm:ListCertificates(仅 CloudFront 控制台)

  • 仅在您将 CloudFront 配置为保存访问日志时:

    • s3:GetBucketAcl

    • s3:PutBucketAcl

    • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源:

  • CloudFront: *

  • ACM: *

  • Amazon S3:如果将 CloudFront 配置为保存访问日志,您可以选择限制对指定存储桶的访问。

UpdateDistribution

所需权限(API 操作):

  • cloudfront:UpdateDistribution

  • acm:ListCertificates(仅 CloudFront 控制台)

  • 仅在您将 CloudFront 配置为保存访问日志时:

    • s3:GetBucketAcl

    • s3:PutBucketAcl

    • 存储桶的 S3 ACL 必须向您授予 FULL_CONTROL

资源:

  • CloudFront: *

  • ACM: *

  • Amazon S3:如果将 CloudFront 配置为保存访问日志,您可以选择限制对指定存储桶的访问。

对标签执行操作所需的权限

TagResource

所需的权限(API 操作):cloudfront:TagResource

资源: *

UntagResource

所需的权限(API 操作):cloudfront:UntagResource

资源: *

ListTagsForResource

所需的权限(API 操作):cloudfront:ListTagsForResource

资源: *