Comment faire de l'authentification unique avec NodeJS?
J'ai plusieurs applications web qui s'exécutent dans plusieurs domaines. Je veux mettre en œuvre l'authentification Unique, de sorte qu'un utilisateur se connecte une fois pour accéder à toutes les applications.
Comment dois-je mettre en œuvre? Toutes les applications utiliser NodeJS backend.
Général des pointeurs dans la bonne direction sont les bienvenus.
OriginalL'auteur danday74 | 2017-04-26
Vous devez vous connecter pour publier un commentaire.
Que vos applications sont en cours d'exécution sur les différents domaines, vous pouvez en aucune façon de partager des cookies entre les APPLICATIONS en cours d'exécution sur l'ordinateur client pour valider l'utilisateur. Donc, quelque part, l'information doit être partagée sur le serveur de fin.
Solution la plus simple qui me vient à l'esprit est-
Avoir une session partagée pour tous les serveurs.
Hava spécifiques du domaine de l'authentification et de rediriger les utilisateurs à chaque fois qu'une authentification est nécessaire. Authentifier l'utilisateur et de définir un cookie de session ou un jeton que vous voulez.
Chaque fois qu'une application de vos besoins d'authentification, de les réorienter à l'authentification de domaine. Cookie d'authentification vous sera servi pour l'authentification de domaine ainsi que le référent de domaine. En voyant que vous êtes déjà validé, le serveur d'authentification peut vous rediriger vers l'application d'origine avec le bon id de session, qui sera définie en tant que témoin pour ce domaine.
Si pas authentifié, l'utilisateur sera invité à vous authentifier sur le serveur d'authentification, puis la redirection va se passer.
Avec peu de changements, vous pouvez atteindre cet objectif en utilisant des jetons et sans besoin de séances d'échanges.
Valider les états correctement avant de la mettre en œuvre. Plusieurs etats dans votre mécanisme signifie plus de chances de bugs et les attaques possibles.
Envisager de déplacer vos applications sur le même sous-domaine. Si le mécanisme d'authentification est même, alors tout le monde sait que toutes les applications appartiennent à la même société. Il sera également plus facile pour les gens de se rappeler les différents sous-domaines sur le même domaine, plutôt que de se souvenir de tous les différents domaines.
OriginalL'auteur krrish
Le plus utilisé du projet est http://passportjs.org/ qui est à peu près le seul que j'utilise, il a beaucoup de connecteurs sur la prémisse soltions comme ADFS et tiers comme google, facebook.
OriginalL'auteur Peter Grainger