LambdaからAuthFlow=USER_SRP_AUTHでCognitoの認証を通す
目的
LambdaからInitiateAuth
のAuthFlow
をUSER_SRP_AUTH
でCognitoの認証を通す。
※AdminInitiateAuth
のADMIN_USER_PASSWORD_AUTH
を使って良いならそっち推奨
(boto3のadmin_initiate_auth
使ってID/PWだけで簡単に実装できる。)
方法
自力でやろうとすると、initiate_auth
、respond_to_auth_challenge
を実行する必要があるが、
respond_to_auth_challenge
の方のPASSWORD_CLAIM_SIGNATURE
の計算で挫折してしまうため、
こちらを拝借する。。
※pip install
できる(はず)だが、ファイル数が少ないので直接ダウンロードして使う。
__init__.py
が居ると、色々インストールしないといけなくなるため、削除してしまってOK。
(↓になるように)
Lambdaに下記を実装する。
from warrant.aws_srp import AWSSRP
u = AWSSRP(pool_id='ユーザプールID', client_id='クライアントID', username='ID', password='PW')
res = u.authenticate_user()
id_token = res['AuthenticationResult']['IdToken']
スペシャルサンクス
Author And Source
この問題について(LambdaからAuthFlow=USER_SRP_AUTHでCognitoの認証を通す), 我々は、より多くの情報をここで見つけました https://qiita.com/k_hoso/items/4b354f10e993f6d0e398著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .