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

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

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

参考:

Amazon CloudFront 定义的操作

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

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

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

操作 描述 访问级别 资源类型(* 为必需) 条件键 相关操作
AssociateAlias 授予权限以将别名与 CloudFront 分配关联 Write

distribution*

CreateCachePolicy 授予权限以将新的缓存策略添加到 CloudFront Write

cache-policy*

CreateCloudFrontOriginAccessIdentity 授予权限以创建新的 CloudFront 来源访问标识 (OAI) Write

origin-access-identity*

CreateDistribution 授予权限以创建新 Web 分配 写入

distribution*

CreateFieldLevelEncryptionConfig 授予权限以创建新的字段级加密配置 Write

field-level-encryption*

CreateFieldLevelEncryptionProfile 授予权限以创建字段级加密配置文件 Write

field-level-encryption-profile*

CreateFunction 授予权限以创建 CloudFront 函数 Write

function*

CreateInvalidation 授予权限以创建新的失效批处理请求 Write

distribution*

CreateKeyGroup 授予权限以将新的密钥组添加到 CloudFront Write
CreateMonitoringSubscription 授予权限以对指定的 CloudFront 分配启用其他 CloudWatch 指标。额外指标会产生额外费用 Write
CreateOriginRequestPolicy 授予权限以将新的源请求策略添加到 CloudFront Write

origin-request-policy*

CreatePublicKey 授予权限以将新的公有密钥添加到 CloudFront Write
CreateRealtimeLogConfig 授予权限以创建实时日志配置 写入

realtime-log-config*

CreateResponseHeadersPolicy 授予权限以将新的响应标头策略添加到 CloudFront 写入

response-headers-policy*

CreateStreamingDistribution 授予权限以创建新 RTMP 分配 Write

streaming-distribution*

CreateStreamingDistributionWithTags 授予权限以创建带标签的新 RTMP 分配 写入

streaming-distribution*

aws:RequestTag/${TagKey}

aws:TagKeys

DeleteCachePolicy 授予权限以删除缓存策略 Write

cache-policy*

DeleteCloudFrontOriginAccessIdentity 授予权限以删除 CloudFront 来源访问标识 (OAI) Write

origin-access-identity*

DeleteDistribution 授予权限以删除 Web 分配 Write

distribution*

DeleteFieldLevelEncryptionConfig 授予权限以删除字段级加密配置 Write

field-level-encryption*

DeleteFieldLevelEncryptionProfile 授予权限以删除字段级加密配置文件 Write

field-level-encryption-profile*

DeleteFunction 授予权限以删除 CloudFront 函数 Write

function*

DeleteKeyGroup 授予权限以删除密钥组 Write
DeleteMonitoringSubscription 授予权限以对指定的 CloudFront 分配禁用其他 CloudWatch 指标 Write
DeleteOriginRequestPolicy 授予权限以删除源请求策略 Write

origin-request-policy*

DeletePublicKey 授予权限以从 CloudFront 删除公有密钥 Write
DeleteRealtimeLogConfig 授予权限以删除实时日志配置 写入

realtime-log-config*

DeleteResponseHeadersPolicy 授予权限以删除响应标头策略 写入

response-headers-policy*

DeleteStreamingDistribution 授予权限以删除 RTMP 分配 Write

streaming-distribution*

DescribeFunction 授予权限以获取 CloudFront 函数摘要 Read

function*

GetCachePolicy 授予权限以获取缓存策略 Read

cache-policy*

GetCachePolicyConfig 授予权限以获取缓存策略配置 Read

cache-policy*

GetCloudFrontOriginAccessIdentity 授予权限以获取有关 CloudFront 来源访问标识 (OAI) 信息 Read

origin-access-identity*

GetCloudFrontOriginAccessIdentityConfig 授予权限以获取有关 CloudFront 来源访问标识 (OAI) 配置信息 Read

origin-access-identity*

GetDistribution 授予权限以获取有关 Web 分配信息 Read

distribution*

GetDistributionConfig 授予权限以获取有关分配的配置信息 Read

distribution*

GetFieldLevelEncryption 授予权限以获取字段级加密配置信息 Read

field-level-encryption*

GetFieldLevelEncryptionConfig 授予权限以获取字段级加密配置信息 Read

field-level-encryption*

GetFieldLevelEncryptionProfile 授予权限以获取字段级加密配置信息 Read

field-level-encryption-profile*

GetFieldLevelEncryptionProfileConfig 授予权限以获取字段级加密配置文件配置信息 Read

field-level-encryption-profile*

GetFunction 授予权限以获取 CloudFront 函数代码 Read

function*

GetInvalidation 授予权限以获取有关失效的信息 Read

distribution*

GetKeyGroup 授予权限以获取密钥组 Read
GetKeyGroupConfig 授予权限以获取密钥组配置 Read
GetMonitoringSubscription 授予权限以获取有关以下内容的信息:是否为指定的 CloudFront 分配启用其他 CloudWatch 指标 Read
GetOriginRequestPolicy 授予权限以获取源请求策略 Read

origin-request-policy*

GetOriginRequestPolicyConfig 授予权限以获取源请求策略配置 Read

origin-request-policy*

GetPublicKey 授予权限以获取公有密钥信息 Read
GetPublicKeyConfig 授予权限以获取公有密钥配置信息 Read
GetRealtimeLogConfig 授予权限以获取实时日志配置 读取

realtime-log-config*

GetResponseHeadersPolicy 授予权限以获取响应标头策略 读取

response-headers-policy*

GetResponseHeadersPolicyConfig 授予权限以获取响应标头策略配置 读取

response-headers-policy*

GetStreamingDistribution 授予权限以获取有关 RTMP 分配信息 Read

streaming-distribution*

GetStreamingDistributionConfig 授予权限以获取有关串流分配的配置信息 Read

streaming-distribution*

ListCachePolicies 授予权限以列出已在 CloudFront 中为此账户创建的所有缓存策略 List
ListCloudFrontOriginAccessIdentities 授予权限以列出您的 CloudFront 来源访问标识 (OAI) List
ListConflictingAliases 授予权限以列出 CloudFront 中与给定别名产生冲突的所有别名 List

distribution*

ListDistributions 授予权限以列出与您的 Amazon Web Services 账户 关联的分配 List
ListDistributionsByCachePolicyId 授予权限以列出分配的分配 ID,这些分配具有与指定缓存策略关联的缓存行为 List
ListDistributionsByKeyGroup 授予权限以列出分配的分配 ID,这些分配具有与指定密钥组关联的缓存行为 列表
ListDistributionsByLambdaFunction [仅权限] 授予权限以列出与 Lambda 函数关联的分配 列表
ListDistributionsByOriginRequestPolicyId 授予权限以列出分配的分配 ID,这些分配具有与指定源请求策略关联的缓存行为 List
ListDistributionsByRealtimeLogConfig 授予权限以获取具有与指定的实时日志配置关联的缓存行为的分配列表 列表
ListDistributionsByResponseHeadersPolicyId 授予权限以列出分配的分配 ID,这些分配具有与指定响应标头策略关联的缓存行为 列表
ListDistributionsByWebACLId 授予权限以列出与具有指定 Amazon WAF Web ACL 的 Amazon Web Services 账户 关联的分配 List
ListFieldLevelEncryptionConfigs 授予权限以列出已为此账户在 CloudFront 中创建的所有字段级加密配置 List
ListFieldLevelEncryptionProfiles 授予权限以列出已为此账户在 CloudFront 中创建的所有字段级加密配置文件 List
ListFunctions 授予权限以获取 CloudFront 函数列表 List
ListInvalidations 授予权限以列出失效批处理 List

distribution*

ListKeyGroups 授予权限以列出已在 CloudFront 中为此账户创建的所有密钥组 List
ListOriginRequestPolicies 授予权限以列出已在 CloudFront 中为此账户创建的所有源请求策略 List
ListPublicKeys 授予权限以列出已添加到此账户的 CloudFront 中的所有公有密钥 List
ListRealtimeLogConfigs 授予权限以获取实时日志配置列表 列表
ListResponseHeadersPolicies 授予权限以列出已在 CloudFront 中为此账户创建的所有响应标头策略 列表
ListStreamingDistributions 授予权限以列出 RTMP 分配 List
ListTagsForResource 授予权限以列出 CloudFront 资源的标签 Read

distribution

streaming-distribution

PublishFunction 授予权限以发布 CloudFront 函数 Write

function*

TagResource 授予权限以将标签添加到 CloudFront 资源中 Tagging

distribution

streaming-distribution

aws:RequestTag/${TagKey}

aws:TagKeys

TestFunction 授予权限以测试 CloudFront 函数 Write

function*

UntagResource 授予权限以从 CloudFront 资源中删除标签 Tagging

distribution

streaming-distribution

aws:TagKeys

UpdateCachePolicy 授予权限以更新缓存策略 Write

cache-policy*

UpdateCloudFrontOriginAccessIdentity 授予权限以设置 CloudFront 来源访问标识 (OAI) 的配置 Write

origin-access-identity*

UpdateDistribution 授予权限以更新 Web 分配的配置 Write

distribution*

UpdateFieldLevelEncryptionConfig 授予权限以更新字段级加密配置 Write

field-level-encryption*

UpdateFieldLevelEncryptionProfile 授予权限以更新字段级加密配置文件 Write

field-level-encryption-profile*

UpdateFunction 授予权限以更新 CloudFront 函数 Write

function*

UpdateKeyGroup 授予权限以更新密钥组 Write
UpdateOriginRequestPolicy 授予权限以更新源请求策略 Write

origin-request-policy*

UpdatePublicKey 授予权限以更新公有密钥信息 Write
UpdateRealtimeLogConfig 授予权限以更新实时日志配置 写入

realtime-log-config*

UpdateResponseHeadersPolicy 授予权限以更新响应标头策略 写入

response-headers-policy*

UpdateStreamingDistribution 授予权限以更新 RTMP 分配的配置 Write

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}
function arn:${Partition}:cloudfront::${Account}:function/${Name}
response-headers-policy arn:${Partition}:cloudfront::${Account}:response-headers-policy/${Id}

Amazon CloudFront 的条件键

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

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

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