Passer au contenu principal
Login by Auth0 peut être configuré à l’aide de l’assistant de configuration du plugin, ou manuellement pour mieux contrôler le processus. Pour en savoir plus, consultez Installer Login by Auth0. Les instructions ci-dessous peuvent aussi être utilisées si l’assistant de configuration n’a pas abouti, ou dans le cadre du dépannage de problèmes de connexion.
Vous devez être connecté à votre compte Auth0 avant de commencer les étapes ci-dessous. Si vous n’en avez pas encore, créez-en un.

Configuration d’Auth0

Votre locataire Auth0 doit être configuré pour accepter les demandes de connexion provenant de votre site WordPress et utiliser les identités utilisateur d’au moins une Connexion, qu’il s’agisse d’une base de données Auth0, d’une connexion sociale ou d’un annuaire d’entreprise. Pour en savoir plus sur les locataires, consultez Créer des locataires. Pour en savoir plus sur les connexions, consultez Fournisseurs d’identité.

Configuration de l’application

  1. Créez une application pour votre site WordPress :
  • Si vous dépannez l’assistant de configuration, accédez à Auth0 Dashboard > Applications > Applications et recherchez une application dont le nom ressemble à celui de votre site WordPress. Si vous n’en trouvez pas, cela signifie qu’aucune application n’a été créée par l’assistant. Redémarrez l’assistant de configuration dans WordPress ou suivez l’étape ci-dessous pour créer une application manuellement.
  • Si vous effectuez la configuration manuellement, accédez à Auth0 Dashboard > Applications > Applications et sélectionnez Create. Entrez un nom pour l’application, sélectionnez Regular Web Applications, puis sélectionnez Create.
  1. Sélectionnez la vue Settings de l’application. Vous verrez votre Domaine, votre ID client et votre Secret client, qui sont utilisés dans wp-admin > Auth0 > Settings pour établir la connexion à Auth0.
  2. Application Type doit être défini sur Regular Web Application et Token Endpoint Authentication Method doit être défini sur Post
  3. Faites défiler jusqu’à Allowed Callback URLs et entrez l’URL du site WordPress avec ?auth0=1 ajouté :
L’URL de rappel indiquée ici ne doit pas être mise en cache, sinon une erreur « Invalid state » pourrait s’afficher pendant la connexion. Pour en savoir plus, consultez Troubleshoot WordPress Plugin Invalid State Errors.
  1. Entrez la WordPress Address (URL) de votre site WordPress (où le site est accessible publiquement) et, si elle est différente, la Site Address (URL) (d’où wp-admin est servi) dans le champ Allowed Web Origins. Ces deux valeurs se trouvent dans l’écran des réglages généraux de votre site WordPress.
  2. Entrez l’URL de connexion de votre site WordPress dans le champ Allowed Logout URLs
  3. Laissez le champ Allowed Origins (CORS) vide (il utilisera les valeurs de Allowed Callback URLs ci-dessus)
Assurez-vous d’utiliser le bon protocole pour votre site (http ou https) et de prendre comme base l’URL d’accueil, que vous trouverez dans wp-admin > Settings > General > WordPress Address (URL), pour tous les champs URL ci-dessus.
  1. Faites défiler vers le bas et sélectionnez Show Advanced Settings, puis sélectionnez la vue OAuth et assurez-vous que JsonWebToken Signature Algorithm est défini sur RS256. Si ce paramètre doit être modifié plus tard, vous devrez aussi le modifier ici ainsi que dans wp-admin (voir Settings > Basic ci-dessous).
  2. Activez OIDC Conformant.
  3. Cliquez sur l’onglet Grant Types et sélectionnez au minimum Authorization Code et Client Credentials.
  4. Cliquez sur Save Changes.

Autoriser l’application à utiliser la Management API

Pour que votre site WordPress puisse effectuer certaines actions au nom de votre locataire Auth0, vous devrez autoriser l’application créée ci-dessus à accéder à la . Ce n’est pas obligatoire, mais cela vous permettra de récupérer les données utilisateur complètes lors de la connexion (y compris user_metadata et app_metadata), de modifier le courriel et le mot de passe des utilisateurs, et de renvoyer le courriel de vérification lorsque des adresses courriel vérifiées sont requises.
  1. Assurez-vous que votre application autorise le type d’octroi Client Credentials (étape 10 dans la section ci-dessus).
  2. Accédez à Auth0 Dashboard > Applications > APIs.
  3. Sélectionnez Auth0 Management API, puis la vue Machine to Machine Applications.
  4. Repérez l’application WordPress et sélectionnez Unauthorized pour accorder l’accès.
  5. Dans le panneau qui s’affiche, sélectionnez uniquement les scopes read:users et update:users, puis sélectionnez Update (vous pouvez faire une recherche à l’aide du champ Filter scopes).

Configuration de la connexion de base de données

Les connexions de base de données permettent aux utilisateurs de se connecter avec un nom d’utilisateur et un mot de passe, les comptes utilisateur étant stockés dans Auth0. Ce type de connexion n’est pas obligatoire et peut être ignoré si vous utilisez uniquement des connexions , sociales ou d’entreprise.
  1. Si vous avez utilisé l’assistant pendant la configuration, accédez à Auth0 Dashboard > Authentification > Base de données et recherchez une connexion dont le nom ressemble à celui de l’application configurée ci-dessus. Sinon, vous pouvez créer une nouvelle connexion, utiliser une connexion existante ou utiliser la connexion par défaut Username-Password-Authentication. Sélectionnez le nom d’une connexion existante pour afficher les paramètres, ou sélectionnez Create DB Connection et suivez les étapes.
  2. Sélectionnez la vue Applications et activez l’application créée ci-dessus.

Configuration d’une connexion sociale

Pour savoir comment activer et configurer cette méthode de connexion, consultez Fournisseurs d’identité sociaux.

Configuration de la connexion d’entreprise

Pour savoir comment activer et configurer cette méthode de connexion, consultez Fournisseurs d’identité d’entreprise.

Configuration de WordPress

  1. Accédez à Auth0 Dashboard > Applications > Applications et sélectionnez l’application créée ci-dessus.
  2. Dans un nouvel onglet ou une nouvelle fenêtre, connectez-vous à wp-admin de votre site WordPress, puis accédez à wp-admin > Auth0 > Paramètres.
  3. Copiez Domaine, ID client et Secret client depuis la page de votre application Auth0 vers les paramètres de WordPress à l’aide des boutons Copier dans le presse-papiers à côté de chaque champ.
  4. Faites défiler la page vers le bas et sélectionnez Enregistrer les modifications.

Stockage des paramètres par constante PHP

Les paramètres du plugin peuvent être enregistrés dans la base de données (par défaut) ou définis au moyen d’une constante PHP portant un nom précis. Cela permet de stocker de façon plus sécuritaire des données sensibles comme le , le jeton d’API et le jeton de migration (à condition que le fichier dans lequel ils sont définis soit stocké de façon sécuritaire; pour en savoir plus, consultez Hardening WordPress on wordpress.org). La constante doit être définie avant le chargement du plugin, sinon elle ne sera pas utilisée. Cela doit se faire dans votre fichier wp-config.php ou dans un plugin à chargement obligatoire. Pour en savoir plus, consultez Must Use Plugins on wordpress.org. Si la constante est définie dans le fichier functions.php de votre thème ou dans un plugin qui se charge après Auth0, la valeur sera ignorée. Les constantes PHP sont définies comme suit : Le nom de constante par défaut doit être AUTH0_ENV_, suivi du nom de l’option à remplacer en majuscules (le préfixe peut être modifié au moyen du filtre auth0_settings_constant_prefix; pour en savoir plus, consultez Extend Login by Auth0 WordPress Plugin). Toutes les options du plugin peuvent être remplacées, et leurs clés se trouvent dans la méthode WP_Auth0_Options::defaults(). Remarque : La valeur migration_token est générée par le plugin lorsque la migration des utilisateurs est activée. S’il existe déjà une valeur dans l’interface d’administration, assurez-vous de définir la constante avec cette même valeur. Si cette valeur doit être modifiée, elle doit aussi l’être dans les scripts personnalisés de la connexion de base de données utilisée dans l’. Le champ de paramètres changera son affichage en fonction de cette nouvelle valeur et indiquera la constante utilisée à titre de référence. Cette valeur sera automatiquement utilisée partout dans le plugin. Important : L’enregistrement de la page des paramètres après la définition d’une valeur de constante validera les valeurs définies par constante (sans les modifier) et les supprimera du tableau d’options enregistré dans la base de données. Si vous ne faites que tester cette fonctionnalité, n’enregistrez pas les paramètres dans la page d’administration WordPress avant d’être prêt à supprimer cette valeur. Tous les sites d’un réseau WordPress multisite utiliseront la même valeur de constante, ce qui en fait une façon simple de configurer un réseau à l’aide d’une seule application et d’une seule connexion de base de données.

Paramètres du plugin

Paramètres de base

  • Domaine : Le Domaine copié à partir des paramètres de l’application dans votre Auth0 Dashboard. Le nom de l’option est domain.
  •  : Le Domaine personnalisé de votre locataire, s’il est configuré. Pour en savoir plus, consultez Domaines personnalisés. Le nom de l’option est custom_domain.
  •  : L’ID client copié à partir des paramètres de l’application dans votre Auth0 Dashboard. Le nom de l’option est client_id.
  • Secret client : Le Secret client copié à partir des paramètres de l’application dans votre Auth0 Dashboard. Le nom de l’option est client_secret.
  • Algorithme de signature L’algorithme utilisé pour signer les jetons dans les paramètres avancés de l’application, sous l’onglet  ; la valeur par défaut est RS256. Le nom de l’option est client_signing_algorithm.
  • Durée du cache JWKS (en minutes) : Durée de conservation des renseignements JWKS lors de l’utilisation de l’algorithme de signature JWT RS256. Le nom de l’option est cache_expiration.
  • Formulaire de connexion original sur wp-login.php : Permet d’autoriser ou de bloquer l’accès à la page de connexion WordPress par défaut. Le nom de l’option est wordpress_login_enabled. Le nom de l’option du code de la page de connexion est wle_code.
    • Jamais n’autorise pas l’affichage du formulaire de connexion WordPress par défaut.
    • Via un lien sous le formulaire Auth0 affiche un lien vers le formulaire de connexion WordPress par défaut directement sous le formulaire Auth0 intégré sur wp-login.php. Vous pouvez aussi accéder directement à la page de connexion en ajoutant ?wle à l’URL de connexion.
    • Lorsque le paramètre de requête “wle” est présent permet d’accéder directement à la page de connexion en ajoutant ?wle à l’URL de connexion. Cela contourne la redirection vers la page Universal Login.
    • Lorsque le paramètre de requête “wle” contient un code précis permet d’accéder directement à la page de connexion en ajoutant ?wle= suivi d’un code à l’URL de connexion. Le code est généré automatiquement et s’affiche sous les contrôles de ce paramètre. Cela contourne la redirection vers la page Universal Login.
  • Autoriser les inscriptions : L’inscription des utilisateurs est offerte uniquement si l’option WordPress Anyone can register est activée. Vous trouverez ce paramètre sous Settings > General > Membership.

Fonctionnalités

  • Page  : Redirige la page wp-login.php vers la page Universal Login pour l’authentification (SSO) en utilisant toutes les Connexions actives pour cette application. Le nom de l’option est auto_login.
  • Méthode de connexion automatique : Une seule connexion active à utiliser pour l’authentification lorsque page Universal Login est activée. Laissez ce champ vide pour afficher toutes les Connexions actives sur la page Universal Login. Le nom de l’option est auto_login_method.
  • Déconnexion Auth0 : Activez cette option pour vous déconnecter d’Auth0 lorsque vous vous déconnectez de WordPress. Le nom de l’option est singlelogout.
  • Remplacer les avatars WordPress : Force WordPress à utiliser les avatars d’Auth0. Le nom de l’option est override_wp_avatars.

Intégré

Les options ici n’affectent pas la page Universal Login (pour en savoir plus sur les options de personnalisation, consultez Auth0 Universal Login).
  • Connexion Passwordless : Activez cette option pour activer la connexion Passwordless sur tous les formulaires de connexion Auth0 intégrés. Les connexions Passwordless sont gérées dans l’Auth0 Dashboard, et au moins une doit être active et activée pour cette application pour que cela fonctionne. Le nom de l’option est passwordless_enabled.
  • URL de l’icône : Définit l’icône affichée au-dessus du formulaire de connexion Auth0 intégré. Le nom de l’option est icon_url.
  • Titre du formulaire : Définit le titre du formulaire de connexion Auth0 intégré. Le nom de l’option est form_title.
  • Activer l’intégration Gravatar : Lorsque l’utilisateur saisit son courriel, son image Gravatar associée s’affiche dans le formulaire de connexion Auth0 intégré. Le nom de l’option est gravatar.
  • Style de l’identifiant de connexion : Si vous sélectionnez Courriel, les utilisateurs devront saisir leur adresse de courriel pour se connecter. Définissez cette option sur Nom d’utilisateur si vous ne voulez pas exiger qu’un nom d’utilisateur soit une adresse de courriel valide. Le nom de l’option est username_style. Le nom de l’option est client_secret_b64_encoded.
  • Couleur principale : Pour en savoir plus sur ce paramètre, consultez Lock Configuration Options. Le nom de l’option est primary_color.
  • Paramètres supplémentaires : Un objet JSON valide qui comprend les options à transmettre à Lock. Cela remplace toutes les autres options définies ci-dessus. Pour obtenir la liste des options offertes, consultez les options configurables par l’utilisateur de Lock (p. ex. : {"disableResetAction": true }). Le nom de l’option est extra_conf.
  • Utiliser une URL JS personnalisée pour Lock : Lorsqu’elle est désactivée, WordPress utilisera automatiquement la version la plus récente de Lock ayant été testée (formulaire de connexion Auth0 intégré). Lorsqu’elle est activée, les administrateurs peuvent fournir une URL personnalisée pour Lock. Le nom de l’option est custom_cdn_url.
  • URL JS personnalisée pour Lock : Une URL valide pointant vers une version de Lock. Ce champ sera automatiquement masqué lorsque Utiliser une URL JS personnalisée pour Lock est désactivée. Le nom de l’option est cdn_url.
  • Connexions à afficher : Énumérez ici chacun des avec lesquels vous voulez permettre aux utilisateurs de se connecter. Si vous laissez ce champ vide, tous les fournisseurs activés seront autorisés. (Pour en savoir plus, consultez Lock UI Customization.) Le nom de l’option est lock_connections.
    Si vous avez activé la connexion Passwordless, vous devez énumérer ici tous les fournisseurs d’identité sociaux autorisés. Pour en savoir plus, consultez .social(options, callback) dans notre dépôt GitHub.

Avancé

  • Exiger un courriel vérifié : Si cette option est activée, l’utilisateur doit avoir un courriel vérifié pour se connecter. Cela peut empêcher certaines connexions de fonctionner correctement si elles ne fournissent pas d’adresse de courriel ni l’indicateur email_verified dans les données du profil utilisateur. Le nom de l’option est requires_verified_email.
  • Ignorer des stratégies : Si l’option Exiger un courriel vérifié est activée, ce paramètre s’affiche. Ce champ accepte des noms de stratégie pour ignorer l’exigence de courriel vérifié lors de la connexion et de l’association de comptes. Cela doit uniquement être utilisé pour les stratégies qui ne fournissent pas l’indicateur email_verified.
  • Se souvenir de la session utilisateur : Par défaut, les sessions utilisateur durent deux jours. Activez ce paramètre pour prolonger les sessions utilisateur à 14 jours. Le nom de l’option est remember_users_session.
    • Ce paramètre doit être inférieur ou égal au paramètre Délai d’expiration pour inactivitédocs/manage-users/sessions/session-lifetime-limits de votre locataire afin de garantir le bon maintien de la session de l’utilisateur.
  • URL de redirection de connexion : Si cette option est définie, les utilisateurs sont redirigés vers l’URL indiquée après la connexion. Cela n’affecte pas la connexion via le shortcode [auth0]. Le nom de l’option est default_login_redirection. Pour modifier la redirection du shortcode, ajoutez un attribut redirect_to, comme suit : [auth0 redirect_to="http://yourdomain.com/redirect-here"]
  • Forcer le callback HTTPS : Activez cette option si votre site prend en charge HTTPS sans l’imposer. Cela forcera les callbacks Auth0 à utiliser HTTPS lorsque votre URL d’accueil n’est pas définie en HTTPS. Le nom de l’option est force_https_callback.
  • Provisionnement automatique : Les nouveaux utilisateurs provenant d’Auth0 doivent-ils être stockés dans la base de données WordPress si les nouvelles inscriptions ne sont pas autorisées ? Cela créera des utilisateurs WordPress qui n’existent pas encore lorsqu’ils se connectent via Auth0 (par exemple, si un utilisateur est créé dans l’Auth0 Dashboard). Le nom de l’option est auto_provisioning.
    Si les inscriptions sont autorisées dans WordPress, de nouveaux utilisateurs seront créés indépendamment de ce paramètre.
  • Migration des utilisateurs : L’activation de cette option exposera les services Web de migration d’Auth0. Toutefois, la connexion devra être configurée manuellement dans l’Auth0 Dashboard. Pour en savoir plus sur le processus de migration, consultez Migration des utilisateurs dans Login by Auth0 WordPress Plugin. Le bouton Generate New Migration Token peut être utilisé pour remplacer le jeton enregistré par un nouveau. Assurez-vous d’avoir la page de configuration de votre connexion de base de données ouverte à l’onglet Custom Database afin de pouvoir remplacer le jeton existant par le nouveau dans les deux scripts. Le nom de l’option est migration_ws. Le nom de l’option du jeton de migration est migration_token.
  • Liste d’autorisation des IP de migration : Seules les requêtes provenant des IP répertoriées seront autorisées à accéder au service Web de migration. Le nom de l’option est migration_ips_filter.
  • IP de proxy valide : Indiquez l’adresse IP de votre proxy ou répartiteur de charge pour activer les vérifications d’IP pour les connexions et les services Web de migration. Le nom de l’option est valid_proxy_ip.
  • Domaine du serveur Auth0 : Le domaine Auth0 est utilisé par l’assistant de configuration pour récupérer les renseignements de votre compte. Le nom de l’option est auth0_server_domain.

En savoir plus