在生产 AWS 帐户 (112233445566) 中设置 Prod-Xacc-Access 后,IT AWS 帐户 (123456789012) 中的任何用户或角色将能够通过相应的配置担任该角色,如本节提供的步骤中所述:

创建 Cross-Account-AssumeRole-policy 策略,该策略将附加到 IT-AviController-Role 角色。

前提条件

在 IT AWS 帐户 (123456789012) 中创建 IT-NSX Advanced Load Balancer Controller-Role 角色,以担任生产 AWS 帐户 (112233445566) 中的 Prod-Xacc-Access 角色。这是控制器实例将附加到的角色。

过程

  1. 导航到 IAM > 策略,然后单击创建策略。为该策略配置 sts:AssumeRole 操作,并提供 Prod-Xacc-Access 角色 ARN 的资源引用,它在该示例中为 arn:aws:iam::112233445566:role/Prod-Xacc-Access。
    {
              "Version": "2012-10-17",
              "Statement": {
                     "Effect": "Allow",
                     "Action": "sts:AssumeRole",
                     "Resource": "arn:aws:iam::112233445566:role/Prod-Xacc-Access"
                 }
       }
  2. 导航到 JSON 选项卡,提供上述语法,然后单击查看策略以保存该策略。要附加多个帐户,请使用以下策略语法:
          {
     "Version": "2012-10-17",
      "Statement": [
         {
             "Effect": "Allow",
             "Action": "sts:AssumeRole",
             "Resource": "arn:aws:iam::<ACCOUNT-ID1>:role/<Role-Name-1>"
         },
         {
             "Effect": "Allow",
             "Action": "sts:AssumeRole",
             "Resource": "arn:aws:iam::<ACCOUNT-ID1>:role/<Role-Name-2>"
         },
         {
             "Effect": "Allow",
             "Action": "sts:AssumeRole",
             "Resource": "arn:aws:iam::<ACCOUNT-ID2>:role/<Role-Name>"
         }
     ]
      }
  3. 导航到 IAM > 角色,然后单击创建角色。选择 AWS 服务,选择 Amazon EC2 作为角色类型,然后单击下一步: 权限
  4. 在“附加策略”下面,选择以前创建的 Cross-Account-AssumeRole-Policy 以及控制器的内部操作所需的 AviController-EC2-Policy。
  5. 提供 IT-AviController-role 作为角色名称,提供描述(可选),然后单击创建角色。验证现在是否附加了两个策略。