web-dev-qa-db-fra.com

Comment intégrer la connexion Amazon Cognito dans Postman

J'utilisais le pool d'utilisateurs Amazon Cognito pour me connecter.Lorsque j'accède à mon application Web, je redirige vers

https://<domain>.auth.<region>.amazoncognito.com/login?response_type=code&client_id=<client id>&redirect_uri=<callback> . 

Une fois connecté avec le nom d'utilisateur/mot de passe d'un utilisateur du pool, je serai redirigé vers l'URL de rappel avec le code comme paramètre de requête. Je peux l'utiliser pour obtenir des jetons. Comment puis-je intégrer cela dans Postman afin de pouvoir utiliser le jeton pour ma prochaine demande

10
Shamseer PC

J'ai un exemple de ce faire ... enter image description here

  1. L'URL de rappel telle que définie dans la console Cognito User Pool sous Paramètres d'intégration d'application/client d'application.
  2. L'URL du point de terminaison de connexion de votre domaine. Ce sera sous Pool d'utilisateurs Cognito/Intégration d'application/Nom de domaine
  3. L'ID client se trouve sous Pool d'utilisateurs Cognito/Paramètres généraux/Clients d'application
  4. Répertoriez les étendues que vous souhaitez inclure dans le jeton d'accès. Ceux-ci doivent être activés dans les paramètres du pool d'utilisateurs Cognito/Intégration d'application/Client d'application. Il peut s'agir de portées standard ou personnalisées. Les étendues personnalisées sont définies sous Intégration d'applications/serveurs de ressources et doivent inclure l'ID du serveur de ressources (par exemple https://myresource.com/myscope )
  5. Cliquez sur Demander un jeton enter image description here

Vous pouvez maintenant vous connecter à votre groupe d'utilisateurs Cognito et recevoir un jeton d'accès! Le problème est qu'une fois que vous avez le jeton d'accès, il n'est pas utilisable dans Postman car Cognito s'attend à ce qu'il soit nu et Postman ajoute automatiquement "Bearer" au jeton: enter image description here Le jeton peut être utilisé dans cURL cependant: curl -i -H "Authorization: dyJraWQiOiI1YVcwTUlqN1hBaHg4Yzh4Q3JNT2RsQjhZWjlCR3NQOE9BbkFlVFJtUklRPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiI3YmEwZmMzOC01ZDcwkYS05MTI5ZTBmYTUzNTEiLCJ0b2tlbl91c2UiOiJhY2Nlc3MiLCJzY29wZSI6Imh0dHBzOlwvXC9hcGkubXk5MC5jb21cL3BvbGljZURlcGFydG1lbnRzLnJlYWQiLCJhdXRoX3RpbWUiOjE1NDA1OTIzMTYsImlzcyI6Imh0dHBzOlwvXC9jb2duaXRvLWlkcC51cy1lYXN0LTEuYW1hem9uYXdzLmNvbVwvdXMtZWFzdC0xX2xIbGo4NXpRYSIsImV4cCI6MTU0MDU5NTkxNiwiaWF0IjoxNTQwNTkyMzE2LCJ2ZXJzaW9uIjoyLCJqdGkiOiJhN2JiOWU2MC1kNmY1LTQ3ODYtODMwYi0xODdkZDZmYTZlODAiLCJjbGllbnRfaWQiOiI2MzhlYmZ1dTdiZDRkMXVkYnRzY2pxcnJncyIsInVzZXJuYW1lIjoicm9qbyJ9.O_GAxfFX3IQfLUu5Hxr05Wrk_2QDwNSL8tvDdEU0Dzs9d1XhQPafT6ney6yiGnKPOwsO8HhWdbT1QdDmByjuwQAURf1Da4Au7c-yhfgJcqWuHWZ4mledTSP8ukXqihMb4PoaDdU4JXyOdMLa50dBXVMgJNyXTpIulWOxFhiTW6DeQbnxNDk94cGNz_CTKCEqKStiloFZfLR7ndSrWqdOQ_SU__YV0RyKXZyK5yguv3nkUcI6cuKpbPVIZ5DNdpufbrtOLuZcC6HePBKrbTKjSZCt5-swy3YrwnY4ApTX7QUFzof6FylWaLA_KVP3Zv6ksSJ_IjBMFH1NRVHh4lbsOA" \ https://xxxxx.execute-api.us-east-1.amazonaws.com/v1/myresource/1234

14
Robert Jordan

Shamseer,

Le cas d'utilisation que vous souhaitez implémenter peut être obtenu en utilisant le OAuth 2.0 autorisation. Si vous pouvez obtenir le Auth URL/ Access Token URL, Client ID, et le Client Secret- vous devriez pouvoir le faire.

Voici un lien vers la documentation des différents types d'autorisation que nous prenons en charge, y compris celui mentionné ci-dessus https://www.getpostman.com/docs/v6/postman/sending_api_requests/authorization .

À votre santé,

3
Harsha