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

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

步驟 3:限制 CodeDeploy 使用者的許可

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

使用下列一系列程序來限制 CodeDeploy 管理使用者的許可。

開始之前
  • 請確定您已依照 中的指示,在 IAM Identity Center 中建立 CodeDeploy 管理使用者步驟 1:設定

建立許可集合

稍後您將將此許可集指派給 CodeDeploy 管理使用者。

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

  2. 在導覽窗格中,選擇許可集 ,然後選擇建立許可集

  3. 選擇自訂許可集

  4. 選擇 Next (下一步)

  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:aws:iam::account-ID:role/CodeDeployServiceRole 您在 中建立之 CodeDeploy 服務角色ARN的值步驟 2:建立服務角色 CodeDeploy。您可以在IAM主控台中服務角色的詳細資訊頁面中找到 ARN值。

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

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

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

  9. 許可集名稱 中,輸入:

    CodeDeployUserPermissionSet
  10. 選擇 Next (下一步)

  11. 檢閱和建立頁面上,檢閱資訊,然後選擇建立

將許可集指派給 CodeDeploy 管理使用者
  1. 在導覽窗格中,選擇 AWS 帳戶,然後選擇 AWS 帳戶 您目前登入之 旁邊的核取方塊。

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

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

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

  5. 選擇 Next (下一步)

  6. 選取 旁的核取方塊CodeDeployUserPermissionSet

  7. 選擇 Next (下一步)

  8. 檢閱資訊,然後選擇提交

    您現在已將 CodeDeploy 管理使用者 CodeDeployUserPermissionSet 和 指派給您的 AWS 帳戶,並將其繫結在一起。

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

    注意

    如果您沒有此資訊,請前往 IAM Identity Center 中的 CodeDeploy 管理使用者詳細資訊頁面,選擇重設密碼 產生一次性密碼 【...】 和再次重設密碼,以在畫面上顯示資訊。

  2. 登出 AWS。

  3. 將 AWS 存取入口網站貼URL到瀏覽器的地址列。

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

    畫面上會出現一個AWS 帳戶方塊。

  5. 選擇 AWS 帳戶,然後選擇 AWS 帳戶 您為其指派 CodeDeploy 管理使用者和許可集的 名稱。

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

    AWS Management Console 隨即顯示 。您現在以具有有限許可的 CodeDeploy 管理使用者身分登入。您現在可以以這個使用者身分執行 CodeDeploy相關操作,以及僅執行 CodeDeploy相關操作。