

# 使用 API Gateway 控制台为 REST API 配置跨账户 Amazon Cognito 授权方
<a name="apigateway-cross-account-cognito-authorizer"></a>

您现在还可以使用来自其他 Amazon 账户的 Amazon Cognito 用户池作为 API 授权方。Amazon Cognito 用户池可使用持有者令牌身份验证策略（如 OAuth 或 SAML）。这样就可以轻松地跨多个 API Gateway API 集中管理和共享中央 Amazon Cognito 用户池授权方。

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

这些说明假定您已在一个 Amazon 账户中拥有 API Gateway API，在另一个账户中有 Amazon Cognito 用户池。

## 为 REST API 创建跨账户 Amazon Cognito 授权方
<a name="apigateway-configure-cross-account-cognito-authorizer"></a>

在您拥有 API 的账户中登录 Amazon API Gateway 控制台，然后执行以下操作：

1. 在 API Gateway 中创建新的 API 或选择现有 API。

1. 在主导航窗格中，选择**授权方**。

1. 选择**创建授权方**。

1. 要配置新的授权方来使用用户池，请执行以下操作：

   1.  在**授权方名称**中，输入名称。

   1. 对于**授权方类型**，请选择 **Cognito**。

   1. 对于 **Cognito 用户群体**，输入您第二个账户中的用户群体的完整 ARN。
**注意**  
在 Amazon Cognito 控制台中，您可以在**常规设置**窗格的**池 ARN** 字段找到您的用户池的 ARN。

   1.  对于**令牌来源**，输入 **Authorization** 作为标头名称，以在用户成功登录时传递 Amazon Cognito 所返回的身份令牌或访问令牌。

   1. （可选）在**令牌验证**字段中输入一个正则表达式，以在使用 Amazon Cognito 对请求进行授权之前，验证身份令牌的 `aud`（受众）字段。请注意，在使用访问令牌时，由于访问令牌不包含 `aud` 字段，此验证将拒绝请求。

   1. 选择**创建授权方**。