本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
步骤 3:限制 CodeDeploy 用户的权限
出于安全考虑,我们建议您将您在中创建的管理用户的权限限制步骤 1:设置为在中创建和管理部署所需的权限 CodeDeploy。
使用以下一系列过程来限制 CodeDeploy 管理用户的权限。
开始前的准备工作
-
确保按照中的说明在 Ident IAM ity Center 中创建了 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:aws:iam::account-ID:role/CodeDeployServiceRole
使用您在中创建的 CodeDeploy 服务角色的ARN价值步骤 2:为创建服务角色 CodeDeploy。您可以在IAM控制台中服务角色的详细信息页面中找到该ARN值。上述策略允许您将应用程序部署到 AWS Lambda 计算平台、EC2 /本地计算平台和 Ama ECS zon 计算平台。
您可以使用本文档中提供的 AWS CloudFormation 模板启动与兼容的 Amazon EC2 实例 CodeDeploy。要使用 AWS CloudFormation 模板创建应用程序、部署组或部署配置,必须通过向 CodeDeploy 管理用户的权限策略添加权限来提供访问
cloudformation:*
权限 AWS CloudFormation以及 AWS CloudFormation 依赖的 AWS 服务和操作,如下所示:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ ... "cloudformation:*" ], "Resource": "*" } ] }
-
选择下一步。
-
在权限集名称中,输入:
CodeDeployUserPermissionSet
-
选择下一步。
-
在查看和创建页面上,检查相应信息,然后选择创建。
将权限集分配给 CodeDeploy 管理用户
-
在导航窗格中 AWS 账户,选择,然后选中您当前登录 AWS 账户 的旁边的复选框。
-
选择分配用户或组按钮。
-
选择用户选项卡。
-
选中 CodeDeploy 管理员用户旁边的复选框。
-
选择下一步。
-
选中
CodeDeployUserPermissionSet
旁边的复选框。 -
选择下一步。
-
检查相应信息,然后选择提交。
现在,您已将 CodeDeploy 管理员用户和分配
CodeDeployUserPermissionSet
给您的 AWS 账户,并将它们绑定在一起。
注销并以 CodeDeploy 管理员用户身份重新登录
-
在注销之前,请确保您拥有 CodeDeploy 管理员 AWS 用户的访问门户URL以及用户名和一次性密码。
注意
如果您没有此信息,请转到 Ident IAM ity Center 中的 CodeDeploy 管理员用户详细信息页面,选择重置密码,生成一次性密码 [...] ,然后再次重置密码以在屏幕上显示信息。
-
退出 AWS。
-
将 AWS 访问门户粘贴URL到浏览器的地址栏中。
-
以 CodeDeploy 管理员用户身份登录。
屏幕上会出现一个 AWS 账户框。
-
选择 AWS 账户,然后选择您 AWS 账户 为其分配了 CodeDeploy 管理员用户和权限集的名称。
-
在
CodeDeployUserPermissionSet
旁,选择管理控制台。AWS Management Console 出现了。现在,您已以 CodeDeploy 具有有限权限的管理员用户身份登录。现在,您可以以该用户身份执行 CodeDeploy CodeDeploy相关操作,并且只能执行相关的操作。