6
我正在開發基於API Gateway和Lambda的應用程序。我將POST /訂閱配置爲「AWS_IAM」。所以現在它不能直接訪問,但我可以通過Cognito身份驗證訪問API。如何將cognito用戶信息傳遞給lambda?
現在的問題是我的Lambda不知道誰是API調用者。如何知道這一點?
我有2個用戶:「Bob」和「John」。我的Lambda需要知道調用者是Bob還是John。
感謝,
我正在開發基於API Gateway和Lambda的應用程序。我將POST /訂閱配置爲「AWS_IAM」。所以現在它不能直接訪問,但我可以通過Cognito身份驗證訪問API。如何將cognito用戶信息傳遞給lambda?
現在的問題是我的Lambda不知道誰是API調用者。如何知道這一點?
我有2個用戶:「Bob」和「John」。我的Lambda需要知道調用者是Bob還是John。
感謝,
您可以從作爲context Object Properties section of the Lambda Programming Model help topic解釋context
參數(context.identity
)的identity
財產得到Cognito身份ID。擁有Cognito唯一標識符後,您可以使用Cognito Sync的API與開發人員憑據查找Cognito中存儲的有關此用戶的信息,或者可以使用該標識符將ID映射到存儲在別處的用戶信息。
確保爲AWS_IAM配置了API網關(如您所述),並確保在方法的「集成請求」設置下選中「調用調用方憑證」。
謝謝。它適用於GET方法。但映射不適用於DELETE,POST和其他方法。有沒有特別的配置? – user2882027
我看到了同樣的問題。我會ping API Gateway團隊,並要求他們在這裏提供幫助。 –
我將上下文類型從「application/json」更改爲「text/plain」。 – user2882027