使用 CloudFront 的服务相关角色
Amazon CloudFront 使用 Amazon Identity and Access Management(IAM)服务相关角色。服务相关角色是一种独特类型的 IAM 角色,直接与 CloudFront 相关联。服务相关角色由 CloudFront 预定义,并包含该服务代表您调用其他 Amazon 服务所需的一切权限。
服务相关角色可让您更轻松地设置 CloudFront,因为您不必手动添加必要的权限。CloudFront 定义其服务相关角色的权限,除非另外定义,否则只有 CloudFront 可以代入该角色。定义的权限包括信任策略和权限策略,以及不能附加到任何其他 IAM 实体的权限策略。
只有在首先删除相关资源后,您才能删除服务相关角色。这可以保护您的 CloudFront 资源,因为您不会无意中删除对资源的访问权限。
有关支持服务相关角色的其它服务的信息,请参阅使用 IAM 的 Amazon 服务,并查找服务相关角色列中显示为是的服务。选择是和链接,查看该服务的服务相关角色文档。
CloudFront VPC 源的服务相关角色权限
CloudFront VPC 源使用名为 AWSServiceRoleForCloudFrontVPCOrigin 的服务相关角色 – 允许 CloudFront 代表您管理 EC2 弹性网络接口和安全组。
AWSServiceRoleForCloudFrontVPCOrigin 服务相关角色信任以下服务代入该角色:
-
vpcorigin.cloudfront.amazonaws.com
名为 AWSCloudFrontVPCOriginServiceRolePolicy 的角色权限策略允许 CloudFront VPC 源对指定资源完成以下操作:
-
操作:
arn:aws:ec2:*:*:network-interface/*上的ec2:CreateNetworkInterface -
操作:
arn:aws:ec2:*:*:subnet/*和arn:aws:ec2:*:*:security-group/*上的ec2:CreateNetworkInterface -
操作:
ec2:CreateSecurityGroup上的arn:aws:ec2:*:*:security-group/* -
操作:
ec2:CreateSecurityGroup上的arn:aws:ec2:*:*:vpc/* -
操作:
supported Amazon resources that have the上的aws:ResourceTag/aws.cloudfront.vpcorigintag enabledec2:ModifyNetworkInterfaceAttribute、ec2:DeleteNetworkInterface、ec2:DeleteSecurityGroup、ec2:AssignIpv6Addresses和ec2:UnassignIpv6Addresses -
操作:
all Amazon resources that the actions support上的ec2:DescribeNetworkInterfaces、ec2:DescribeSecurityGroups、ec2:DescribeInstances、ec2:DescribeInternetGateways、ec2:DescribeSubnets、ec2:DescribeRegions和ec2:DescribeAddresses -
操作:
arn:aws:ec2:*:*:security-group/*和arn:aws:ec2:*:*:network-interface/*上的ec2:CreateTags -
操作:
elasticloadbalancing:DescribeLoadBalancers、elasticloadbalancing:DescribeListeners、以及在all Amazon resources that the actions support中的elasticloadbalancing:DescribeTargetGroups
您必须配置使用户、组或角色能够创建、编辑或删除服务相关角色的权限。有关更多信息,请参阅《IAM 用户指南》中的服务相关角色权限。
为 CloudFront VPC 源创建服务相关角色
您无需手动创建服务相关角色。当您使用 Amazon Web Services Management Console、Amazon CLI 或 Amazon API 创建 VPC 源时,CloudFront VPC 源会为您创建服务相关角色。
如果您删除该服务相关角色,然后需要再次创建,您可以使用相同流程在账户中重新创建此角色。当您创建 VPC 源时,CloudFront VPC 源会为您再次创建服务相关角色。
编辑 CloudFront VPC 源的服务相关角色
CloudFront VPC 源不允许您编辑 AWSServiceRoleForCloudFrontVPCOrigin 服务相关角色。创建服务相关角色后,您将无法更改角色的名称,因为可能有多种实体引用该角色。但是可以使用 IAM 编辑角色描述。有关更多信息,请参阅《IAM 用户指南》中的编辑服务相关角色。
删除 CloudFront VPC 源的服务相关角色
如果不再需要使用某个需要服务相关角色的功能或服务,我们建议您删除该角色。这样就没有未被主动监控或维护的未使用实体。但是,必须先清除服务相关角色的资源,然后才能手动删除它。
注意
如果在您试图删除资源时 CloudFront 服务正在使用该角色,则删除操作可能会失败。如果发生这种情况,请等待几分钟后重试。
删除 AWSServiceRoleForCloudFrontVPCOrigin 使用的 CloudFront VPC 源的资源
-
删除您账户中 VPC 源的资源。
CloudFront 可能需要一些时间来完成从账户中删除资源的操作。如果您无法立即删除服务相关角色,请稍后重试。
使用 IAM 手动删除 服务相关角色
使用 IAM 控制台,即 Amazon CLI 或 Amazon API 来删除 AWSServiceRoleForCloudFrontVPCOrigin 服务相关角色。有关更多信息,请参阅《IAM 用户指南》中的删除服务相关角色。
支持 CloudFront VPC 源服务相关角色的区域
CloudFront VPC 源并非在提供该服务的每个区域中都支持使用服务相关角色。您可以在以下区域中使用 AWSServiceRoleForCloudFrontVPCOrigin 角色。
| 区域名称 | 区域标识 | CloudFront 支持 |
|---|---|---|
| 美国东部(弗吉尼亚州北部) | us-east-1 | 是 |
| 美国东部(俄亥俄州) | us-east-2 | 是 |
| 美国西部(加利福尼亚北部) | us-west-1(可用区 usw1-az2 除外) | 是 |
| 美国西部(俄勒冈州) | us-west-2 | 是 |
| 非洲(开普敦) | af-south-1 | 是 |
| 亚太地区(香港) | ap-east-1 | 是 |
| 亚太地区(雅加达) | ap-southeast-3 | 是 |
| 亚太地区(墨尔本) | ap-southeast-4 | 是 |
| 亚太地区(孟买) | ap-south-1 | 是 |
| 亚太地区(海得拉巴) | ap-south-2 | 是 |
| 亚太地区(大阪) | ap-northeast-3 | 是 |
| 亚太地区(首尔) | ap-northeast-2 | 是 |
| 亚太地区(新加坡) | ap-southeast-1 | 是 |
| 亚太地区(悉尼) | ap-southeast-2 | 是 |
| 亚太地区(东京) | ap-northeast-1(可用区 apne1-az3 除外) | 是 |
| 加拿大(中部) | ca-central-1(可用区 cac1-az3 除外) | 是 |
| 加拿大西部(卡尔加里) | ca-west-1 | 是 |
| 欧洲(法兰克福) | eu-central-1 | 是 |
| 欧洲地区(爱尔兰) | eu-west-1 | 是 |
| 欧洲地区(伦敦) | eu-west-2 | 是 |
| 欧洲(米兰) | eu-south-1 | 是 |
| 欧洲(巴黎) | eu-west-3 | 是 |
| 欧洲(西班牙) | eu-south-2 | 是 |
| 欧洲地区(斯德哥尔摩) | eu-north-1 | 是 |
| 欧洲(苏黎世) | eu-central-2 | 是 |
| 以色列(特拉维夫) | il-central-1 | 是 |
| 中东(巴林) | me-south-1 | 是 |
| 中东(阿联酋) | me-central-1 | 是 |
| 南美洲(圣保罗) | sa-east-1 | 是 |