Amazon CloudFront 的操作、资源和条件键 - 服务授权参考
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon CloudFront 的操作、资源和条件键

Amazon CloudFront(服务前缀:cloudfront)提供以下服务特定的资源、操作和条件上下文键以在 IAM 权限策略中使用。

参考:

Amazon CloudFront 定义的操作

您可以在 Action 策略语句的 IAM 元素中指定以下操作。可以使用策略授予在 AWS 中执行操作的权限。您在策略中使用一项操作时,通常使用相同的名称允许或拒绝对 API 操作或 CLI 命令的访问。但在某些情况下,单一动作可控制对多项操作的访问。还有某些操作需要多种不同的动作。

资源类型列指示每项操作是否支持资源级权限。如果该列没有任何值,您必须在策略语句的 Resource 元素中指定所有资源(“*”)。如果该列包含一种资源类型,则可以在含有该操作的语句中指定该类型的 ARN。必需资源在表中以星号 (*) 表示。如果在使用该操作的语句中指定资源级权限 ARN,则它必须属于该类型。某些操作支持多种资源类型。如果资源类型是可选的(未指示为必需),则可以选择使用一种类型而不使用其他类型。

有关下表中各列的详细信息,请参阅 操作表

操作 描述 访问级别 资源类型(* 为必需) 条件键 相关操作
CreateCachePolicy 此操作将新的缓存策略添加到 CloudFront。 写入
CreateCloudFrontOriginAccessIdentity 此操作会创建一个新的 CloudFront 源访问身份。 写入

origin-access-identity*

CreateDistribution 此操作将创建新的 Web 分配。 写入

distribution*

CreateDistributionWithTags 此操作将创建带有标签的新 Web 分配。 标记

distribution*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateFieldLevelEncryptionConfig 此操作创建一个新的字段级加密配置。 写入
CreateFieldLevelEncryptionProfile 此操作创建一个字段级加密配置文件。 写入
CreateInvalidation 此操作会创建一个新的失效批处理请求。 写入

distribution*

CreateKeyGroup 此操作将一个新的密钥组添加到 CloudFront 写入
CreateMonitoringSubscription 此操作对指定的 CloudFront 分配启用其他 CloudWatch 指标。额外指标会产生额外费用 写入
CreateOriginRequestPolicy 此操作将新的源请求策略添加到 CloudFront。 写入
CreatePublicKey 此操作将一个新的公有密钥添加到 CloudFront。 写入
CreateRealtimeLogConfig 此操作创建实时日志配置 写入
CreateStreamingDistribution 此操作将创建新的 RTMP 分配。 写入

streaming-distribution*

CreateStreamingDistributionWithTags 此操作将创建带有标签的新 RTMP 分配。 标记

streaming-distribution*

aws:RequestTag/${TagKey}

aws:TagKeys

DeleteCachePolicy 此操作删除缓存策略。 写入
DeleteCloudFrontOriginAccessIdentity 此操作删除 CloudFront 源访问身份。 写入

origin-access-identity*

DeleteDistribution 此操作删除 Web 分配。 写入

distribution*

DeleteFieldLevelEncryptionConfig 此操作删除字段级加密配置。 写入
DeleteFieldLevelEncryptionProfile 此操作删除一个字段级加密配置文件。 写入
DeleteKeyGroup 此操作删除一个密钥组 写入
DeleteMonitoringSubscription 此操作对指定的 CloudFront 分配禁用其他 CloudWatch 指标 写入
DeleteOriginRequestPolicy 此操作删除源请求策略。 写入
DeletePublicKey 此操作从 CloudFront 删除公有密钥。 写入
DeleteRealtimeLogConfig 此操作删除实时日志配置 写入
DeleteStreamingDistribution 此操作会删除 RTMP 分配。 写入

streaming-distribution*

GetCachePolicy 获取缓存策略 Read
GetCachePolicyConfig 获取缓存策略配置 Read
GetCloudFrontOriginAccessIdentity 获取有关 CloudFront 源访问身份的信息。 Read

origin-access-identity*

GetCloudFrontOriginAccessIdentityConfig 获取有关 Cloudfront 源访问身份的配置信息。 Read

origin-access-identity*

GetDistribution 获取有关 Web 分配的信息。 Read

distribution*

GetDistributionConfig 获取有关分配的配置信息。 Read

distribution*

GetFieldLevelEncryption 获取字段级加密配置信息。 Read
GetFieldLevelEncryptionConfig 获取字段级加密配置信息。 Read
GetFieldLevelEncryptionProfile 获取字段级加密配置信息。 Read
GetFieldLevelEncryptionProfileConfig 获取字段级加密配置文件的配置信息。 Read
GetInvalidation 获取有关失效的信息。 Read

distribution*

GetKeyGroup 此操作会获取一个密钥组 Read
GetKeyGroupConfig 此操作会获取密钥组配置 Read
GetMonitoringSubscription 此操作会获取有关以下内容的信息:是否为指定的 CloudFront 分配启用其他 CloudWatch 指标 Read
GetOriginRequestPolicy 获取源请求策略 Read
GetOriginRequestPolicyConfig 获取源请求策略配置 Read
GetPublicKey 获取公钥信息。 Read
GetPublicKeyConfig 获取公钥配置信息。 Read
GetRealtimeLogConfig 此操作会获取实时日志配置 Read
GetStreamingDistribution 获取有关 RTMP 分配的信息。 Read

streaming-distribution*

GetStreamingDistributionConfig 获取有关流分配的配置信息。 Read

streaming-distribution*

ListCachePolicies 列出已在 CloudFront 中为此账户创建的所有缓存策略。 List
ListCloudFrontOriginAccessIdentities 列出您的 CloudFront 源访问身份。 List
ListDistributions 列出与您的 AWS 账户关联的分配。 List
ListDistributionsByCachePolicyId 列出分配的分配 ID,这些分配具有与指定缓存策略关联的缓存行为。 List
ListDistributionsByKeyGroup 此操作列出分配的分配 ID,这些分配具有与指定密钥组关联的缓存行为。 List
ListDistributionsByOriginRequestPolicyId 列出分配的分配 ID,这些分配具有与指定源请求策略关联的缓存行为。 List
ListDistributionsByRealtimeLogConfig 此操作会获取具有与指定实时日志配置关联的缓存行为的分配列表 List
ListDistributionsByWebACLId 列出与具有指定 AWS WAF Web ACL 的 AWS 账户关联的分配。 List
ListFieldLevelEncryptionConfigs 列出已为此账户在 CloudFront 中创建的所有字段级加密配置。 List
ListFieldLevelEncryptionProfiles 列出已为此账户在 CloudFront 中创建的所有字段级加密配置文件。 List
ListInvalidations 列出您的失效批处理。 List

distribution*

ListKeyGroups 此操作列出已在 CloudFront 中为此账户创建的所有密钥组 List
ListOriginRequestPolicies 列出已在 CloudFront 中为此账户创建的所有源请求策略。 List
ListPublicKeys 列出已添加到此账户的 CloudFront 中的所有公有密钥。 List
ListRealtimeLogConfigs 此操作获取实时日志配置列表 List
ListStreamingDistributions 列出您的 RTMP 分配。 List
ListTagsForResource 列出 CloudFront 资源的标签。 Read

distribution

streaming-distribution

TagResource 将标签添加到 CloudFront 资源。 标记

distribution

streaming-distribution

aws:RequestTag/${TagKey}

aws:TagKeys

UntagResource 从 CloudFront 资源中删除标签。 标记

distribution

streaming-distribution

aws:TagKeys

UpdateCachePolicy 此操作更新缓存策略。 写入
UpdateCloudFrontOriginAccessIdentity 此操作将设置 CloudFront 源访问身份的配置。 写入

origin-access-identity*

UpdateDistribution 此操作将更新 Web 分配的配置。 写入

distribution*

UpdateFieldLevelEncryptionConfig 此操作更新字段级加密配置。 写入
UpdateFieldLevelEncryptionProfile 此操作更新一个字段级加密配置文件。 写入
UpdateKeyGroup 此操作更新密钥组 写入
UpdateOriginRequestPolicy 此操作更新源请求策略。 写入
UpdatePublicKey 此操作更新公有密钥信息。 写入
UpdateRealtimeLogConfig 此操作更新实时日志配置 写入
UpdateStreamingDistribution 此操作将更新 RTMP 分配的配置。 写入

streaming-distribution*

Amazon CloudFront 定义的资源类型

以下资源类型是由该服务定义的,可以在 IAM 权限策略语句的 Resource 元素中使用这些资源类型。操作表中的每个操作指定了可以使用该操作指定的资源类型。您也可以在策略中包含条件键,从而定义资源类型。这些键显示在表的最后一列。有关下表中各列的详细信息,请参阅 资源类型表

资源类型 ARN 条件键
distribution arn:${Partition}:cloudfront::${Account}:distribution/${DistributionId}

aws:ResourceTag/${TagKey}

streaming-distribution arn:${Partition}:cloudfront::${Account}:streaming-distribution/${DistributionId}

aws:ResourceTag/${TagKey}

origin-access-identity arn:${Partition}:cloudfront::${Account}:origin-access-identity/${Id}
field-level-encryption arn:${Partition}:cloudfront::${Account}:field-level-encryption/${Id}
field-level-encryption-profile arn:${Partition}:cloudfront::${Account}:field-level-encryption-profile/${Id}
cache-policy arn:${Partition}:cloudfront::${Account}:cache-policy/${Id}
origin-request-policy arn:${Partition}:cloudfront::${Account}:origin-request-policy/${Id}
realtime-log-config arn:${Partition}:cloudfront::${Account}:realtime-log-config/${Name}

Amazon CloudFront 的条件键

Amazon CloudFront 定义了以下条件键,可用于 IAM 策略的 Condition 元素。您可以使用这些键进一步细化应用策略语句的条件。有关下表中各列的详细信息,请参阅 条件键表

要查看适用于所有服务的全局条件键,请参阅可用的全局条件键

条件键 描述 类型
aws:RequestTag/${TagKey} 根据在请求中是否具有标签键值对以筛选操作 字符串
aws:ResourceTag/${TagKey} 根据附加到资源的标签键值对筛选操作 字符串
aws:TagKeys 根据在请求中是否具有标签键以筛选操作 字符串