Rediriger une demande à /.well-known/change-password
vers l'URL de modification des mots de passe
Définir une redirection de /.well-known/change-password
vers la page de modification du mot de passe
de votre site Web. Cela permettra aux gestionnaires de mots de passe de naviguer dans vos utilisateurs
directement sur cette page.
Introduction
Comme vous le savez peut-être, les mots de passe ne sont pas la meilleure façon de gérer comptes Google. Heureusement, il existe des technologies émergentes telles que WebAuthn et des techniques telles que les mots de passe à usage unique nous aident à nous rapprocher d'un monde sans mots de passe. Toutefois, ces technologies sont encore en cours de développement et les choses ne vont pas changer rapidement. Beaucoup les développeurs devront s'occuper des mots de passe pour au moins quelques-uns ans. En attendant que les technologies et techniques émergentes fréquent, nous pouvons au moins faciliter l’utilisation des mots de passe.
Un bon moyen d’y parvenir est de fournir une meilleure assistance pour les gestionnaires de mots de passe.
Utilité des gestionnaires de mots de passe
Les gestionnaires de mots de passe peuvent être intégrés aux navigateurs ou fournis en tant qu'applications tierces. Ils peuvent aider les utilisateurs de différentes manières:
Saisissez automatiquement le mot de passe dans le champ de saisie approprié: certains navigateurs peuvent trouver la bonne entrée de manière heuristique, même si le site Web n'est pas optimisé pour cette l'objectif. Les développeurs Web peuvent aider les gestionnaires de mots de passe en annotant correctement les codes HTML tags d'entrée.
Éviter l'hameçonnage: les gestionnaires de mots de passe mémorisent l'emplacement du mot de passe. enregistré, le mot de passe ne peut être saisi automatiquement qu'aux URL appropriées, et non à vers des sites Web d'hameçonnage.
Générer des mots de passe uniques et sécurisés, car des mots de passe uniques et sécurisés sont générés et stockés directement par le gestionnaire de mots de passe, les utilisateurs n'ont pas à vous souvenir d'un seul caractère du mot de passe.
La génération et la saisie automatique de mots de passe à l'aide d'un gestionnaire de mots de passe ont déjà ont bien servi le Web, mais en tenant compte de leur cycle de vie, en mettant à jour les mots de passe chaque fois que cela est nécessaire est aussi important que la génération et la saisie automatique. À l’exploiter correctement, les gestionnaires de mots de passe ajoutent une nouvelle fonctionnalité:
Détectez les mots de passe vulnérables et suggérez de les modifier: les gestionnaires de mots de passe peuvent détecter les mots de passe réutilisés, analyser leur entropie et leur faiblesse, et détecter les fuites de mots de passe ou les mots de passe connus pour être non sécurisés provenant de sources comme Have I Been Pwned.
Un gestionnaire de mots de passe peut avertir les utilisateurs en cas de mots de passe problématiques, mais il y a beaucoup de friction pour demander aux utilisateurs de naviguer de la page d'accueil à un changement de mot de passe en plus du processus de modification du mot de passe (qui varie d'un site à l'autre). Il serait beaucoup plus facile que les gestionnaires de mots de passe puissent rediriger l'utilisateur directement vers l'URL de modification du mot de passe. C'est là qu'un URL connue pour modifier mots de passe devient utile.
En réservant un chemin d'URL connu qui redirige l'utilisateur vers le changement page de mot de passe, le site Web peut facilement rediriger les utilisateurs vers le bon emplacement modifier leurs mots de passe.
Définir une "URL connue pour changer les mots de passe"
.well-known/change-password
est proposé comme URL bien connue pour modifier
mots de passe. Tout ce que vous avez à faire est
afin de configurer votre serveur afin qu'il redirige les requêtes pour .well-known/change-password
à l'URL de modification du mot de passe de votre site Web.
Par exemple, imaginons que votre site Web est https://example.com
et que la variation
l'URL du mot de passe est https://example.com/settings/password
. Il vous suffit de définir
votre serveur pour rediriger
une demande de
https://example.com/.well-known/change-password
jusqu'à
https://example.com/settings/password
Et voilà ! Pour la redirection, utilisez
le code d'état HTTP
302 Found
, 303 See
Other
ou 307
Temporary Redirect
.
Vous pouvez également diffuser du code HTML sur votre URL .well-known/change-password
avec
une balise <meta>
à l'aide d'un
http-equiv="refresh"
<meta http-equiv="refresh" content="0;url=https://example.com/settings/password">
Consulter de nouveau le code HTML de la page de modification du mot de passe
L'objectif de cette fonctionnalité est de rendre le cycle de vie du mot de passe de l'utilisateur plus fluide. Vous pouvez faire deux choses pour permettre à l'utilisateur de mettre à jour son mot de passe sans friction:
- Si le formulaire de modification du mot de passe nécessite le mot de passe actuel, ajoutez
autocomplete="current-password"
à la balise<input>
pour aider le mot de passe le remplir automatiquement. - Pour le nouveau champ de mot de passe (dans de nombreux cas, il s'agit de deux champs pour garantir que le
l'utilisateur a correctement saisi le nouveau mot de passe), ajoutez
autocomplete="new-password"
à la balise<input>
pour aider le mot de passe un mot de passe généré.
Pour en savoir plus, accédez à la page Meilleur formulaire de connexion pratiques.
Utilisation concrète
Exemples
Grâce à la version d'Apple Safari,
l'implémentation,
/.well-known/change-password
est déjà disponible sur les principaux
sites Web pendant un certain temps:
Essayez-les et faites de même pour la vôtre !
Compatibilité du navigateur
Une URL connue pour changer les mots de passe est compatible avec Safari depuis 2019. Le gestionnaire de mots de passe de Chrome commence à le prendre en charge à partir de la version 86. (dont la version stable est prévue fin octobre 2020) et d'autres navigateurs basés sur Chromium peuvent suivre. Firefox estime que l'implémentation, mais n'a pas signalé son intention de le faire à compter d'août 2020.
Comportement du gestionnaire de mots de passe de Chrome
Voyons comment le gestionnaire de mots de passe de Chrome traite les mots de passe vulnérables.
Le gestionnaire de mots de passe de Chrome peut détecter les fuites de mots de passe. En naviguant
à about://settings/passwords
utilisateurs peuvent exécuter Vérifier les mots de passe par rapport aux
et consultez la liste des mots de passe dont la mise à jour est recommandée.
![](https://web.dev/static/articles/change-password-url/image/fb-check.png?authuser=5&hl=fr)
En cliquant sur le bouton Modifier le mot de passe situé à côté d'un mot de passe recommandé pour le navigateur:
- Ouvrir la page de modification du mot de passe du site Web si
/.well-known/change-password
est correctement configuré. - Ouvrir la page d'accueil du site Web si
/.well-known/change-password
n'est pas configuré et Google ne connaît pas la solution de remplacement.
200 OK
même si /.well-known/change-password
n'existe pas ?Les gestionnaires de mots de passe tentent de déterminer si un site Web prend en charge une URL connue pour
modifier les mots de passe en envoyant une demande à /.well-known/change-password
avant le
qui redirige réellement l'utilisateur vers cette URL. Si la requête renvoie 404 Not Found
il est évident que l'URL n'est pas disponible, mais une réponse 200 OK
ne l'est pas
ne signifient pas nécessairement que l'URL est disponible, car il existe quelques cas particuliers:
- Un site Web qui s'affiche côté serveur affiche le message "Introuvable" lorsqu'il n'y a pas de contenu
mais avec
200 OK
. - Un site Web avec un rendu côté serveur renvoie
200 OK
en l'absence de code après la redirection vers la page "Introuvable" . - Une application monopage répond avec le shell avec
200 OK
et affiche le message trouvé" du côté client lorsqu'il n'y a pas de contenu.
Pour ces cas limites, les utilisateurs seront redirigés vers une page et cela vous permettra peut être source de confusion.
C'est pourquoi nous proposons une norme
mécanisme
pour déterminer si le serveur est configuré pour répondre avec 404 Not Found
lorsqu'il n'y a pas vraiment de contenu, en demandant une page aléatoire. En fait,
L'URL est également réservée:
/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200
Chrome, par exemple, utilise ce chemin d'URL pour déterminer s'il doit attendre
l'URL de modification du mot de passe appropriée de /.well-known/change-password
à l'avance.
Lorsque vous déployez /.well-known/change-password
, assurez-vous que votre
Le serveur renvoie 404 Not Found
pour tout contenu qui n'existe pas.
Commentaires
Si vous souhaitez nous faire part de vos commentaires sur les spécifications, veuillez les signaler dans les spécifications. un dépôt de clés.
Ressources
- Une URL connue pour changer Mots de passe
- Détecter la fiabilité de l'état HTTP codes
- Bonnes pratiques concernant les formulaires de connexion
Photo de Matthew Brodeur sur Unsplash