將 IAM 角色連接至執行個體 - Amazon Elastic Compute Cloud

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

將 IAM 角色連接至執行個體

您可建立 IAM 角色,並在啟動期間或之後將其連接至執行個體。您也可以取代或分離 IAM 角色。

在執行個體啟動期間建立和連接 IAM 角色 (建議)
  1. 在 EC2 執行個體啟動期間,展開進階詳細資訊

  2. IAM 執行個體設定檔區段中,選擇建立新的 IAM 角色

  3. 會開啟內嵌角色建立表單,讓您:

    • 指定角色名稱 (例如 EC2-S3-Access-Role)

    • 透過選取 AWS 受管政策或為您的執行個體建立自訂政策來定義許可

      例如,若要授予 S3 存取權,請選取 AmazonS3ReadOnlyAccess 受管政策

    • 檢閱允許 ec2.amazonaws.com擔任角色的信任政策

    • 新增中繼資料的選用標籤

  4. 選擇建立角色

    系統會自動選取新建立的角色,並在執行個體啟動時透過執行個體描述檔連接至您的執行個體。

注意

當您在執行個體啟動期間使用主控台建立角色時,會自動建立與角色同名的執行個體描述檔。執行個體描述檔是在啟動時將 IAM 角色資訊傳遞給執行個體的容器。

重要
  • 雖然您只能將一個 IAM 角色連接到一個執行個體中,但您可以將相同的角色連接到多個執行個體中。

  • 關聯限制存取應用程式所需特定 API 呼叫的最低權限 IAM 政策。

如需建立 IAM 角色的詳細資訊,請參閱IAM 使用者指南中的角色

在執行個體啟動期間連接現有的 IAM 角色

若要使用 Amazon EC2 主控台在啟動時將現有的 IAM 角色連接至執行個體,請展開進階詳細資訊。針對 IAM 執行個體描述檔,從下拉式清單中選取 IAM 角色。

注意

若您已使用主控台建立 IAM 角色,則會為您建立執行個體設定檔,且其名稱會與該角色相同。如果您使用 AWS CLI、 API 或 AWS SDK 建立 IAM 角色,您可能已為執行個體描述檔指定與該角色不同的名稱。

您可以將 IAM 角色連接至正在執行或已停止的執行個體。如果執行個體已連接 IAM 角色,您必須將其取代為新的 IAM 角色。

Console
將 IAM 角色連接至執行個體 (主控台)
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇執行個體

  3. 選取執行個體。

  4. 選擇 Actions (動作)、Security (安全性)、Modify IAM role (修改 IAM 角色)。

  5. IAM 角色,選擇 IAM 執行個體設定檔。

  6. 選擇更新 IAM 角色

AWS CLI
將 IAM 角色連接至執行個體 (主控台)

使用 associate-iam-instance-profile 命令,將 IAM 角色連接至執行個體。當您指定執行個體設定檔時,您可以使用執行個體設定檔的 Amazon Resource Name (ARN),也可以使用其名稱。

aws ec2 associate-iam-instance-profile \ --instance-id i-1234567890abcdef0 \ --iam-instance-profile Name="TestRole-1"
PowerShell
將 IAM 角色連接至執行個體 (主控台)

使用 Register-EC2IamInstanceProfile cmdlet。

Register-EC2IamInstanceProfile ` -InstanceId i-1234567890abcdef0 ` -IamInstanceProfile_Name TestRole-1

若要取代已擁有連接 IAM 角色之執行個體上的 IAM 角色,則執行個體必須處於執行中狀態。如果您想要變更執行個體上的 IAM 角色,但不中斷現有的角色,您可以這麼做。例如,您可以這麼做確保執行個體上應用程式執行的 API 動作不會中斷。

Console
取代執行個體的 IAM 角色
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇執行個體

  3. 選取執行個體。

  4. 選擇 Actions (動作)、Security (安全性)、Modify IAM role (修改 IAM 角色)。

  5. IAM 角色,選擇 IAM 執行個體設定檔。

  6. 選擇更新 IAM 角色

AWS CLI
取代執行個體的 IAM 角色
  1. 視需要使用 describe-iam-instance-profile-associations 命令來獲取關聯 ID。

    aws ec2 describe-iam-instance-profile-associations \ --filters Name=instance-id,Values=i-1234567890abcdef0 \ --query IamInstanceProfileAssociations.AssociationId
  2. 請使用 replace-iam-instance-profile-association 命令。指定現有執行個體設定檔的關聯 ID,以及新的執行個體設定檔的 ARN 或名稱。

    aws ec2 replace-iam-instance-profile-association \ --association-id iip-assoc-0044d817db6c0a4ba \ --iam-instance-profile Name="TestRole-2"
PowerShell
取代執行個體的 IAM 角色
  1. 視需要使用 Get-EC2IamInstanceProfileAssociation cmdlet 來獲取關聯 ID。

    (Get-EC2IamInstanceProfileAssociation -Filter @{Name="instance-id"; Values="i-0636508011d8e966a"}).AssociationId
  2. 使用 Set-EC2IamInstanceProfileAssociation cmdlet。指定現有執行個體設定檔的關聯 ID,以及新的執行個體設定檔的 ARN 或名稱。

    Set-EC2IamInstanceProfileAssociation ` -AssociationId iip-assoc-0044d817db6c0a4ba ` -IamInstanceProfile_Name TestRole-2

您可透過執行中或已停止的執行個體來分離 IAM 角色。

Console
分離 IAM 角色和執行個體
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇執行個體

  3. 選取執行個體。

  4. 選擇 Actions (動作)、Security (安全性)、Modify IAM role (修改 IAM 角色)。

  5. 針對 IAM role (IAM 角色),選擇 No IAM Role (無 IAM 角色)

  6. 選擇更新 IAM 角色

  7. 出現確認提示時,請輸入分離,然後選擇分離

AWS CLI
分離 IAM 角色和執行個體
  1. 視需要使用 describe-iam-instance-profile-associations,來獲取 IAM 執行個體設定檔欲分離的關聯 ID。

    aws ec2 describe-iam-instance-profile-associations \ --filters Name=instance-id,Values=i-1234567890abcdef0 \ --query IamInstanceProfileAssociations.AssociationId
  2. 請使用 disassociate-iam-instance-profile 命令。

    aws ec2 disassociate-iam-instance-profile --association-id iip-assoc-0044d817db6c0a4ba
PowerShell
分離 IAM 角色和執行個體
  1. 視需要使用 Get-EC2IamInstanceProfileAssociation,來獲取 IAM 執行個體設定檔欲分離的關聯 ID。

    (Get-EC2IamInstanceProfileAssociation -Filter @{Name="instance-id"; Values="i-0636508011d8e966a"}).AssociationId
  2. 使用 Unregister-EC2IamInstanceProfile cmdlet。

    Unregister-EC2IamInstanceProfile -AssociationId iip-assoc-0044d817db6c0a4ba