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

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

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

创建用于 Amazon Web Service 的角色(IAM 控制台)

  1. 登录Amazon Web Services Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

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

  3. 选择 Amazon Web Service 角色名称。

  4. 选择用于您的服务的使用案例。使用案例由服务定义以包含服务要求的信任策略。

  5. 选择 Next (下一步)

  6. 如果可能,选择要用于权限策略的策略。否则,请选择 Create policy(创建策略)以打开新的浏览器选项卡并从头开始创建新策略。有关更多信息,请参阅 IAM 用户指南 中的创建 IAM policy

  7. 在您创建策略后,关闭该选项卡并返回到您的原始选项卡。选中您希望服务具有的权限策略旁边的复选框。

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

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

    • 从一组有限的权限中进行选择。

    • 从任何权限中进行选择。

    • 此时不选择任何策略。但是,您可以稍后创建策略,然后将这些策略附加到角色。

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

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

  9. 选择 Next (下一步)

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

    如果可能,输入有助于识别该角色的作用的角色名称或角色名称后缀。角色名称在您的 Amazon Web Services 账户 内必须是唯一的。由于角色名不区分大小写,因此您无法创建名为 PRODROLEprodrole 两者的角色。各种实体可能会引用该角色。因此,角色创建完毕后无法编辑角色名称。

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

  12. Step 1: Select trusted entities(步骤 1:选择可信实体)或 Step 2: Select permissions(步骤 2:选择权限)部分中的 Edit(编辑),以编辑角色的用户案例和权限。

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

  14. 检查该角色,然后选择创建角色

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

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

  1. 登录Amazon Web Services Management Console,然后通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

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

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

  4. 在用户列表中选择 Jorge 对应的复选框,然后选择 Attach policy(附加策略)。Jorge 现在可以管理 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(查看策略)。

    注意

    您可以随时在 Visual editor(可视化编辑器)和 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. 必须使用 Jorge 当前拥有的 NetworkAdministrator 策略所允许的角色名称。允许以 flow-logs- 开头的任何名称。在此示例中,对于 Role name(角色名称),请输入 flow-logs-for-jorge

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

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

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

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

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