目的
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']