為 Session Manager 建立自訂 IAM 執行個體描述檔 - AWS Systems Manager

為 Session Manager 建立自訂 IAM 執行個體描述檔

您可以建立自訂 AWS Identity and Access Management (IAM) 執行個體描述檔,在您的執行個體上只提供 Session Manager 動作的許可權限。您也可以建立政策,為工作階段活動日誌提供所需許可,以便傳送到 Amazon Simple Storage Service (Amazon S3) 和 Amazon CloudWatch Logs。

建立執行個體描述檔後,請參閱將 IAM 角色連接至執行個體連接或取代執行個體描述檔,以了解有關如何將執行個體描述檔連接到執行個體的資訊。如需有關 IAM 執行個體描述檔和角色的詳細資訊,請參閱 IAM 使用者指南中的使用執行個體描述檔Amazon EC2 的 IAM 角色

建立含最小Session Manager許可的執行個體描述檔 (主控台)

請使用下列步驟來建立自訂 IAM 執行個體描述檔權限的政策,政策在您的執行個體上只提供唯一的 Session Manager 動作許可權限。

建立含最小 Session Manager 許可的執行個體描述檔 (主控台)

  1. 登入 AWS Management Console,並開啟位於 https://console.aws.amazon.com/iam/ 的 IAM 主控台。

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

  3. 請選擇 JSON 索引標籤。

  4. 將預設內容取代為以下內容:

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

    關於「ssmmessages」

    如需 ssmmessages 的資訊,請參閱 參考:ec2messages、ssmmessages 和其他 API 呼叫

    關於「kms:Decrypt」

    在這個政策中,kms:Decrypt 許可會啟用對工作階段資料的客戶金鑰加密和解密。如果您將使用 AWS Key Management Service (AWS KMS) 來加密工作階段資料,將 key-name 取代為您希望使用的 KMS 金鑰 的 Amazon 資源名稱 (ARN),格式為 arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-12345EXAMPLE

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

    , { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "key-name" }

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

  5. 選擇 Review policy (檢閱政策)

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

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

  8. 選擇 Create policy (建立政策)

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

  10. Create role (建立角色) 頁面,選擇 AWS service (服務),然後從 Choose the service that will use this role (選擇會使用此角色的服務) 清單,選擇 EC2

  11. 選擇 Next: Permissions (下一步:許可)

  12. Attached permissions policy (連接的許可政策) 頁面,選取您剛建立名稱左側的核取方塊,例如 SessionManagerPermissions

  13. 選擇 Next:Review (下一步:檢閱)

  14. Review (檢閱) 頁面的 Role name (角色名稱) 中,輸入 IAM 執行個體描述檔的名稱,例如 MySessionManagerInstanceProfile

  15. (選用) Role description (角色說明),輸入執行個體描述檔的說明。

  16. 選擇 Create Role (建立角色)

建立具有 Session Manager、Amazon S3 和 CloudWatch Logs (主控台) 許可的執行個體描述檔

請使用下列步驟來建立自訂 IAM 執行個體描述檔權限的政策,政策在您的執行個體上提供唯一的 Session Manager 動作許可。此政策還提供在 Amazon Simple Storage Service (Amazon S3) 儲存貯體和 Amazon CloudWatch Logs 日誌群組中存放工作階段日誌的所需許可。

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

若要建立具有 Session Manager、Amazon S3 和 CloudWatch Logs (控制台) 許可的執行個體描述檔

  1. 登入 AWS Management Console,並開啟位於 https://console.aws.amazon.com/iam/ 的 IAM 主控台。

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

  3. 請選擇 JSON 索引標籤。

  4. 將預設內容取代為以下內容。請務必將 DOC-EXAMPLE-BUCKETs3-bucket-prefix 取代為您的儲存貯體的名稱和其字首 (如果有的話)。如需以下政策中 ssmmessages 的相關資訊,請參閱 參考:ec2messages、ssmmessages 和其他 API 呼叫

    { "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-bucket-prefix/*" }, { "Effect": "Allow", "Action": [ "s3:GetEncryptionConfiguration" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "key-name" }, { "Effect": "Allow", "Action": "kms:GenerateDataKey", "Resource": "*" } ] }
    重要

    若要將工作階段日誌輸出到不同 AWS 帳戶 所擁有的 Amazon S3 儲存貯體,您必須將 IAM s3:PutObjectAcl 許可新增至此政策。如果未新增此許可,擁有 Amazon S3 儲存貯體的帳戶就無法存取工作階段輸出日誌。

  5. 選擇 Review policy (檢閱政策)

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

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

  8. 選擇 Create policy (建立政策)

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

  10. Create role (建立角色) 頁面,選擇 AWS service (服務),然後從 Choose the service that will use this role (選擇會使用此角色的服務) 清單,選擇 EC2

  11. 選擇 Next: Permissions (下一步:許可)

  12. Attached permissions policy (連接的許可政策) 頁面,選取您剛建立名稱左側的核取方塊,例如 SessionManagerPermissions

  13. 選擇 Next:Review (下一步:檢閱)

  14. Review (檢閱) 頁面的 Role name (角色名稱) 中,輸入 IAM 執行個體描述檔的名稱,例如 MySessionManagerInstanceProfile

  15. (選用) Role description (角色說明),輸入執行個體描述檔的說明。

  16. 選擇 Create Role (建立角色)