2017-07-15 65 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身份標識填充的其他標頭。

相關問題