Passer au contenu principal

Comment activer l'authentification unique

Introduction

Vous avez connecté Casdoor et configuré plus d'une application dans une organisation. Vous voulez que les utilisateurs se connectent une fois à n'importe quelle application de l'organisation et puissent ensuite se connecter lorsqu'ils passent à une autre application sans aucun clic supplémentaire.

Nous offrons cette fonctionnalité d'authentification unique. Pour l'activer, vous avez juste besoin de :

  • Activer le bouton Connexion Automatique.
  • Remplir l'URL de la page d'accueil.
  • Ajouter une fonction Connexion Silencieuse à la page d'accueil de l'application.
note

Le processus de connexion de base fourni par Casdoor permet aux utilisateurs de se connecter à d'autres applications de l'organisation en sélectionnant l'utilisateur actuellement connecté ou en utilisant un autre compte.

Après avoir activé la connexion automatique, la boîte de sélection ne sera pas affichée, et l'utilisateur connecté se connectera directement.

Configuration

  1. Remplir le champ "accueil". Cela peut être la page d'accueil de l'application ou la page de connexion.

sso_home.png 2. Activer le bouton Connexion Automatique.

sso_signin.png

Ajouter Connexion Silencieuse

En fait, nous mettons en œuvre la connexion automatique en transportant des paramètres dans l'URL. Par conséquent, vos applications doivent avoir une méthode pour déclencher la connexion après avoir sauté à l'URL. Nous fournissons le casdoor-react-sdk pour vous aider à mettre en œuvre rapidement cette fonctionnalité. Vous pouvez voir les détails sur use-in-react.

info

Comment ça fonctionne

  1. Dans l'URL de la page d'accueil de l'application, nous allons inclure le paramètre silentSignin.
  2. Sur votre page d'accueil, déterminez si vous devez vous connecter silencieusement (automatiquement) en vérifiant le paramètre silentSignin. Si silentSignin === 1, la fonction doit retourner le composant SilentSignin, qui vous aidera à initier une demande de connexion. Puisque vous avez activé la connexion automatique, les utilisateurs se connecteront automatiquement sans cliquer.

Ajouter Connexion Popup

La fonctionnalité "connexion popup" ouvrira une petite fenêtre. Après vous être connecté à Casdoor dans la fenêtre enfant, cela enverra les informations d'authentification à la fenêtre principale puis se fermera automatiquement. Nous mettons en œuvre cette fonctionnalité en transportant des paramètres dans l'URL.

info

Comment utiliser

Utilisez la méthode popupSignin() dans le casdoor-js-sdk pour mettre en œuvre rapidement cette fonctionnalité. Vous pouvez voir une démo sur casdoor-nodejs-react-example.

Comment ça fonctionne

  1. Dans l'URL de la page d'accueil de l'application, nous allons inclure le paramètre popup.
  2. Lorsque popup=1 est dans les paramètres de connexion, Casdoor enverra code et state comme message à la fenêtre principale et terminera l'obtention du token dans la fenêtre principale en utilisant le SDK.

Utilisation de l'authentification unique

La configuration est complète. Ci-dessous, nous allons vous montrer comment utiliser la connexion automatique.

info

Assurez-vous que votre application peut rediriger vers la page de profil de l'utilisateur. L'API getMyProfileUrl(account, returnUrl) est fournie dans notre SDK pour chaque langue.

Ouvrez la page de profil et allez à la page "Accueil" (chemin d'URL /). Vous verrez la liste des applications fournies par l'organisation. Il convient de noter que seuls les utilisateurs des organisations autres que "intégrées" peuvent voir la liste des applications sur la page "Accueil". Tous les administrateurs globaux (ceux de l'organisation "intégrée") ne peuvent pas la voir.

sso_homepage.png

Cliquez sur une tuile dans la liste des applications, et cela sautera à l'URL de la page d'accueil de cette application avec le paramètre GET ?silentSignin=1. Il se connectera automatiquement à l'application si l'application a été intégrée avec Casdoor SSO (elle reconnaîtra donc le paramètre ?silentSignin=1 et effectuera une connexion silencieuse en arrière-plan).