#Authentification utilisateur

Comme décrit brièvement dans l'introduction, l'intégration serveur la plus courante est la connexion utilisateur synchronisée entre Subscribe et votre site. C'est aussi la plus difficile à réaliser car elle nécessite que les données utilisateur soient synchronisées des deux côtés.

Il existe tout un tas de méthodes d'authentification utilisées sur le Web, parmi les plus célèbres : Les Single Sign-Ons (comme Facebook ou Google, utilisant OAuth2 ou OpenID), LDAP (principalement utilisé en interne par les grandes entreprises) et SAML (Security Assertion Markup Language). Ce dernier utilise XML et nécessite une entité séparée et commune pour stocker et gérer les données utilisateur.

Comme chez Poool nous tenons à votre vie privée et à celle de vos utilisateurs, nous avons créé une nouvelle méthode d'authentification appelée JSAT (JSON Security Assertion Token). Le nom est dérivé de SAML et s'inspire du même principe mais d'une manière différente : il remplace XML par JSON (heureusement) et supprime le besoin d'un tiers pour conserver les données.

Afin d'y parvenir avec une expérience transparente pour vos utilisateurs, JSAT nécessite un flux d'authentification à "double redirection".

Mais... Le plus génial est que cela fonctionne dans les deux sens : cela garantit une expérience parfaitement transparente de bout en bout, que l'utilisateur se connecte depuis votre site Web OU depuis Subscribe ✨

#Fonctionnement


Le diagramme semble difficile à comprendre, mais se résume essentiellement à deux cas : une connexion à partir de votre site web ou depuis Subscribe.

Dans tous les cas, le parcours est le même :
  1. 1️⃣ L'acteur 1 (par exemple, votre site Web) vérifie que l'utilisateur existe en interne
  2. 2️⃣ S'il existe, l'acteur 1 crée ses cookies d'authentification habituels et crée ce que nous appelons un "auth callback"
  3. 3️⃣ À l'aide de l'URL fournie par callback, l'acteur 1 redirige l'utilisateur vers le site Web de l'acteur 2 (par exemple, Subscribe)
  4. 4️⃣ L'acteur 2 tente ensuite d'authentifier l'utilisateur à l'aide de l'ID du callback et des informations fournies précédemment
  5. 5️⃣ Une fois authentifié, l'acteur 2 redirige l'utilisateur vers l'URL de redirection fournie dans l'auth callback précédemment créé

Et BOOM 🎉 L'utilisateur est connecté des deux côtés.

Vous pourrez retrouver un guide détaillé sur la manière d'y parvenir facilement avec des exemples dans vos langages préférées dans notre section guides très bientôt.