本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
步驟 3:限制 CodeDeploy 使用者的權限
基於安全理由,建議您將在中建立的管理使用者的權限限制為僅限步驟 1:設定於在中建立和管理部署所需的權限 CodeDeploy。
請使用下列一系列程序來限制系 CodeDeploy 統管理使用者的權限。
開始之前
-
請確定您已按照中的指示在 IAM 身分中心建立 CodeDeploy 管理使用者步驟 1:設定。
建立許可集合
您稍後會將此權限集指派給系 CodeDeploy 統管理使用者。
請登入 AWS Management Console 並開啟 AWS IAM Identity Center 主控台,網址為 https://console.aws.amazon.com/singlesignon/
。 -
在瀏覽窗格中,選擇 [權限集],然後選擇 [建立權限集]。
-
選擇 [自訂權限集]。
-
選擇下一步。
-
選擇內嵌政策。
-
移除範例程式碼。
-
新增下列原則程式碼:
{ "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": "*" } ] }
-
選擇下一步。
-
在權限集名稱中,輸入:
CodeDeployUserPermissionSet
-
選擇下一步。
-
在 [檢閱並建立] 頁面上,檢閱資訊並選擇 [建立]。
將權限集指派給 CodeDeploy 系統管理使用者
-
在功 AWS 帳戶 能窗格中,選擇 AWS 帳戶,然後選取您目前登入的對象旁邊的核取方塊。
-
選擇「指派使用者或群組」按鈕。
-
選擇 Users (使用者) 索引標籤。
-
選取 CodeDeploy 管理使用者旁邊的核取方塊。
-
選擇下一步。
-
選取旁邊的核取方塊
CodeDeployUserPermissionSet
。 -
選擇下一步。
-
複查資訊,然後選擇「提交」。
現在,您已經分配了 CodeDeploy 管理用戶和您
CodeDeployUserPermissionSet
的 AWS 帳戶,將它們綁定在一起。
若要以 CodeDeploy 系統管理使用者的身分登出並重新登入
-
登出之前,請確定您擁有 CodeDeploy 管理員使用者的 AWS 存取入口網站 URL 以及使用者名稱和一次性密碼。
注意
如果您沒有這些信息,請轉到 IAM 身份中心的 CodeDeploy 管理用戶詳細信息頁面,選擇重置密碼,生成一次性密碼 [...] ,然後再次重設密碼以在螢幕上顯示資訊。
-
登出 AWS。
-
將 AWS 訪問門戶網址粘貼到瀏覽器的地址欄中。
-
以管理員使用者身 CodeDeploy 分登入。
螢幕上會出現一個AWS 帳戶方塊。
-
選擇 AWS 帳戶,然後選擇您指派 CodeDeploy 管 AWS 帳戶 理員使用者和權限集的名稱。
-
在旁邊
CodeDeployUserPermissionSet
,選擇 [管理主控台]。AWS Management Console 隨即出現。您現在已以有 CodeDeploy 限權限的管理使用者身分登入。您現在可以以此使用者身分執行 CodeDeploy相 CodeDeploy關作業,而且只能執行相關作業。