Application Auto Scaling 的服务相关角色 - Application Auto Scaling
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

Application Auto Scaling 的服务相关角色

Application Auto Scaling 使用服务相关角色获取它调用其他Amazon服务代表您。服务相关角色是一种独特类型的Amazon Identity and Access Management(IAM) 角色,该角色直接关联到Amazon服务。

服务相关角色提供了一种将权限委托给 Amazon 服务的安全方式,因为只有相关服务才能担任服务相关角色。有关更多信息,请参阅 IAM 用户指南 中的使用服务相关角色

以下部分介绍了如何创建和管理 Application Auto Scaling 服务相关角色。首先配置权限以允许 IAM 实体(如用户、组或角色)创建、编辑或删除服务相关角色。

服务相关角色授予的权限

Application Auto Scaling 使用以下服务相关角色代表您管理扩展操作。对于每个可扩展资源类型,都有一个服务相关角色。在每种情况下,该服务相关角色都是一个包含所有必要权限的预定义角色。每个服务相关角色信任指定的服务委托人来代入该角色。

AppStream 2.0 队列

这些区域有:AWSServiceRoleForApplicationAutoScaling_AppStreamFleet服务相关角色信任appstream.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:appstream:DescribeFleets

  • 操作:appstream:UpdateFleet

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

Aurora 副本

这些区域有:AWSServiceRoleForApplicationAutoScaling_RDSCluster服务相关角色信任rds.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:rds:AddTagsToResource

  • 操作:rds:CreateDBInstance

  • 操作:rds:DeleteDBInstance

  • 操作:rds:DescribeDBClusters

  • 操作:rds:DescribeDBInstance

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

Amazon Comprehend 文档分类和实体识别程序终端节点

这些区域有:AWSServiceRoleForApplicationAutoScaling_ComprehendEndpoint服务相关角色信任comprehend.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:comprehend:UpdateEndpoint

  • 操作:comprehend:DescribeEndpoint

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

DynamoDB 表和全局二级索引

这些区域有:AWSServiceRoleForApplicationAutoScaling_DynamoDBTable服务相关角色信任dynamodb.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:dynamodb:DescribeTable

  • 操作:dynamodb:UpdateTable

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

Amazon Elastic Container Service (ECS) 服务

这些区域有:AWSServiceRoleForApplicationAutoScaling_ECSService服务相关角色信任ecs.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:ecs:DescribeServices

  • 操作:ecs:UpdateService

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

Amazon Keyspaces (for Apache Cassandra) 表

这些区域有:AWSServiceRoleForApplicationAutoScaling_CassandraTable服务相关角色信任cassandra.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对指定资源完成以下操作:

  • 操作:资源 arn:*:cassandra:*:*:/keyspace/system/table/* 上的 cassandra:Select

  • 操作:资源 arn:*:cassandra:*:*:/keyspace/system_schema/table/* 上的 cassandra:Select

  • 操作:资源 arn:*:cassandra:*:*:/keyspace/system_schema_mcs/table/* 上的 cassandra:Select

  • 操作:资源 arn:*:cassandra:*:*:"*" 上的 cassandra:Alter

  • 操作:cloudwatch:DeleteAlarms对所有资源

  • 操作:cloudwatch:DescribeAlarms对所有资源

  • 操作:cloudwatch:PutMetricAlarm对所有资源

Lambda 函数预配置并发

这些区域有:AWSServiceRoleForApplicationAutoScaling_LambdaConcurrency服务相关角色信任lambda.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:lambda:PutProvisionedConcurrencyConfig

  • 操作:lambda:GetProvisionedConcurrencyConfig

  • 操作:lambda:DeleteProvisionedConcurrencyConfig

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

Amazon Managed Streaming for Apache Kafka (Amazon MSK) 代理存储

这些区域有:AWSServiceRoleForApplicationAutoScaling_KafkaCluster服务相关角色信任kafka.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:kafka:DescribeCluster

  • 操作:kafka:DescribeClusterOperation

  • 操作:kafka:UpdateBrokerStorage

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

SageMaker 终端节点变体

这些区域有:AWSServiceRoleForApplicationAutoScaling_SageMakerEndpoint服务相关角色信任sagemaker.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:sagemaker:DescribeEndpoint

  • 操作:sagemaker:DescribeEndpointConfig

  • 操作:sagemaker:UpdateEndpointWeightsAndCapacities

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

Spot 队列请求

这些区域有:AWSServiceRoleForApplicationAutoScaling_EC2SpotFleetRequest服务相关角色信任ec2.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:ec2:DescribeSpotFleetRequests

  • 操作:ec2:ModifySpotFleetRequest

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

自定义资源

这些区域有:AWSServiceRoleForApplicationAutoScaling_CustomResource服务相关角色信任custom-resource.application-autoscaling.amazonaws.com服务委托人代入该角色。

角色权限策略允许 Application Auto Scaling 对所有资源完成以下操作:

  • 操作:execute-api:Invoke

  • 操作:cloudwatch:DeleteAlarms

  • 操作:cloudwatch:DescribeAlarms

  • 操作:cloudwatch:PutMetricAlarm

创建服务相关角色(自动)

您无需手动创建服务相关角色。当您调用时,Application Auto Scaling 将为您创建相应的服务相关角色RegisterScalableTarget. 例如,如果您为 Amazon ECS 服务设置自动扩展,则 Application Auto Scaling 将创建AWSServiceRoleForApplicationAutoScaling_ECSService角色。

重要

IAM 用户调用RegisterScalableTarget操作必须具有适当的 IAM 权限才能创建服务相关角色。否则,自动创建操作将失败。有关更多信息,请参阅本指南中的 创建服务相关角色所需的权限

通过指定 RoleARN 属性,您可以使用 Amazon CloudFormation 模板自动创建服务相关角色。要在 RoleARN 属性中指定服务相关角色,则使用其完全的 Amazon 资源名称 (ARN)。ARN 的一般语法如下:

arn:aws:[service]:[region]:[account]:resourceType/resourcePath

有关更多信息,请参阅服务相关角色 ARN 参考

创建服务相关角色(手动)

要创建服务相关角色,您可以使用 IAM 控制台Amazon CLI或 IAM API。有关更多信息,请参阅 。创建服务相关角色中的IAM 用户指南.

创建服务相关角色 (Amazon CLI)

请使用以下创建服务链接角色CLI 命令创建 Application Auto Scaling 服务相关角色。在该请求中,为 “prefix” 指定一个值。例如,要创建 Amazon Lambda 服务相关角色,请使用 lambda.application-autoscaling.amazonaws.com

aws iam create-service-linked-role --aws-service-name prefix.amazonaws.com

编辑服务相关角色

对于 Application Auto Scaling 创建的服务相关角色,您只能编辑其描述。有关更多信息,请参阅 IAM 用户指南 中的编辑服务相关角色

删除服务相关角色

如果您不再将 Application Auto Scaling 于支持的服务,我们建议您删除相应的服务相关角色。

只有在首先删除相关角色后,才能删除服务相关角色。Amazon资源的费用。这可以防止您无意中撤销对您的资源的 Application Auto Scaling 权限。有关更多信息,请参阅有关可扩展资源的文档。例如,要删除云服务器服务,请参阅删除服务中的Amazon Elastic Container Service 开发者指南.

您可以使用 IAM 删除服务相关角色。有关更多信息,请参阅 IAM 用户指南 中的删除服务相关角色

在删除某个服务相关角色后,当您调用时,Application Auto Scaling 将重新创建该角色RegisterScalableTarget.

Application Auto Scaling 服务相关角色的受支持区域

Application Auto Scaling 支持在所有Amazon提供服务的区域。

服务相关角色 ARN 参考

Amazon CloudFormation要求您在注册可扩展目标时在堆栈模板中指定 IAM 角色。以下与服务关联的角色 ARN 由此服务定义,可在RoleARN属性AWS::ApplicationAutoScaling::ScalableTarget在堆栈模板中。

资源类型 ARN

AppStream 2.0 队列

arn:aws:iam::012345678910:role/aws-service-role/appstream.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_AppStreamFleet
Aurora 数据库集群 arn:aws:iam::012345678910:role/aws-service-role/rds.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_RDSCluster
Comprehend 文档分类和实体识别程序终端节点 arn:aws:iam::012345678910:role/aws-service-role/comprehend.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ComprehendEndpoint
DynamoDB 表和全局二级索引 arn:aws:iam::012345678910:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable
ECS 服务 arn:aws:iam::012345678910:role/aws-service-role/ecs.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ECSService
Amazon Keyspaces 表 arn:aws:iam::012345678910:role/aws-service-role/cassandra.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_CassandraTable
Lambda 函数预配置并发 arn:aws:iam::012345678910:role/aws-service-role/lambda.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_LambdaConcurrency
Amazon MSK 代理存储 arn:aws:iam::012345678910:role/aws-service-role/kafka.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_KafkaCluster
SageMaker 终端节点变体 arn:aws:iam::012345678910:role/aws-service-role/sagemaker.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_SageMakerEndpoint
Spot 队列请求 arn:aws:iam::012345678910:role/aws-service-role/ec2.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_EC2SpotFleetRequest
自定义资源 arn:aws:iam::012345678910:role/aws-service-role/custom-resource.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_CustomResource