建立 Session Manager 的自訂 IAM 角色 - AWS Systems Manager

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

建立 Session Manager 的自訂 IAM 角色

您可以建立 AWS Identity and Access Management (IAM) 角色,以授與Session Manager在 Amazon EC2 受管執行個體上執行動作的權限。您還可以包括一項政策,以授予將工作階段日誌傳送到 Amazon 簡單儲存服務 (Amazon S3) 和 Amazon CloudWatch 日誌所需的許可。

建立 IAM 角色後,如需如何將角色附加至執行個體的詳細資訊,請參閱 AWS re:Post 網站上的附加或取代執行個體設定檔。如需詳有關 IAM 執行個體設定檔和角色的細資訊,請參閱《IAM 使用者指南》中的使用執行個體描述檔一節,以及《適用於 Linux 的 Amazon Elastic Compute Cloud 使用者指南》中的 Amazon EC2 IAM 角色一節。如需為內部部署機器建立 IAM 服務角色的詳細資訊,請參閱建立混合式和多雲端環境中 Systems Manager 所需的 IAM 服務角色

建立具有最小 Session Manager 許可的 IAM 角色 (主控台)

請使用下列處理程序來建立具有政策的自訂 IAM 角色,該政策在您的執行個體上只提供唯一的 Session Manager 動作許可。

建立含最小 Session Manager 許可的執行個體設定檔 (主控台)
  1. 登入 AWS Management Console 並開啟身分與存取權管理主控台,網址為 https://console.aws.amazon.com/iam/

  2. 在導覽窗格中,選擇 Policies (政策),然後選擇 Create policy (建立政策)。(顯示 Get Started (開始使用) 按鈕時先選擇它,然後選擇 Create Policy (建立政策)。)

  3. 選擇 JSON 標籤。

  4. 將預設內容取代為以下政策。若要使用 AWS Key Management Service (AWS KMS) 加密工作階段資料,請將金鑰名稱取代為您要使用的 Amazon 資源名稱 (ARN)。 AWS KMS key

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:UpdateInstanceInformation", "ssmmessages:CreateControlChannel", "ssmmessages:CreateDataChannel", "ssmmessages:OpenControlChannel", "ssmmessages:OpenDataChannel" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "key-name" } ] }

    如需使用 KMS 金鑰來加密工作階段資料的詳細資訊,請參閱 開啟工作階段資料的 KMS 金鑰加密 (主控台)

    如果您不會對工作階段資料使用 AWS KMS 加密,則可以從政策中移除以下內容。

    , { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "key-name" }
  5. 選擇下一步:標籤

  6. (選用) 透過選擇 Add tag (新增標籤),然後輸入政策的首選標籤來新增標籤。

  7. 選擇下一步:檢閱

  8. Review Policy (檢閱政策) 頁面上 Name (名稱)中,輸入該內嵌政策的名稱,例如 SessionManagerPermissions

  9. (選用) Description (說明),輸入政策的說明。

  10. 選擇建立政策

  11. 在導覽窗格中,選擇 Roles (角色),然後選擇 Create role (建立角色)

  12. Create role (建立角色) 頁面上,選擇 AWS service (服務),針對 Use case (使用案例),選擇 EC2

  13. 選擇下一步

  14. Add permissions (新增許可) 頁面,選取您剛建立政策左側的核取方塊,例如 SessionManagerPermissions

  15. 選擇下一步

  16. Name, review, and create (名稱、檢閱和建立) 頁面的 Role name (角色名稱) 中,輸入 IAM 角色的名稱,例如 MySessionManagerRole

  17. (選用) Role description (角色說明),輸入執行個體設定檔的說明。

  18. (選用) 透過選擇 Add tag (新增標籤),然後輸入角色的首選標籤來新增標籤。

    選擇建立角色

如需有關 ssmmessages 動作的資訊,請參閱 參考:ec2messages、ssmmessages 和其他 API 操作

建立具有 Amazon S3 Session Manager 和 CloudWatch 日誌 (主控台) 許可的 IAM 角色

請使用下列處理程序來建立具有政策自訂 IAM 角色,該政策在您的執行個體上提供 Session Manager 動作許可。該政策還提供存放在 Amazon 簡單儲存服務 (Amazon S3) 儲存貯體和 Amazon 日誌日誌群組中的工作階段 CloudWatch 日誌所需的許可。

重要

若要將工作階段日誌輸出到不同 AWS 帳戶所擁有的 Amazon Simple Storage Service (Amazon S3) 儲存貯體,您必須將 s3:PutObjectAcl 許可新增至該 IAM 角色政策。此外,您必須確保該儲存貯體政策將跨帳戶存取權授予擁有該儲存貯體的帳戶,用於授予受管執行個體 Systems Manager 許可所使用的 IAM 角色。如果該儲存貯體使用 Key Management Service (KMS) 加密,則該儲存貯體的 KMS 政策也必須授予此跨帳戶存取權。如需有關在 Amazon S3 中設定跨帳戶儲存貯體許可的更多資訊,請參閱《Amazon Simple Storage Service 使用者指南》中的授予跨帳戶儲存貯體許可一節。如果未新增此許可,則擁有該 Amazon Simple Storage Service (Amazon S3) 儲存貯體的帳戶無法存取工作階段輸出日誌。

如需有關指定儲存工作階段日誌偏好的更多資訊,請參閱啟用和停用工作階段活動記錄

若要建立具有 Amazon S3 Session Manager 和 CloudWatch 日誌 (主控台) 許可的 IAM 角色
  1. 登入 AWS Management Console 並開啟身分與存取權管理主控台,網址為 https://console.aws.amazon.com/iam/

  2. 在導覽窗格中,選擇 Policies (政策),然後選擇 Create policy (建立政策)。(顯示 Get Started (開始使用) 按鈕時先選擇它,然後選擇 Create Policy (建立政策)。)

  3. 選擇 JSON 標籤。

  4. 將預設內容取代為以下政策。將每個範例資源預留位置取代為您自己的資訊。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssmmessages:CreateControlChannel", "ssmmessages:CreateDataChannel", "ssmmessages:OpenControlChannel", "ssmmessages:OpenDataChannel", "ssm:UpdateInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/s3-prefix/*" }, { "Effect": "Allow", "Action": [ "s3:GetEncryptionConfiguration" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "key-name" }, { "Effect": "Allow", "Action": "kms:GenerateDataKey", "Resource": "*" } ] }
  5. 選擇下一步:標籤

  6. (選用) 透過選擇 Add tag (新增標籤),然後輸入政策的首選標籤來新增標籤。

  7. 選擇下一步:檢閱

  8. Review Policy (檢閱政策) 頁面上 Name (名稱)中,輸入該內嵌政策的名稱,例如 SessionManagerPermissions

  9. (選用) Description (說明),輸入政策的說明。

  10. 選擇建立政策

  11. 在導覽窗格中,選擇 Roles (角色),然後選擇 Create role (建立角色)

  12. Create role (建立角色) 頁面上,選擇 AWS service (服務),針對 Use case (使用案例),選擇 EC2

  13. 選擇下一步

  14. Add permissions (新增許可) 頁面,選取您剛建立政策左側的核取方塊,例如 SessionManagerPermissions

  15. 選擇下一步

  16. Name, review, and create (名稱、檢閱和建立) 頁面的 Role name (角色名稱) 中,輸入 IAM 角色的名稱,例如 MySessionManagerRole

  17. (選用) 在 Role description (角色說明) 中,輸入角色的說明。

  18. (選用) 透過選擇 Add tag (新增標籤),然後輸入角色的首選標籤來新增標籤。

  19. 選擇建立角色