Connectez-vous ci-dessous.
validationData
comme paramètre du deuxième élément.Auth.signIn({"username": user_id, "password": user_password, "validationData": { "code": "WinAuth_code" }})
//* Le code peut être pris avec le déclencheur de pré-authentification de Cognito
ʻLe premier paramètre d'Amplify.signIn () est spécifié au format
SignInOpts`.
https://aws-amplify.github.io/amplify-js/api/classes/authclass.html#signin
https://aws-amplify.github.io/amplify-js/api/globals.html#usernamepasswordopts
Le déclencheur de pré-authentification est utilisé pour obtenir le «code» de «validationData» et valider le code.
import boto3
def lambda_handler(event, context):
#Exemple de code pour obtenir le groupe associé au nom d'utilisateur
client = boto3.client('cognito-idp')
response = client.admin_list_groups_for_user(UserPoolId=event['userPoolId'], Username=event['userName'] )
print("---- ---- ---- ---- ---- ---- ---- ")
print(event)
print(response)
print("---- ---- ---- ---- ---- ---- ---- ")
#Exécuter la vérification du code * Source omise
#Changer le message en fonction de la condition de l'erreur
# ※
#Vous ne pouvez modifier le message qu'en cas d'erreur (vous ne pouvez pas modifier l'état HTTP), donc
#Si le code est incorrect, un message dédié sera renvoyé à Amplify.
raise Exception("Cannot authenticate users from this user pool app client")
return event
Faites attention à ce qui suit
{'callerContext': {'awsSdkVersion': 'aws-sdk-unknown-unknown',
'clientId': 'xxxxxxxxxxxxxxxxxxxxxxxxxx'},
'region': 'ap-northeast-1',
'request': {'userAttributes': {'cognito:token_nbf': '1582593027733',
'cognito:user_status': 'CONFIRMED',
'sub': '67eb1ed1-240b-4861-9844-f82ebc08d2f8'},
'userNotFound': False,
'validationData': {'aaaa': '12345'}},
'response': {},
'triggerSource': 'PreAuthentication_Authentication',
'userName': 'hogehoge',
'userPoolId': 'ap-northeast-1_xxxxxxxxx',
'version': '1'}
Recommended Posts