创建策略并将其附加到 IAM 用户
要使用户可调用 API 管理服务或 API 执行服务,您必须要为 IAM 用户创建可控制对 API Gateway 实体的访问的 IAM 策略,然后再将该策略附加到 IAM 用户。以下步骤介绍如何创建 IAM 策略。
创建您自己的 IAM 策略
登录 Amazon Web Services Management Console,单击 https://console.aws.amazon.com/iam/
打开 IAM 控制台。 -
选择 Policies,然后选择 Create Policy。如果 Get Started (开始使用) 按钮出现,选择此按钮,然后选择 Create Policy (创建策略)。
-
在 Create Your Own Policy 旁,选择 Select。
-
对于 Policy Name (策略名称),键入一个便于您稍后参考的值。(可选)在 Description (描述) 中键入说明性文本。
-
对于 Policy Document (策略文档),请使用以下格式键入策略语句,然后选择 Create Policy (创建策略):
{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "
action-statement
" ], "Resource" : [ "resource-statement
" ] }, { "Effect" : "Allow", "Action" : [ "action-statement
" ], "Resource" : [ "resource-statement
" ] } ] }在此语句中,根据需要替换
action-statement
和resource-statement
,然后添加其他语句以指定您要让 IAM 用户管理的 API Gateway 实体,以及让 IAM 用户可以调用的 API 方法,或者两者。默认情况下,IAM 用户均没有权限,除非有明确的对应Allow
语句。 -
要对某个用户启用策略,请选择用户。
-
选择您要向其附加策略的 IAM 用户。
您刚刚创建了一个 IAM 策略。除非将策略附加到 IAM 用户、包含该用户的 IAM 组织,或者是用户担任的 IAM 角色,否则它不会产生任何影响。
将 IAM 策略附加到 IAM 用户
-
对于所选的用户,请选择权限选项卡,然后选择 Attach Policy (挂载策略)。
-
在 Grant permissions (授予权限) 下,选择 Attach existing policies directly (直接挂载现有策略)。
-
从显示的列表中选择刚刚创建的策略文档,然后选择 Next: Review。
-
在 Permissions summary (权限总结) 下,选择 Add permissions (添加权限)。
或者,您可以将用户添加到 IAM 组(如果该用户尚不是组成员),然后将策略文档附加到该组,使附加的策略适用于所有组成员。这有助于管理和更新一组 IAM 用户的策略配置。在下文中,我们将重点介绍如何将策略附加到 IAM 组,并假定您已创建群组并已将用户添加到该组。
将 IAM 策略文档附加到 IAM 组
-
从主导航窗格中选择组。
-
在所选组下选择权限选项卡。
-
选择 Attach policy。
-
选择您之前创建的策略文档,然后选择 Attach policy (挂载策略)。
要让 API Gateway 代表您调用其他Amazon服务,请创建 Amazon API Gateway 类型的 IAM 角色。
创建 Amazon API Gateway 类型的角色
-
从主导航窗格中选择角色。
-
选择 Create New Role。
-
键入 Role name (角色名称) 的名称,然后选择 Next Step (下一步)。
-
在 Select Role Type (选择角色类型) 下的 Amazon Service Roles (服务角色) 中,选择 Amazon API Gateway 旁边的 Select (选择)。
-
在附加策略下,选择一个可用的托管 IAM 权限策略(例如,如果您想让 API Gateway 在 CloudWatch 中记录指标,则选择 AmazonAPIGatewayPushToCloudWatchLog),然后选择下一步。
-
在 Trusted Entities (可信任的实体) 下,验证 apigateway.amazonaws.com 已作为条目列出,然后选择 Create Role (创建角色)。
-
在新创建的角色中,选择权限选项卡,然后选择 Attach Policy (挂载策略)。
-
选择先前创建的自定义 IAM 策略文档,然后选择附加策略。