Aller au contenu principal

Configurer l’authentification unique avec Okta

Avec un minimum de configuration, ce connecteur permet l’intégration avec Okta pour le SSO d’entreprise.

astuce:

Pour plus d'informations sur l'authentification unique (SSO) et comment configurer l'authentification unique (SSO) dans Logto, veuillez consulter la documentation SSO d’entreprise (SAML & OIDC) pour commencer.

Étape 1 : Créer une application OIDC sur le portail d’administration Okta

  • Visitez le portail d'administration Okta et connectez-vous en tant qu'administrateur.
  • Accédez à la page Applications/Applications à l'aide du menu latéral.
  • Cliquez sur le bouton Create App Integration pour créer une nouvelle application OIDC.
  • Sélectionnez l'option OIDC - OpenID Connect comme Sign-in method.
  • Sélectionnez l'option Web Application comme Application type.
Okta create application

Cliquez sur le bouton Next pour continuer.

Étape 2 : Configurer les paramètres de l’application

  1. Fournissez un App integration name. Il sera utilisé comme identifiant de votre application OIDC.
  2. Ajoutez un nouveau Sign-in redirect URIs en utilisant l'URL de rappel du connecteur SSO de Logto.

C'est l'URI vers laquelle Okta redirigera le navigateur de l'utilisateur après une authentification réussie. Après qu'un utilisateur s'est authentifié avec succès auprès du fournisseur d’identité (IdP), l'IdP redirige le navigateur de l'utilisateur vers cet URI désigné avec un code d’autorisation. Logto complétera le processus d'authentification basé sur le code d’autorisation reçu de cet URI.

Paramètres de l'application Okta
  1. Assignez des utilisateurs à l'application.

En fonction des paramètres Assignments, vous pouvez choisir d'assigner l'application à tous les utilisateurs ou à des utilisateurs/groupes spécifiques.

Assigner des utilisateurs dans Okta

Cliquez sur le bouton Save pour enregistrer les paramètres de l'application.

Étape 3 : Configurer le connecteur Logto avec les identifiants client

Après avoir créé avec succès l'application OIDC, vous serez redirigé vers la page des détails de l'application.

Okta client credentials

Copiez l'ID client et le secret client et remplissez les champs correspondants dans l'onglet Connection du connecteur SSO Logto.

Utilisez votre domaine Okta comme Émetteur (Issuer). Exemple : https://dev-12345678.okta.com. Une fois que vous avez rempli tous les champs, cliquez sur le bouton Save pour enregistrer les paramètres du connecteur.

Si le lien de l'Émetteur (Issuer) que vous avez fourni est valide, vous verrez une liste complète analysée des configurations IdP Okta affichée sous le champ Émetteur (Issuer).

Étape 4 : Portées supplémentaires (optionnel)

Les portées (Scopes) définissent les permissions que votre application demande aux utilisateurs et contrôlent à quelles données votre application peut accéder depuis leurs comptes Okta. Demander des permissions Okta supplémentaires nécessite une configuration des deux côtés :

Dans la console d'administration Okta :

  1. Accédez à Applications > Applications et sélectionnez votre application OIDC.
  2. Allez dans l’onglet Affectations pour vous assurer que votre application a accès aux utilisateurs et groupes requis.
  3. Pour les portées personnalisées, accédez à Sécurité > API > Serveurs d’autorisation et sélectionnez votre serveur d’autorisation.
  4. Ajoutez des portées personnalisées si nécessaire :
    • Cliquez sur Portées puis sur Ajouter une portée
    • Définissez des noms de portées comme okta.users.read ou okta.groups.read pour accéder aux API Okta
    • Configurez les exigences de consentement pour chaque portée

Pour une liste complète des portées disponibles et leurs descriptions, veuillez consulter la documentation Okta OIDC.

Dans le connecteur Okta Logto :

  1. Logto inclut automatiquement les portées openid, profile et email pour récupérer les informations d'identité de base de l'utilisateur. Vous pouvez laisser le champ Scopes vide si vous n'avez besoin que des informations de base sur l'utilisateur.
  2. Ajoutez offline_access au champ Scopes si vous prévoyez de stocker des jetons pour un accès persistant à l’API. Cette portée permet d’obtenir des jetons de rafraîchissement pour un accès API de longue durée.
  3. Ajoutez des portées supplémentaires (séparées par des espaces) dans le champ Scopes pour demander plus de données à Okta. Par exemple : okta.users.read okta.groups.read
astuce:

Si votre application demande ces portées pour accéder aux API Okta et effectuer des actions, assurez-vous d’activer Stocker les jetons pour un accès API persistant dans le connecteur Okta Logto. Voir la section suivante pour plus de détails.

Étape 5 : Stocker les jetons pour accéder aux API Okta (optionnel)

Si vous souhaitez accéder aux portées Okta et effectuer des actions avec l'autorisation de l'utilisateur, Logto doit obtenir des portées spécifiques et stocker les jetons.

  1. Ajoutez les portées requises dans la configuration des permissions API de votre console développeur Okta et dans le connecteur Okta de Logto.
  2. Activez Stocker les jetons pour un accès API persistant dans le connecteur Okta de Logto. Logto stockera de manière sécurisée les jetons d’accès Okta et les jetons de rafraîchissement Okta dans le Secret Vault.
  3. Pour garantir que les jetons de rafraîchissement sont renvoyés, ajoutez la portée offline_access aux permissions de votre application Okta et incluez-la dans les portées de votre connecteur Okta Logto. Cette portée permet à votre application de maintenir l'accès aux ressources sur de longues périodes.

Étape 6 : Définir les domaines e-mail et activer le connecteur SSO

Fournissez les domaines e-mail de votre organisation dans l’onglet Expérience SSO du connecteur Logto. Cela activera le connecteur SSO comme méthode d’authentification pour ces utilisateurs.

Les utilisateurs ayant des adresses e-mail dans les domaines spécifiés seront redirigés pour utiliser votre connecteur SSO comme seule méthode d’authentification.

Pour plus de détails sur la création d’une intégration OIDC avec Okta, veuillez consulter Créer des intégrations d’applications OIDC.