本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon ECS 主控台由 提供動力 AWS CloudFormation ,在下列情況下需要額外的 IAM 許可:
-
建立叢集
-
建立服務
-
建立容量提供者
您可以為其他許可建立政策,然後將其連接至用於存取主控台的 IAM 角色。如需詳細資訊,請參閱「IAM 使用者指南」中的建立 IAM 政策。
建立叢集所需的許可
當您在 主控台中建立叢集時,您需要其他許可來授予您管理 AWS CloudFormation 堆疊的許可。
以下是所需的其他許可:
-
cloudformation
- 允許委託人建立和管理 AWS CloudFormation 堆疊。在使用 AWS Management Console 建立 Amazon ECS 叢集以及後續管理這些叢集時,這為必要項。 -
ssm
– 允許 AWS CloudFormation 參考最新的 Amazon ECS 最佳化 AMI。使用 建立 Amazon ECS 叢集時,這是必要的 AWS Management Console。
下列政策包含必要的 AWS CloudFormation 許可,並將動作限制為在 Amazon ECS 主控台中建立的資源。
{
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudformation:CreateStack",
"cloudformation:DeleteStack",
"cloudformation:DescribeStack*",
"cloudformation:UpdateStack"
],
"Resource": [
"arn:*:cloudformation:*:*:stack/Infra-ECS-Cluster-*"
]
},
{
"Effect": "Allow",
"Action": "ssm:GetParameters",
"Resource": [
"arn:aws:ssm:*:*:parameter/aws/service/ecs/optimized-ami/amazon-linux-2*/*",
"arn:aws:ssm:*:*:parameter/aws/service/ecs/optimized-ami/amazon-linux-2023*/*"
]
}
]
}
如果您尚未建立 Amazon ECS 容器執行個體角色 (ecsInstanceRole
),並且正建立使用 Amazon EC2 執行個體的叢集,則主控台將代表您建立角色。
此外,如果您使用 Auto Scaling 群組,則需要額外的許可,以便主控台在使用叢集自動擴展功能時,可以將標籤新增至自動擴展群組。
以下是所需的其他許可:
-
autoscaling
– 允許主控台標記 Amazon EC2 Auto Scaling 群組。使用叢集自動擴展功能管理 Amazon EC2 Auto Scaling 群組時,這為必要項。標籤是 ECS 受管標籤,主控台會自動新增至群組,表示已在主控台中建立。 -
iam
- 允許委託人列出 IAM 角色及其連接的政策。委託人還可列出 Amazon EC2 執行個體可用的執行個體設定檔。
以下政策包含必要的 IAM 許可,並將動作限制為 ecsInstanceRole
角色。
Auto Scaling 許可不受限制。
{
"Statement": [
{
"Effect": "Allow",
"Action": [
"iam:AttachRolePolicy",
"iam:CreateRole",
"iam:CreateInstanceProfile",
"iam:AddRoleToInstanceProfile",
"iam:ListInstanceProfilesForRole",
"iam:GetRole"
],
"Resource": "arn:aws:iam::*:role/ecsInstanceRole"
},
{
"Effect": "Allow",
"Action": "autoscaling:CreateOrUpdateTags",
"Resource": "*"
}
]
}
建立 服務所需的許可
當您在 主控台中建立服務時,您需要其他許可,以授予您管理 AWS CloudFormation 堆疊的許可。以下是所需的其他許可:
-
cloudformation
- 允許委託人建立和管理 AWS CloudFormation 堆疊。在使用 AWS Management Console 建立 Amazon ECS 服務以及後續管理這些服務時,這為必要項。
下列政策包含必要的許可,並將動作限制為在 Amazon ECS 主控台中建立的資源。
{
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudformation:CreateStack",
"cloudformation:DeleteStack",
"cloudformation:DescribeStack*",
"cloudformation:UpdateStack"
],
"Resource": [
"arn:*:cloudformation:*:*:stack/ECS-Console-V2-Service-*"
]
}
]
}