Application Auto Scaling 的服務連結角色 - Application Auto Scaling

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Application Auto Scaling 的服務連結角色

Application Auto Scaling 會使用服務連結角色來取得 AWS 代表您呼叫其他服務所需的許可。服務連結角色是直接連結至 AWS 服務的唯一 AWS Identity and Access Management (IAM) 角色類型。服務連結角色提供將許可委派給 AWS 服務的安全方法,因為只有連結的服務可以擔任服務連結角色。

對於與 Application Auto Scaling 整合的服務,Application Auto Scaling 會為您建立服務連結角色。每個服務都有一個服務連結角色。每個服務連結角色都信任由指定的服務委託人擔任其角色。如需詳細資訊,請參閱服務連結角色ARN參考

Application Auto Scaling 包含每個服務連結角色的所有必要許可。這些受管許可由 Application Auto Scaling 建立和管理,並定義各種資源類型允許的動作。如需每個角色所授予許可的詳細資訊,請參閱 AWS Application Auto Scaling 的 受管政策

建立服務連結角色所需的許可

Application Auto Scaling 需要許可,以便在您第一次 AWS 帳戶 RegisterScalableTarget呼叫指定服務的任何使用者時建立服務連結角色。如果目標服務沒有服務連結角色,Application Auto Scaling 會在您的帳戶中建立該角色。服務連結角色准許 Application Auto Scaling 代表您呼叫目標服務。

為了成功自動建立該角色,使用者必須有 iam:CreateServiceLinkedRole 動作的許可。

"Action": "iam:CreateServiceLinkedRole"

以下是授權為 Spot 機群建立服務連結角色的身分型政策。您可以在政策的 Resource 欄位中,將服務連結角色指定為 ARN,並將服務連結角色的服務主體指定為 條件,如下所示。如需ARN每個服務的 ,請參閱 服務連結角色ARN參考

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/ec2.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_EC2SpotFleetRequest", "Condition": { "StringLike": { "iam:AWSServiceName":"ec2.application-autoscaling.amazonaws.com" } } } ] }
注意

iam:AWSServiceName IAM 條件索引鍵會指定角色所連接的服務主體,在此範例政策中,此表示為 ec2.application-autoscaling.amazonaws.com。不要嘗試猜測服務委託人。若要檢視服務的服務委託人,請參閱AWS 服務 您可以搭配「Application Auto Scaling 放」使用

建立服務連結角色 (自動)

您不需要手動建立一個服務連結角色。當您呼叫 RegisterScalableTarget 時,Application Auto Scaling 會為您建立適當的服務連結角色。例如,如果您設定 Amazon ECS服務的自動擴展,Application Auto Scaling 會建立AWSServiceRoleForApplicationAutoScaling_ECSService角色。

建立服務連結角色 (手動)

若要建立服務連結角色,您可以使用 IAM 主控台 AWS CLI或 IAM API。如需詳細資訊,請參閱 IAM 使用者指南 中的建立服務連結角色

建立服務連結角色 (AWS CLI)

使用下列create-service-linked-roleCLI命令來建立 Application Auto Scaling 服務連結角色。在請求中,指定服務名稱「字首」。

若要尋找服務名稱字首,相關資訊請參閱AWS 服務 您可以搭配「Application Auto Scaling 放」使用一節,其中有每個服務的服務連結角色的服務委託人。服務名稱和服務委託人共用相同的字首。例如,若要建立 AWS Lambda 服務連結角色,請使用 lambda.application-autoscaling.amazonaws.com

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

編輯服務連結角色

對於 Application Auto Scaling 建立的服務連結角色,您只能編輯其描述。如需詳細資訊,請參閱 IAM 使用者指南 中的編輯服務連結角色

刪除服務連結角色

如果您不再對支援的服務使用 Application Auto Scaling,建議您刪除對應的服務連結角色。

您必須先刪除相關的 AWS 資源,才能刪除服務連結角色。這可避免您意外撤銷 Application Auto Scaling 使用資源的許可。如需詳細資訊,請參閱各項可擴展性資源的文件。例如,若要刪除 Amazon ECS服務,請參閱Amazon Elastic Container Service 開發人員指南中的刪除服務

您可以使用 IAM刪除服務連結角色。如需詳細資訊,請參閱 IAM 使用者指南 中的刪除服務連結角色

在您刪除服務連結角色後,Application Auto Scaling 會在您呼叫 RegisterScalableTarget 時再次建立角色。

Application Auto Scaling 服務連結角色的支援區域

Application Auto Scaling 支援在所有提供服務的 AWS 區域中使用服務連結角色。

服務連結角色ARN參考

下表列出使用 Application Auto Scaling 的每個 AWS 服務 服務連結角色的 Amazon Resource Name (ARN)。

服務 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
ElastiCache arn:aws:iam::012345678910:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG
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
MSK arn:aws:iam::012345678910:role/aws-service-role/kafka.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_KafkaCluster
Neptune arn:aws:iam::012345678910:role/aws-service-role/neptune.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_NeptuneCluster
SageMaker arn:aws:iam::012345678910:role/aws-service-role/sagemaker.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_SageMakerEndpoint
Spot Fleets arn:aws:iam::012345678910:role/aws-service-role/ec2.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_EC2SpotFleetRequest
WorkSpaces arn:aws:iam::012345678910:role/aws-service-role/workspaces.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_WorkSpacesPool
自訂資源 arn:aws:iam::012345678910:role/aws-service-role/custom-resource.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_CustomResource
注意

您可以為 AWS CloudFormation 堆疊範本中的 AWS::ApplicationAutoScaling::ScalableTarget 資源RoleARN屬性指定ARN服務連結角色的 ,即使指定的服務連結角色尚未存在。Application Auto Scaling 會自動為您建立角色。