Dépannage du plugiciel WordPress Login by Auth0
Voici quelques questions courantes de dépannage. Si les éléments ci-dessous ne résolvent pas votre problème, envisagez les alternatives suivantes :
Si vous configurez le plugiciel pour la première fois ou si vous avez des problèmes avec les utilisateurs qui se connectent, consultez Configurer la connexion par Auth0.
Si vous avez trouvé un bogue dans le code du plugiciel, soumettez un problème ou créez une requête « pull » sur GitHub.
Si vous avez des questions sur la façon d’utiliser Auth0 ou le plugiciel, veuillez poster sur notre site communautaire ou créer une demande dans le forum de soutien WordPress du plugiciel.
Pour consulter de la documentation supplémentaire et trouver d’autres réponses, consultez notre site de soutien. Les clients qui bénéficient d’un plan Auth0 payant peuvent soumettre un ticket de problème pour obtenir une réponse rapide.
Je vois le message d’erreur « Invalid state » (État invalide) qui m’empêche de me connecter
La validation d’état est une fonctionnalité de sécurité ajoutée dans la version 3.6.0. Une URL de rappel mise en cache provoque généralement ce message d’erreur (voir les paramètres de votre application pour connaître les URL de rappel qui ne doivent pas être mises en cache). Pour en savoir plus, consultez Dépannage des erreurs d’état non valide des plugiciels WordPress.
Je ne parviens pas à me connecter ou à modifier mon adresse courriel ou mon mot de passe à l’aide d’une base de données personnalisée.
Pour connaître les solutions possibles, consultez Migration des utilisateurs dans le plugiciel WordPress connexion par Auth0.
Je vois le message d’erreur « Jeton d’ID invalide » ou « Jeton d’ID expiré » qui m’empêche de me connecter.
Cela est généralement dû au fait que le serveur est réglé sur une heure incorrecte. Si le message d’erreur indique « used too early » (utilisé trop tôt), cela signifie que l’heure de votre serveur est réglée sur le futur. S’il indique que le jeton a expiré, c’est que l’heure du serveur est réglée trop loin dans le passé. Une différence de temps entre deux serveurs est courante. Générez le résultat de la commande echo date(DateTime::ISO8601)
en PHP sur votre serveur et comparez le résultat, y compris les secondes, à l’heure UTC actuelle. Si l’heure de votre serveur est décalée de plus de 60 secondes (la marge par défaut) par rapport à l’heure UTC, vous devrez définir une marge plus longue pour tenir compte de l’asymétrie de l’horloge de votre serveur. Vous pouvez coller le code ci-dessous dans le fichier functions.php
de votre thème ou à tout autre endroit où il sera exécuté après le chargement du plugiciel et avant l’exécution du appel de connexion :
add_filter( 'auth0_jwt_leeway', function( $default_leeway ) { return 120; } );
Was this helpful?
Cela vous donnera une marge de manœuvre de 120 secondes. Il se peut que vous deviez ajuster cela en fonction de l’asymétrie du temps de votre serveur.
Je vois le message d’erreur « This account does not have an email associated... » (Ce compte n’a pas de courriel associé...) qui m’empêche de me connecter.
Si vous obtenez ce message d’erreur, assurez-vous que vous demandez un courriel à chaque fournisseur dans le Auth0 Dashboard sous Connexions > Social (développez chaque fournisseur). Tenez compte du fait que tous les fournisseurs ne renvoient pas les adresses courriel des utilisateurs (par exemple, X). Dans ce cas, vous pouvez toujours ajouter une adresse courriel à tout utilisateur connecté via le Auth0 Dashboard (ou l’API). Voir Utilisateurs > Modifier.
Pour les connexions qui ne fournissent pas d’indicateur courriel_verified
(certaines connexions d’entreprise ne l’incluent pas) ou pour ignorer cette validation pour des connexions sociales spécifiques, ajoutez la stratégie pour cette connexion dans le champ « Skip Strategies » (Ignorer les stratégies). Ce champ se trouve sous le commutateur Require Verified Email (Exiger une adresse courriel vérifiée) accessible via wp-admin > Auth0 > Settings (Paramètres) > Advanced (Avancés).
Ce champ ne doit être utilisé qu’en cas de nécessité, car il permet de contourner les précautions de sécurité recommandées par Auth0.
Je vois le message d’erreur « There is a user with the same email » (Un utilisateur existant a la même adresse courriel) qui m’empêche de me connecter
Cela signifie qu’il y a un utilisateur dans WordPress qui a le même courriel que celui utilisé pour se connecter et qui est associé à un autre utilisateur Auth0. Si vous êtes en train de tester le plugiciel ou si vous souhaitez plutôt associer l’utilisateur existant au nouvel utilisateur Auth :
Connectez-vous en tant qu’administrateur
Rendez-vous sur wp-admin > Users (Utilisateurs) et recherchez le courriel utilisé
Affichez le profil de l’utilisateur et descendez jusqu’au bas de la page
Cliquez sur Delete Auth0 Data (Supprimer les données Auth0) et confirmez.
Si vous avez deux comptes utilisateurs dans Auth0 avec la même adresse courriel, ce message d’erreur persistera. Nous vous recommandons d’Associer des comptes d’utilisateurs.
Je vois le message d’erreur « Failed cross origin authentication » (Échec de l’authentification cross-origin) ou « No verifier returned from client » (Aucun vérificateur renvoyé par le client) dans les journaux de la console de mon navigateur lorsque j’essaie de me connecter.
Rendez-vous dans Auth0 Dashboard > Applications > Applications, sélectionnez votre application WordPress pour afficher ses paramètres, et vérifiez que les URL de rappel autorisées et Origines autorisées (CORS) correspondent à votre site WordPress.
Si vous utilisez un navigateur basé sur Chromium, assurez-vous que les témoins tiers ne sont pas désactivés. Pour en savoir plus, consultez Authentification cross-origin.
Je dois réexécuter l’assistant d’installation, mais je ne vois plus cette option de menu.
Cela signifie que le plugiciel est déjà configuré avec un domaine, un ID client et un secret client. L’exécution de l’assistant de configuration une seconde fois peut avoir des résultats imprévisibles. Si vous configurez WordPress pour la première fois et que vous souhaitez recommencer avant d’avoir ouvert une session :
Rendez-vous à wp-admin > Auth0 > Settings (Paramètres) > Basic (Paramètres de base).
Supprimez le domaine et l’ID client. Faites défiler vers le bas et cliquez sur Save Changes (Enregistrer les modifications).
Rendez-vous dans Auth0 Dashboard> Applications > Applications.
Trouvez l’application qui a été créée par WordPress (son nom devrait être le nom de votre site WordPress).
Sélectionnez l’application pour afficher ses paramètres. Faites défiler vers le bas et sélectionnez Delete Application (Supprimer l’application).
Allez dans Auth0 Dashboard > Authentication (Authentification) > Database (Base de données).
Trouvez la connexion qui a été créée par WordPress (son nom devrait être le nom de votre site WordPress précédé de « DB- »).
Sélectionnez la connexion pour afficher ses paramètres. Faites défiler vers le bas et sélectionnez I Want To Delete This Connection (Je veux supprimer cette connexion). Veuillez noter que cette opération supprimera la connexion et tous les utilisateurs qui y ont été créés.
Retournez à WordPress. Vous verrez maintenant l’option « Setup Wizard » (Assistant de configuration) sous Auth0 dans le menu d’administration.
Comment configurer la connexion sans mot de passe?
La connexion sans mot de passe est possible sur n’importe quel site Web Auth0 en utilisant le courriel ou le SMS. Pour que cela fonctionne sur votre site WordPress :
Activez Connexion sans mot de passe dans la vue Fonctionnalités des paramètres du plugiciel et enregistrez.
Allez dans Auth0 Dashboard > Authentication (Authentification) > Passwordless (Sans mot de passe).
Pour utiliser le courriel, activez la connexion Email (Courriel) et modifiez les paramètres si vous le souhaitez. Cela activera la connexion par code de courriel (les utilisateurs reçoivent par courriel un code qu’ils doivent ensuite saisir dans le formulaire de connexion de votre site).
Pour utiliser un « lien magique » (le lien envoyé par courriel connectera automatiquement les utilisateurs), ajoutez
{passwordlessMethod: ’code’}
dans le champ « Extra Settings » (Paramètres supplémentaires) de l’onglet Advanced (Avancé) des paramètres du plugiciel.Pour utiliser la connexion par SMS, activez la connexion SMS et suivez les étapes pour configurer un compte de développeur Twilio (cela nécessitera un compte Twilio payant en fonction de l’utilisation).
Le formulaire de connexion Auth0 sélectionnera une méthode sans mot de passe en fonction de la connexion activée ci-dessus. Si les deux connexions sont actives, la méthode par défaut sera le courriel. Dans ce cas, désactivez la connexion courriel pour afficher les SMS ou ajoutez sms
au champ Connections (Connexions) dans l’onglet Advanced (Avancé) des paramètres du plugiciel.
J’ai deux comptes pour le même utilisateur dans WordPress
Dans certaines situations, vous pouvez vous retrouver avec un utilisateur possédant deux comptes. WordPress vous permet de fusionner les utilisateurs en supprimant l’un des comptes et en attribuant le contenu de ce compte à un autre utilisateur. Rendez-vous dans wp-admin > Users (Utilisateurs), sélectionnez le compte que vous souhaitez supprimer et, dans la boîte de dialogue de confirmation, sélectionnez un autre utilisateur pour transférer le contenu.
Ma configuration est erronée et je ne peux pas m’authentifier avec Auth0. Existe-t-il un autre moyen d’accéder au plugiciel?
Il est possible d’accéder au plugiciel en utilisant des identifiants WordPress valides via la connexion régulière de WordPress en ajoutant ?wle
à l’URL de connexion. Par exemple : http://yourdomain.com/wp-login.php?wle
.
J’ai des problèmes lorsqu’un utilisateur se connecte. Où puis-je trouver un journal de ce qui se passe?
Le plugiciel fournit un journal des erreurs dans lequel vous pouvez vérifier ce qui s’est passé. Vous pouvez y accéder via le sous-élément Error Log (Journal des erreurs) du menu Auth0 du plugiciel. Vous trouverez des informations supplémentaires dans Auth0 Dashboard > Monitoring (Surveillance) > Logs (Journaux).
Comment puis-je afficher le gadget logiciel ou le code court en mode inscription par défaut?
Vous pouvez utiliser le paramètre Extra configuration (Configuration supplémentaire)
du gadget logiciel (ou l’attribut extra_conf
du code court) et ajouter ce JSON {"mode":"signup" }
qui forcera l’affichage du plugiciel dans ce mode.
Lors de l’utilisation d’un plugiciel pour forcer la connexion, l’utilisateur n’est pas connecté
Cela est généralement dû à une page mise en cache après la connexion. Consultez votre hébergeur pour connaître les stratégies permettant d’atténuer ce problème ou essayez d’ajouter un paramètre de destruction du cache à l’URL. Pour en savoir plus, utilisez cette gist sur GitHub.
L’utilisateur n’est pas connecté lorsqu’il utilise le plugiciel « Force Login » (Forcer la connexion).
C’est parce que l’URL de rappel n’a pas été ajoutée à la Liste blanche. Essayez d’ajouter ce code au filtre my_forcelogin_whitelist
:
function wp_auth0_forcelogin_whitelist( $whitelist ) {
if ( ! empty( $_GET['auth0'] ) ) {
$whitelist[] = site_url($_SERVER['REQUEST_URI']);
}
return $whitelist;
}
add_filter('v_forcelogin_whitelist', 'wp_auth0_forcelogin_whitelist', 10, 1);
Was this helpful?
Comment puis-je rediriger les utilisateurs vers un URL spécifique après la connexion?
Toutes les redirections sont vérifiées à l’aide de wp_safe_redirect()
avant d’être effectuées. Si vous essayez de rediriger vers un domaine qui n’est pas votre domaine principal, ajoutez ce domaine à la vérification en utilisant le filtre WordPress allowed_redirect_hosts
. Pour en savoir plus, consultez apply_filters( ’allowed_redirect_hosts’, string[] $hosts, string $host ) sur wordpress.org.
Sur la page de connexion,
Ce plugiciel exploite les fonctionnalités de WordPress pour fonctionner de manière transparente avec les paramètres par défaut. Pour ajouter une redirection, vous pouvez ajouter le paramètre de requête redirect_to
à l’URL lorsque vous dirigez l’utilisateur vers la page de connexion. Le plugiciel redirigera l’utilisateur vers cette URL après une connexion réussie.
Vous pouvez également utiliser le paramètre Login redirection URL (URL de redirection de connexion) dans la page de configuration du plugiciel Auth0. Cette URL sera utilisée pour rediriger l’utilisateur lorsque le paramètre redirect_to
n’est pas fourni.
Utilisation du gadget logiciel
Le gadget logiciel redirige automatiquement l’utilisateur vers la page où il se trouvait avant l’authentification. Vous pouvez modifier ce paramètre en utilisant le paramètre Redirect after login: (Rediriger après la connexion :)
.
Utilisation du code court
Le code court redirige automatiquement vers la page où l’utilisateur se trouvait avant l’authentification. Vous pouvez modifier ce paramètre en utilisant l’attribut redirect_to
.
Comment puis-je migrer mes utilisateurs WordPress vers Auth0?
La version actuelle du plugiciel ne permet pas de migrer automatiquement les utilisateurs vers Auth0, mais vous avez quelques options :
Le plugiciel expose deux points de terminaison pour marquer votre connexion de base de données personnalisée pour le mode import to Auth0 (importation vers Auth0). Pour en savoir plus sur les points de terminaison, lisez Configurer la migration automatique à partir de votre base de données. Vous pouvez utiliser ces scripts de plugiciel pour configurer votre connexion.
Exportez vos données utilisateur vers un fichier JSON et téléversez-le pour l’importer par lot dans Auth0. Initialement, vos utilisateurs devront réinitialiser leurs mots de passe lorsqu’ils se connecteront en utilisant Auth0 parce qu’il n’y a aucun moyen pour Auth0 de décrypter les mots de passe WordPress pendant la migration. Pour savoir comment générer le fichier JSON, consultez Importations d’utilisateurs par lot. Ensuite, vous devrez téléverser le fichier en utilisant le point de terminaison Importer des utilisateurs de Management API Auth0.
Utilisez ce script et le point de terminaison XML-RPC de WordPress pour configurer le flux de migration en utilisant une connexion de base de données personnalisée. Pour en savoir plus sur la configuration du flux de migration, consultez Configurer la migration automatique à partir de votre base de données. Pour en savoir plus sur le point de terminaison XML-RPC de WordPress, lisez Prise en charge XML-RPC sur wordpress.org.
Le paramètre form_title est ignoré lorsque je configure le paramètre dict
En interne, le plugiciel utilise le paramètre dict pour changer le titre du gadget logiciel Auth0. Lorsque vous configurez le champ dict, il remplace le champ form_title.
Pour modifier le form_title dans ce cas, vous devez ajouter l’attribut suivant au JSON du dict :
{
"signin": {
"title": "The desired form title"
}
}
Was this helpful?
Comment puis-je modifier le formulaire de connexion Auth0 intégré?
Il existe de nombreuses options dans l’onglet Appearance (Apparence) de la page des paramètres du plugiciel qui peuvent modifier l’aspect et la convivialité du formulaire de connexion qui est intégré sur votre site (page wp-login/php
, code courts, ou gadget logiciels). Pour en savoir plus sur ces options, consultez Configurer la connexion par Auth0. Cela n’affectera pas le formulaire de connexion sur la page de connexion universelle hébergée par Auth0.
L’onglet Advanced (Avancé) comporte également un champ intitulé « Paramètres supplémentaires » qui accepte un objet JSON valide contenant tous les paramètres que vous souhaitez configurer. Les modifications apportées à l’onglet Appearance (Apparence) sont alors annulées. Pour connaître toutes les options de configuration possibles, consultez Options de configuration de Lock.
Les feuilles de style externes et les fichiers JS doivent être chargés dans votre thème à l’aide de l’appel wp_enqueue_scripts
pour les codes courts/gadget logiciels et de l’appel login_enqueue_scripts
pour wp-login.php
. Pour en savoir plus, consultez do_action( ’wp_enqueue_scripts’ )
sur wordpress.org et do_action( ’login_enqueue_scripts’ )
sur wordpress.org.
La session expire trop tôt
Le plugiciel Auth0 ne gère pas les sessions, il utilise les paramètres de WordPress. Par défaut, les sessions des utilisateurs sont maintenues actives pendant deux jours. Vous pouvez activer le paramètre Remember users session (Se souvenir de la session des utilisateurs)
dans l’onglet Advanced (Avancé) des paramètres du plugiciel pour permettre aux sessions de rester actives jusqu’à 14 heures.
Comment puis-je implémenter un jeton d’actualisation?
Nous avons implémenté des paramètres supplémentaires dans les méthodes de connexion utilisées par le plugiciel pour permettre l’utilisation de jetons d’actualisation. Utilisez le filtre auth0_auth_scope
combiné avec l’action auth0_user_login
pour y parvenir.
Les données de profil enregistrées dans WordPress ne sont pas synchronisées avec le compte utilisateur Auth0.
Il s’agit d’une limitation actuelle du plugiciel, mais nous envisageons d’y remédier dans une prochaine version. La seule exception à cette règle est le mot de passe de l’utilisateur. Si le mot de passe est modifié dans WordPress et qu’il passe la politique de sécurité définie pour la connexion à la base de données utilisée, alors ce mot de passe sera également mis à jour pour l’utilisateur Auth0. Nous ajouterons un message d’erreur dans une prochaine version pour arrêter le processus si le mot de passe n’est pas assez robuste.
Comment migrer de « Social Login with Auth0 » vers « Login by Auth0 »?
Historiquement, Auth0 a maintenu deux plugiciels WordPress :
Ces deux plugiciels sont effectivement les mêmes, mais Social Login with Auth ne recevra aucune mise à jour après la version 3.7.0 (publiée le 13 août 2018). La migration de Social Login with Auth vers Login by Auth0 est simple et n’entraînera aucune perte de données Auth0 ou WordPress.
Passer de Social Login with Auth à Login by Auth0 mettra à jour le numéro de version que vous voyez, donc assurez-vous de tester ce changement sur un serveur d’essai ou de développement d’abord (comme vous le feriez si vous mettiez à jour le plugiciel dans wp-admin). En outre, les connexions peuvent ne pas fonctionner pendant le processus de migration, assurez-vous donc d’utiliser un plugiciel en mode maintenance ou d’effectuer la migration pendant les heures creuses.
La manière la plus simple de migrer est via (S)FTP :
Connectez-vous au site WordPress en tant qu’administrateur.
Téléchargez Login by Auth0 et décompressez-le localement.
Désactivez le plugiciel Social Login with Auth0 depuis l’écran d’administration de WordPress > Plugins (Plugiciels).
Connectez-vous au serveur sur lequel vous souhaitez migrer et naviguez vers
wp-content/plugins
.Déplacez le dossier
social-login-with-auth0
hors du dossier plugiciels pour sauvegarder son contenu.Téléversez le nouveau dossier du plugiciel
auth0
dans le répertoire des plugiciels.Activez le nouveau plugiciel « Login by Auth0 » à partir de l’écran WordPress Admin > Plugins (Plugiciels).
Si vous ne pouvez pas accéder au site via FTP, vous pouvez également lancer le processus directement à partir de l’administrateur WordPress :
Connectez-vous au site WordPress en tant qu’administrateur.
Rendez-vous sur Auth0 > Import-Export Settings (Importer/exporter les paramètres).
Cliquez sur Export Settings (Paramètres d’exportation), puis sur Export (Exportation).
Désactivez le plugiciel Social Login with Auth0 à partir de l’écran WordPress Admin > Plugins (Plugiciels).
Supprimez le plugiciel Social Login with Auth0 et confirmez.
Allez dans Plugins (Plugiciels) > Add New (Ajouter un nouveau) et recherchez « Auth0 ».
Pour le plugiciel Login by Auth0 (assurez-vous de vérifier le nom), cliquez sur Install Now (Installer maintenant).
Une fois l’installation terminée, cliquez sur Activate (Activer).
Vérifiez Auth0 > Settings (Paramètres) et assurez-vous que les paramètres précédents sont conservés. Si ce n’est pas le cas :
Rendez-vous sur Auth0 > Import-Export Settings (Importer/exporter les paramètres).
Collez les paramètres JSON exportés précédemment et cliquez sur Import (Importer).
Supprimez complètement le JSON d’exportation du fichier de paramètres (il contient des informations sensibles).
Tout devrait maintenant fonctionner comme prévu avec le nouveau plugiciel et les mises à jour reprendront comme d’habitude.