2017-07-15 42 views
0

我在我的web应用程序中使用AWS Cognito身份验证。我有一个带有REST API的PHP后端。用户身份验证后,我使用this library向AWS API网关发出请求。 API网关方法具有HTTP集成类型。他们将HTTP请求代理到我的PHP后端。如何在我的PHP后端获得Cognito身份标识?我需要在后端为Cognito用户设置一个关系引用。如何获取AWS API网关请求的后端Cognito身份标识?

回答

2

API网关使呼叫者的身份标识在request context中可用。假设您正在使用Cognito身份池(联合),您正在寻找此属性:$context.identity.cognitoIdentityId

您可以配置API网关将新标头中的标识ID的值发送到您的后端。要做到这一点,你必须:

  1. 打开方法配置的合并请求窗格
  2. 展开HTTP标头部分,然后单击“添加页眉”链接
  3. 给你头一个名称,如X-Cognito-Identity-Id
  4. 在“映射自”字段中,使用以下表达式:context.identity.cognitoIdentityId
  5. 使用右侧的复选标记链接保存配置更改。

重新部署API并且您的PHP后端应该从原始请求开始接收使用Cognito身份标识填充的其他标头。

相关问题