Je considère AWS Cognito comme un système de gestion des utilisateurs pour une application Web monopage que je construis en utilisant React avec un backend d'API Rython Python (Pyramid). J'ai du mal à voir comment toutes les pièces s'emboîtent pour mon architecture (les docs ne semblent pas m'aider). Il y a beaucoup d'excellents exemples de la façon d'implémenter l'authentification dans le frontend en utilisant JS. Mon problème est de savoir comment intégrer cette authentification dans mon API REST backend.Sécurisation d'un frontend React et d'API Python avec AWS Cognito
Dans mon système de gestion des utilisateurs actuel, le client appelle l'API REST à la connexion et reçoit un jeton qui est à nouveau transmis à l'API pour chaque requête suivante. Je peux ensuite utiliser les ACL sur mes fonctions API, vérifier les permissions pour accéder aux ressources, etc. Si je devais utiliser Cognito et effectuer l'authentification sur le frontend (comme beaucoup d'exemples), comment mon backend saura-t-il si le jeton est valide quand il le reçoit avec une demande? Sûrement je ne devrais pas appeler Coginto du backend pour vérifier ceci pour chaque demande? Comment puis-je effectuer des vérifications pour des informations telles que «cet utilisateur est-il dans le groupe admin» si ce groupe est défini dans Cognito? Encore une fois, appeler Cognito pour chaque requête semble très lourd et lourd.
J'ai vu un exemple où une liste de jetons valides a été exportée à partir de Cognito en tant que fichier JSON et conservée dans le backend. Cela semble horriblement statique lorsque les utilisateurs peuvent être ajoutés et supprimés régulièrement.
Cognito est-il vraiment adapté à mon cas d'utilisation? Des conseils de haut niveau et des liens vers des exemples et documents pertinents seraient grandement appréciés!