ECS Anywhere IAM 角色 - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

ECS Anywhere IAM 角色

将本地服务器或虚拟机 (VM) 注册到您的群集时,服务器或 VM 需要 IAM 角色才能与 Amazon API 通信。您只需为每个 Amazon 账户创建 IAM 角色一次。

要检查 ecsAnywhereRole IAM 角色 (Amazon Web Services Management Console)

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Roles(角色)。

  3. 在角色列表中搜索 ecsAnywhereRole。如果该角色不存在,请使用下一个部分中的过程创建该角色。如果角色存在,请选择角色以查看附加的策略。

  4. Permissions (权限)选项卡上,确保AmazonEC2ContainerServiceforEC2RoleAmazonSSMManagedInstanceCore托管策略附加到角色。如果附加该策略,则将正确配置 Amazon ECS Anywhere 服务角色。否则,请执行以下子步骤来附加策略。

    1. 选择 Attach policies(附上策略)。

    2. Filter 框中,键入 AmazonEC2ContainerServiceforEC2Role 以缩小要附加的可用策略的范围。

    3. 选中 AmazonEC2ContainerServiceforEC2Role 策略左侧的框并选择 Attach Policy

    4. 筛选条件 框中,键入 AmazonSSMManagedInstanceCore 以缩小要附加的可用策略的范围。

    5. 选中 AmazonSSMManagedInstanceCore 策略左侧的框并选择附加策略

  5. 选择 Trust relationships 选项卡,然后选择 Edit trust relationship

  6. 验证信任关系是否包含以下策略。如果信任关系符合以下策略,请选择 Cancel。如果信任关系不符合,请将策略复制到 Policy Document 窗口中并选择 Update Trust Policy

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

创建 ecsAnywhereRole IAM 角色 (Amazon Web Services Management Console)

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Roles,然后选择 Create role

  3. 选择 Amazon 服务角色类型,然后选择 Elastic Container Service

  4. 选择 Elastic Container Service 的 EC2 角色使用案例,然后选择 下一步:权限

  5. 附加的权限策略部分,选择 AmazonEC2ContainerServiceforEC2Role,然后选择下一步:审核

  6. 对于Role name (角色名称),键入 ecsAnywhereRole,也可以输入描述,例如允许 ECS 群集中的本地服务器或虚拟机访问 ECS。

  7. 检查您的角色信息,然后选择 Create role 以完成操作。

  8. 选择您刚刚创建的 ecsAnywhereRole 角色。

  9. Permissions(权限)选项卡上,选择 Attach policies(附加策略)。

  10. 筛选条件 框中,键入 AmazonSSMManagedInstanceCore 以缩小要附加的可用策略的范围。

  11. 选中 AmazonSSMManagedInstanceCore 策略左侧的框并选择附加策略

  12. 信任关系选项卡上,选择编辑信任关系

  13. 更改信任关系,使其包含以下策略,然后选择更新信任策略

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

创建 ecsAnywhereRole IAM 角色 (Amazon CLI)

  1. 创建一个名为 ssm-trust-policy.json 的本地文件,包含以下内容:

    { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": {"Service": [ "ssm.amazonaws.com" ]}, "Action": "sts:AssumeRole" } }
  2. 创建角色。

    aws iam create-role --role-name ecsAnywhereRole --assume-role-policy-document file://ssm-trust-policy.json
  3. 附加 Amazon 托管策略。

    aws iam attach-role-policy --role-name ecsAnywhereRole --policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore aws iam attach-role-policy --role-name ecsAnywhereRole --policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role