Help > Forum > Intégration de sites Web > Authentification basée sur des jetons
Authentification basée sur des jetons
Si vous utilisez WordPress, utilisez notre plugin WordPress.
Nous pouvons le faire pour vous. Accédez aux paramètres d'authentification unique et sélectionnez le créateur de votre site Web pour que notre équipe de développement intègre l'authentification unique pour vous, à partir de 199$ seulement.
Nous prenons également en charge l'authentification unique à l'aide de SAML, OAuth2, LDAP, SQL et OpenID.
Vous pouvez utiliser l'API Single Sign On (SSO) pour connecter automatiquement vos visiteurs à votre forum. Cela peut être utile si vous avez une zone de connexion distincte sur votre site Web et que vous ne souhaitez pas que vos visiteurs se connectent deux fois.
L'API SSO vous permet de faire une demande d'API pour obtenir un jeton de connexion pour un utilisateur, puis de l'inclure dans l'adresse du forum pour connecter l'utilisateur.
Suivez les instructions ci-dessous pour intégrer l'API SSO à votre site Web :
-
Demander un jeton de connexion
Dans le script de connexion de votre site Web, créez un Requête HTTP à l'URL de connexion à l'API SSO :https://FORUM_DOMAIN/register/setauthtoken?type=json&apikey=APIKEY&user=USERRemplacez APIKEY par la clé API que vous avez récupérée à l'étape 1.Remplacez USER par le nom d'utilisateur de l'utilisateur du forum auquel vous souhaitez vous connecter. Si votre site Web n'utilise pas de nom d'utilisateur, vous pouvez utiliser une adresse e-mail comme nom d'utilisateur. Alternativement, si l'ID utilisateur du forum de l'utilisateur est stocké dans votre base de données, un paramètre &userid= USERID peut être utilisé à la place du paramètre &user= USER.
Vous pouvez éventuellement inclure un paramètre &email=email si vous souhaitez que le compte de forum soit automatiquement créé dans les cas où le compte de forum spécifié n'existe pas déjà. Nous vous recommandons d'inclure le paramètre e-mail. (Remplacez EMAIL par l'adresse e-mail de l'utilisateur.)
Vous pouvez également spécifier d'autres informations de compte, telles que le nom complet de l'utilisateur (paramètre « nom »), l'avatar (paramètre « avatar »), etc. Les paramètres supplémentaires doivent être codés par URL.
Si vous utilisez PHP, nous vous recommandons vivement d'utiliser notre bibliothèque SSO PHP. Il contient un fichier avec tout le code de bibliothèque dont vous aurez besoin et d'autres fichiers avec un exemple d'utilisation.
-
Récupère le jeton de la réponse
Analysez le code JSON renvoyé par la requête HTTP pour obtenir le jeton d'authentification et l'ID utilisateur, puis stockez-les dans un cookie ou votre base de données. Le jeton d'authentification expire dans les 6 mois ou immédiatement après son utilisation afin de garantir un haut niveau de sécurité. La réponse JSON sera similaire à ceci :{ "authtoken": "88SngRVArwrsZ053lfrqL", "userid": 424764 }
Si une erreur se produit, un JSON similaire au JSON ci-dessous apparaîtra à la place de la réponse JSON normale :
{ "message": "The error message will be here." }
-
Connecter l'utilisateur à l'aide du jeton
Transmettez le jeton d'authentification dans le lien de votre forum sur votre site Web. Par exemple :<a href="https://FORUM_DOMAIN/?authtoken=AUTHTOKEN&remember=REMEMBER">Forum</a>Remplacez AUTHTOKEN par le jeton d'authentification récupéré au cours des étapes précédentes. Remplacez REMEMBER par 1 si vous souhaitez que l'utilisateur reste connecté même après la fermeture du navigateur ou excluez-le si vous souhaitez que l'utilisateur soit déconnecté à la fin de la session du navigateur.
Si vous utilisez le code intégré, vous pouvez transmettre le jeton d'authentification à la page dans laquelle le forum est intégré ou à l'intérieur de l'attribut src du code intégré. Par exemple :
<!--Begin Website Toolbox Forum Embed Code-->
<div id="wtEmbedCode"><script type="text/javascript" id="embedded_forum" src="https://FORUM_DOMAIN/js/mb/embed.js?authtoken=AUTHTOKEN&remember=REMEMBER"></script> <noscript><a href="https://FORUM_DOMAIN">Forum</a></noscript></div>
<!--End Website Toolbox Forum Embed Code-->Si vous ne souhaitez pas transmettre le jeton d'authentification dans l'adresse du forum, vous pouvez également ajouter la balise HTML IMG suivante à votre page d'accueil « Connexion réussie » :
<img src="//FORUM_DOMAIN/register/dologin?authtoken=AUTHTOKEN&remember=REMEMBER" border="0" width="1" height="1" alt="">En raison du blocage des cookies tiers dans le navigateur Safari, l'approche par balise IMG ne fonctionnera pas dans Safari, sauf si votre forum a été configuré pour utiliser un sous-domaine.
-
Déconnectez l'utilisateur à l'aide du jeton
Une fois qu'un utilisateur se déconnecte de votre site Web, redirigez-le vers l'adresse suivante pour le déconnecter également du forum :
https://FORUM_DOMAIN/register/logout?authtoken=AUTHTOKEN&redirect=REDIRECT_URLRemplacez REDIRECT_URL par l'adresse du site Web codé en URL à laquelle vous souhaitez envoyer l'utilisateur une fois qu'il a été déconnecté du forum. Remplacez AUTHTOKEN par le jeton d'authentification récupéré au cours des étapes précédentes. Lorsqu'il est utilisé dans le but de se déconnecter, un jeton est valide pendant 6 mois, même s'il a déjà été utilisé pour connecter un utilisateur. Une fois qu'il est utilisé pour déconnecter un utilisateur, le jeton expire immédiatement.
Si vous ne souhaitez pas rediriger l'utilisateur, vous pouvez également ajouter la balise HTML IMG suivante à la page d'accueil « Déconnexion réussie » de votre site Web :
<img src="//FORUM_DOMAIN/register/logout?authtoken=AUTHTOKEN" border="0" width="1" height="1" alt="">En raison du blocage des cookies tiers dans le navigateur Safari, l'approche par balise IMG ne fonctionnera pas dans Safari, sauf si votre forum a été configuré pour utiliser un sous-domaine.
-
Faites en sorte que votre forum utilise la page de connexion de votre site Web
Dans la section Paramètres -> Connexion unique de votre compte Website Toolbox, spécifiez l'adresse de la page de connexion de votre site Web pour vous assurer que toutes les connexions au forum se font à l'aide du formulaire de connexion de votre site Web.
-
Faites en sorte que votre forum utilise la page de déconnexion de votre site Web
Facultativement, dans la section Paramètres -> Connexion unique de votre compte Website Toolbox, spécifiez l'adresse de la page de déconnexion de votre site Web pour vous assurer que les utilisateurs voient la page de déconnexion de votre site Web une fois qu'ils ont été déconnecté du forum.
Utilisez un domaine personnalisé et notre code intégré, notre API et nos webhooks pour une configuration encore plus approfondie intégration.
If you still need help, please contact us.