步驟 3:限制 CodeDeploy 使用者的權限 - AWS CodeDeploy

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

步驟 3:限制 CodeDeploy 使用者的權限

基於安全理由,建議您將在中建立的管理使用者的權限限制為僅限步驟 1:設定於在中建立和管理部署所需的權限 CodeDeploy。

請使用下列一系列程序來限制系 CodeDeploy 統管理使用者的權限。

開始之前
  • 請確定您已按照中的指示在 IAM 身分中心建立 CodeDeploy 管理使用者步驟 1:設定

建立許可集合

您稍後會將此權限集指派給系 CodeDeploy 統管理使用者。

  1. 請登入 AWS Management Console 並開啟 AWS IAM Identity Center 主控台,網址為 https://console.aws.amazon.com/singlesignon/

  2. 在瀏覽窗格中,選擇 [權限集],然後選擇 [建立權限集]。

  3. 選擇 [自訂權限集]

  4. 選擇下一步

  5. 選擇內嵌政策

  6. 移除範例程式碼。

  7. 新增下列原則程式碼:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "CodeDeployAccessPolicy", "Effect": "Allow", "Action": [ "autoscaling:*", "codedeploy:*", "ec2:*", "lambda:*", "ecs:*", "elasticloadbalancing:*", "iam:AddRoleToInstanceProfile", "iam:AttachRolePolicy", "iam:CreateInstanceProfile", "iam:CreateRole", "iam:DeleteInstanceProfile", "iam:DeleteRole", "iam:DeleteRolePolicy", "iam:GetInstanceProfile", "iam:GetRole", "iam:GetRolePolicy", "iam:ListInstanceProfilesForRole", "iam:ListRolePolicies", "iam:ListRoles", "iam:PutRolePolicy", "iam:RemoveRoleFromInstanceProfile", "s3:*", "ssm:*" ], "Resource": "*" }, { "Sid": "CodeDeployRolePolicy", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::account-ID:role/CodeDeployServiceRole" } ] }

    在此原則中,請將 arn: aw: iam:: 帳戶 ID: 角色/取代為您在中建立之服務角色CodeDeployServiceRole的 ARN 值。 CodeDeploy 步驟 2:建立服務角色 CodeDeploy您可以在 IAM 主控台中服務角色的詳細資料頁面中找到 ARN 值。

    上述政策可讓您將應用程式部署到 AWS Lambda 運算平台、EC2 /內部部署運算平台和 Amazon ECS 運算平台。

    您可以使用本文件中提供的 AWS CloudFormation 範本來啟動相容的 Amazon EC2 執行個體 CodeDeploy。若要使用 AWS CloudFormation 範本來建立應用程式、部署群組或部署設定,您必須將cloudformation:*權限新增至 AWS CloudFormation CodeDeploy 系統管理使用者的權限原則,以及提供相 AWS CloudFormation 依 AWS 服務和動作的存取權,如下所示:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ ... "cloudformation:*" ], "Resource": "*" } ] }
  8. 選擇下一步

  9. 權限集名稱中,輸入:

    CodeDeployUserPermissionSet
  10. 選擇下一步

  11. 在 [檢閱並建立] 頁面上,檢閱資訊並選擇 [建立]。

將權限集指派給 CodeDeploy 系統管理使用者
  1. 在功 AWS 帳戶 能窗格中,選擇 AWS 帳戶,然後選取您目前登入的對象旁邊的核取方塊。

  2. 選擇「指派使用者或群組」按鈕。

  3. 選擇 Users (使用者) 索引標籤。

  4. 選取 CodeDeploy 管理使用者旁邊的核取方塊。

  5. 選擇下一步

  6. 選取旁邊的核取方塊CodeDeployUserPermissionSet

  7. 選擇下一步

  8. 複查資訊,然後選擇「提交」。

    現在,您已經分配了 CodeDeploy 管理用戶和您CodeDeployUserPermissionSet的 AWS 帳戶,將它們綁定在一起。

若要以 CodeDeploy 系統管理使用者的身分登出並重新登入
  1. 登出之前,請確定您擁有 CodeDeploy 管理員使用者的 AWS 存取入口網站 URL 以及使用者名稱和一次性密碼。

    注意

    如果您沒有這些信息,請轉到 IAM 身份中心的 CodeDeploy 管理用戶詳細信息頁面,選擇重置密碼,生成一次性密 [...] ,然後再次重設密碼以在螢幕上顯示資訊。

  2. 登出 AWS。

  3. 將 AWS 訪問門戶網址粘貼到瀏覽器的地址欄中。

  4. 以管理員使用者身 CodeDeploy 分登入。

    螢幕上會出現一個AWS 帳戶方塊。

  5. 選擇 AWS 帳戶,然後選擇您指派 CodeDeploy 管 AWS 帳戶 理員使用者和權限集的名稱。

  6. 在旁邊CodeDeployUserPermissionSet,選擇 [管理主控台]

    AWS Management Console 隨即出現。您現在已以有 CodeDeploy 限權限的管理使用者身分登入。您現在可以以此使用者身分執行 CodeDeploy相 CodeDeploy關作業,而且能執行相關作業。