Amazon API Gateway
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用 API Gateway 控制台为 REST API 配置跨账户 Amazon Cognito 授权方

您现在还可以使用其他 AWS 账户中的 Amazon Cognito 用户池作为 API 授权方。每个账户可以在提供 Amazon API Gateway 的任何区域中。Amazon Cognito 用户池可使用持有者令牌身份验证策略(如 OAuth 或 SAML)。这样便可轻松地跨多个 API Gateway API 集中管理和共享重要的 Amazon Cognito 用户池授权方。

在本节中,我们将演示如何使用 Amazon API Gateway 控制台配置跨账户 Amazon Cognito 用户池。

这些说明假设您已经在一个 AWS 账户中有 API Gateway API,在另一个账户中有 Amazon Cognito 用户池。

使用 API Gateway 控制台配置跨账户 Amazon Cognito 授权方

在您的第一个账户 (即拥有 API 的账户) 中登录 Amazon API Gateway 控制台并执行以下操作:

  1. 找到您的 API,然后选择 Authorizers (授权方)

  2. 选择 Create New Authorizer (创建新授权方)

  3. 对于 Create Authorizer (创建授权方),在名称输入字段中键入授权方名称。

  4. 对于 Type (类型),选择 Cognito 选项。

  5. 对于 Cognito User Pool (Cognito 用户池),复制/粘贴您第二个账户中的用户池的完整 ARN。

    注意

    在 Amazon Cognito 控制台中,您可以在 General Settings (常规设置) 窗格的 Pool ARN (池 ARN) 字段找到您的用户池的 ARN。

  6. Token Source (令牌来源) 中键入标头的名称。API 客户端必须包括此标头名称才能将授权令牌发送到 Amazon Cognito 授权方。

  7. (可选)在 Token Validation (令牌验证) 输入字段中提供 RegEx 语句。API Gateway 将针对此表达式执行对输入令牌的初始验证并在成功验证后调用授权方。这有助于降低无效令牌产生费用的几率。

  8. 选择 Create (创建) 为 API 创建新的 Amazon Cognito 授权方。