Ce bonjour sekitaka. Découvrez comment transmettre un identifiant d'identité Cognito d'API Gateway à Lambda.
Cette méthode peut être utilisée dans les situations suivantes.
Supposons que vous utilisez Cognito dans votre application mobile et que l'authentification API Gateway est définie sur l'authentification IAM. En d'autres termes, seul l'utilisateur qui possède l'ID d'identité Cognito correct (ci-après dénommé Cognito ID) peut exécuter l'API. Dans cet état, vous souhaiterez peut-être utiliser Cognito Id avec Lambda, le backend de l'API. Par exemple, si vous souhaitez créer des données par utilisateur dans DynamoDB avec Cognito Id comme clé primaire, ou créer un fichier image de profil dans S3.
Définissez la demande de méthode → authentification de toute méthode de l'API sur "AWS_IAM".
Spécifiez la demande d'intégration → modèle de body mapping comme suit.
{
"cognito_id": "$context.identity.cognitoIdentityId"
}
Vous pouvez transmettre Cognito Id à Lambda avec une propriété appelée cognito_id en spécifiant `` $ context.identity.cognitoIdentityId "`.
Vous pouvez l'utiliser dans Lambda comme suit.
def lambda_handler(event, context):
cognito_id = event.get('cognito_id')
Qu'as-tu pensé. Cette fois, j'ai expliqué comment transmettre l'ID d'identité Cognito à Lambda via API Gateway. Je pense que c'est l'une des connaissances nécessaires lors de la création d'une application mobile sans serveur avec AWS.
Recommended Posts