本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
身分驗證後 Lambda 觸發程序
身分驗證後觸發程序不會變更使用者的身分驗證流程。Amazon Cognito 會在身分驗證完成且使用者收到權杖後叫用此 Lambda。當您想要新增身分驗證事件的自訂後置處理時,請新增身分驗證後觸發程序,例如記錄或使用者設定檔調整,這些調整會在下次登入時反映。
身分驗證流程概觀
如需詳細資訊,請參閱使用者集區身分驗證流程。
身分驗證後 Lambda 觸發程序參數
Amazon Cognito 傳遞至此 Lambda 函數的請求,是以下參數和 Amazon Cognito 新增至所有請求的常用參數之組合。
身分驗證後請求參數
- newDeviceUsed
-
此旗標指出使用者是否已在新的裝置登入。唯有當使用者集區的記住裝置值為
Always
或User Opt-In
時,Amazon Cognito 才會設定此旗標。 - userAttributes
-
代表使用者屬性的一或多組名稱/值。
- clientMetadata
-
您可以做為 Lambda 函數的自訂輸入提供的一個或多個鍵值組,該函數是您用於身分驗證後觸發程序所指定。若要將此資料傳遞至 Lambda 函數,您可以在 AdminRespondToAuthChallenge和 ClientMetadataRespondToAuthChallengeAPI動作中使用 參數。Amazon Cognito 不會在傳遞至身分驗證後函數的請求中包含來自 AdminInitiateAuth和 InitiateAuthAPI操作中 ClientMetadata 參數的資料。
身分驗證後回應參數
Amazon Cognito 不預期會在回應中收到任何其他傳回的資訊。您的函數可以使用 API操作來查詢和修改資源,或將事件中繼資料記錄到外部系統。
身分驗證教學課程
Amazon Cognito 登入使用者之後,會立即啟用身分驗證後 Lambda 函數。請參閱這些適用於 JavaScript、Android 和 iOS 的登入教學課程。
平台 | 教學課程 |
---|---|
JavaScript 身分 SDK | 使用 登入使用者 JavaScript |
Android Identity SDK | 使用 Android 登入使用者 |
iOS Identity SDK | 使用 iOS 登入使用者 |
身分驗證後範例
此身分驗證後範例 Lambda 函數會將資料從成功登入傳送至 CloudWatch Logs。
Amazon Cognito 會將事件資訊傳遞至您的 Lambda 函數。此函數會將相同事件物件傳回 Amazon Cognito,並在回應中附上任何變更。在 Lambda 主控台中,您可使用與 Lambda 觸發程序相關聯的資料來設定測試事件。下列是此程式碼範例的測試事件: