我建立了 IAM 角色,但是當我啟動執行個體時,該角色未出現在下拉清單中。我該怎麼辦?

1 分的閱讀內容
0

我建立了新的 AWS 身分和存取管理 (IAM) 角色,但是在啟動執行個體時,在下拉清單中找不到該角色。

解決方法

下拉式清單包含執行個體設定檔,而非 IAM 角色,但您可以將 IAM 角色新增至執行個體設定檔。您必須選擇已新增必要 IAM 角色的執行個體設定檔。

請依照下列步驟建立連結至執行個體設定檔的新 IAM 角色。然後,在啟動執行個體時,從下拉清單中選擇執行個體設定檔。使用 IAM 主控台或 AWS Command Line Interface (AWS CLI) 建立連結至執行個體設定檔的新 IAM 角色。

**注意:**如果您在執行 AWS CLI 命令時收到錯誤,請確定您使用的是最新版本的 AWS CLI

使用 IAM 主控台

此範例使用 Amazon Elastic Compute Cloud (Amazon EC2) 顯示選取 EC2 作為您的使用案例會為 Amazon EC2 建立信任關係。您的 EC2 使用案例也會建立:

  • 執行個體設定檔。
  • 為執行個體設定檔提供與 IAM 角色相同的名稱。
  • 將 IAM 角色新增至相同的執行個體設定檔。

**注意:**如果在建立 IAM 角色時未選取 EC2,則不會為 Amazon EC2 建立執行個體設定檔和信任關係。

  1. 開啟 IAM 主控台

  2. 在導覽窗格中,選擇角色,然後選擇建立角色

  3. 選擇 EC2 作為 AWS 服務,選取 EC2 作為您的使用案例,然後選擇下一步: 權限

  4. 為您的使用案例選擇政策名稱,選擇下一步: 標籤,然後選擇下一步: 檢閱

  5. 輸入角色名稱,然後選擇建立角色

使用 AWS CLI

  1. 建立一個名為 Test-Role-Trust-Policy.json 的檔案并將下述政策貼到檔案中:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": "ec2.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

2.執行下列命令以建立 IAM 角色

$ aws iam create-role --role-name Test-Role --assume-role-policy-document file://Test-Role-Trust-Policy.json

3.執行下列命令以建立執行個體設定檔

$ aws iam create-instance-profile --instance-profile-name Webserver
  1. 執行下列命令,將 IAM 角色新增至執行個體設定檔:
$ aws iam add-role-to-instance-profile --role-name Test-Role --instance-profile-name Webserver

在 EC2 的現有 IAM 角色中,您必須將 EC2 服務主體新增到其現有的信任政策中。如需詳細資訊,請參閱 指定主體

**注意:**如果 IAM 角色和執行個體設定檔的名稱不同,請務必選取正確的執行個體設定檔。啟動 EC2 執行個體時,正確的執行個體設定檔已新增必要的 IAM 角色。IAM 角色不會列在下拉清單中。


相關資訊

修改角色

編輯現有角色的信任關係

適用於 Amazon EC2 的 IAM 角色