创建角色并附加策略(控制台) - Amazon Identity and Access Management
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

创建角色并附加策略(控制台)

上文列出的一些策略授予了通过角色配置 Amazon 服务的能力,以便这些服务能够代表您执行操作。工作职能策略或者指定您必须使用的确切角色名称,或者至少包括指定可用名称的开头部分的前缀。要创建这些角色之一,请执行以下程序中的步骤。

创建用于 Amazon 服务的角色(IAM 控制台)

  1. 登录 Amazon Web Services Management Console,打开 IAM 控制台 https://console.aws.amazon.com/iam/

  2. 在 IAM 控制台的导航窗格中,选择 Roles,然后选择 Create role

  3. 选择 Amazon 服务角色类型,然后选择要允许担任该角色的服务。

  4. 选择用于您的服务的使用案例。如果指定的服务只有一个使用案例,则系统会为您选择此使用案例。使用案例由服务定义以包含服务要求的信任策略。然后选择 Next: Permissions (下一步:权限)

  5. 如果可能,选择要用作权限策略的策略,或选择创建策略以打开新的浏览器选项卡并从头开始创建新策略。有关更多信息,请参阅 IAM 用户指南创建 IAM 策略过程的步骤 4。在您创建策略后,关闭该选项卡并返回到您的原始选项卡。选中您希望服务具有的权限策略旁边的复选框。

    根据您选择的使用案例,该服务可能允许您执行以下任意操作:

    • 不执行任何操作,因为该服务为角色定义了权限

    • 允许您从一组有限的权限中进行选择

    • 允许您从任意权限中进行选择

    • 允许您此时不选择策略,稍后创建策略,然后将这些策略附加到角色

  6. (可选)设置权限边界。这是一项高级功能,可用于服务角色,但不可用于服务相关角色。

    展开 Set permissions boundary(设置权限边界)部分,然后选择 Use a permissions boundary to control the maximum role permissions(使用权限边界控制最大角色权限)。IAM 包括您的账户中的 Amazon 托管策略和客户托管策略的列表。选择要用于权限边界的策略,或选择创建策略以打开新的浏览器选项卡并从头开始创建新策略。有关更多信息,请参阅 IAM 用户指南创建 IAM 策略过程的步骤 4。在您创建策略后,关闭该选项卡并返回到您的原始选项卡,以选择要用于权限边界的策略。

  7. 选择下一步: 标签

  8. (可选)通过以键值对的形式附加标签来向用户添加元数据。有关在 IAM 中使用标签的更多信息,请参阅 IAM 用户指南中的标记 IAM 实体

  9. 选择 Next: Review (下一步: 审核)

  10. 对于 Role name (角色名称),角色名称自定义的程度由服务定义。如果服务定义角色的名称,则此选项不可编辑。在其他情况下,服务可能定义角色的前缀并允许您键入可选的后缀。某些服务允许您指定角色的整个名称。

    如果可能,输入有助于识别该角色的作用的角色名称或角色名称后缀。角色名称在您的 Amazon Web Services 账户 内必须是唯一的。名称不区分大小写。例如,您无法同时创建名为 PRODROLEprodrole 的角色。由于多个单位可能引用该角色,角色创建完毕后无法编辑角色名称。

  11. (可选)对于 Role description (角色描述),输入新角色的描述。

  12. 检查角色,然后选择 Create role

示例 1:将用户配置为数据库管理员(控制台)

此示例显示将 IAM 用户 Alice 配置为 Database Administrator(数据库管理员)需要执行的步骤。您需要使用此部分中的表中第一行中的信息,并允许该用户启用 Amazon RDS 监控。您将 DatabaseAdministrator 策略附加给 Alice 的 IAM 用户,以便她可以管理 Amazon 数据库服务。该策略还允许 Alice 将名为 rds-monitoring-role 的角色传递给 Amazon RDS 服务,从而允许该服务代表她监控 RDS 数据库。

  1. 登录 Amazon Web Services Management Console,打开 IAM 控制台 https://console.aws.amazon.com/iam/

  2. 选择 Policies (策略),然后在搜索框中键入 database

  3. 选择 DatabaseAdministrator 策略对应的复选框,再选择 Policy actions(策略操作),然后选择 Attach(附上)。

  4. 在用户列表中选择 Alice,然后选择 Attach policy。Alice 现在可以管理 Amazon 数据库了。但是,要允许 Alice 监控这些数据库,您必须配置服务角色。

  5. 在 IAM 控制台的导航窗格中,选择 Roles,然后选择 Create role

  6. 选择 Amazon Service(亚马逊云科技服务)角色类型,然后选择 Amazon RDS

  7. 选择用于增强监控的 Amazon RDS 角色使用案例。

  8. Amazon RDS 将为您的角色定义权限。选择下一步:审核以继续。

  9. 角色名称必须是 Alice 当前拥有的 DatabaseAdministrator 策略中指定的一个。其中一个是 rds-monitoring-role。键入它作为 Role name

  10. (可选) 对于 Role description,键入新角色的描述。

  11. 在检查详细信息后,选择 Create role

  12. 现在,Alice 即可在 Amazon RDS 控制台的 Monitoring(监控)部分中启用 RDS Enhanced Monitoring(RDS 增强监控)。例如,她可以在创建数据库实例、创建只读副本或修改数据库实例时执行此操作。在将 Enable Enhanced Monitoring 设为 Yes 时,她必须在 Monitoring Role 框中键入自己创建的角色名称:rds-monitoring-role。

示例 2:将用户配置为网络管理员(控制台)

此示例显示将 IAM 用户 Juan 配置为 Network Administrator(网络管理员)需要执行的步骤。它使用该部分的表中的信息来允许 Juan 监控往来于 VPC 的 IP 流量。它还允许 Juan 将该信息记录在 CloudWatch Logs 日志中。您将 NetworkAdministrator 策略附加给 Juan 的 IAM 用户,以便他可以配置 Amazon 网络资源。该策略还允许 Juan 在您创建流日志时,将名称以 Amazon EC2 开头的角色传递给 flow-logs*。此场景与示例 1 不同,这里没有预定义的服务角色类型,因此您必须执行几个不同的步骤。

  1. 登录 Amazon Web Services Management Console,打开 IAM 控制台 https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Policies (策略),然后在搜索框中键入 network

  3. 选中 NetworkAdministrator 策略旁的复选框,然后依次选择 Policy actions(策略操作)和 Attach(附上)。

  4. 在用户列表中选择 Juan 对应的复选框,然后选择 Attach policy。Juan 现在可以管理 Amazon 网络资源了。但是,为了监控 VPC 中的 IP 流量,您必须配置服务角色。

  5. 由于您需要创建的服务角色没有预定义的托管策略,您必须先创建一个。在导航窗格中,选择策略,然后选择创建策略

  6. 选择 JSON 选项卡,然后复制以下 JSON 策略文档中的文本。将该文本粘贴到 JSON 文本框中。

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Effect": "Allow", "Resource": "*" } ] }
  7. 解决策略验证过程中生成的任何安全警告、错误或常规警告,然后选择 Review policy(查看策略)。

    注意

    您可以随时在可视化编辑器JSON 选项卡之间切换。不过,如果您进行更改或在可视化编辑器选项卡中选择 Review policy(查看策略),IAM 可能会调整您的策略结构以针对可视化编辑器进行优化。有关更多信息,请参阅 调整策略结构

  8. Review (查看) 页面上,键入 vpc-flow-logs-policy-for-service-role 作为策略名称。查看策略摘要以查看您的策略授予的权限,然后选择创建策略以保存您的工作。

    将在托管策略列表中显示新策略,并已准备好附加该策略。

  9. 在 IAM 控制台的导航窗格中,选择 Roles,然后选择 Create role

  10. 选择 Amazon Service(亚马逊云科技服务)角色类型,然后选择 Amazon EC2

  11. 选择 Amazon EC2 使用案例。

  12. 附加权限策略页面上,选择您之前创建的策略:vpc-flow-logs-policy-for-service-role,然后选择下一步:审核

  13. 必须使用 Juan 当前拥有的 NetworkAdministrator 策略所允许的角色名称。允许以 flow-logs- 开头的任何名称。在此示例中,对于 Role name (角色名称),请键入 flow-logs-for-juan

  14. (可选) 对于 Role description,键入新角色的描述。

  15. 在检查详细信息后,选择 Create role

  16. 现在可以配置本场景需要的信任策略。在 Roles (角色) 页面上,选择 flow-logs-for-juan 角色(选择角色名称而不是复选框)。在新角色的详细信息页面上,选择 Trust relationships (信任关系) 选项卡,然后选择 Edit trust relationship (编辑信任关系)

  17. 将条目替换为 ec2.amazonaws.com,“Service”行改为读取,如下所示:

    "Service": "vpc-flow-logs.amazonaws.com"
  18. Juan 现在可以在 Amazon EC2 控制台中为 VPC 或子网创建流日志了。当创建流日志时,请指定 flow-logs-for-juan 角色。该角色拥有创建日志并向其写入数据的权限。