Je me souviens avoir vu un moyen de faire en <input type="password" />
sorte que le navigateur n'invite pas l'utilisateur à enregistrer le mot de passe. Mais je dessine un blanc. Y a-t-il un attribut HTML ou une astuce JavaScript qui fera cela?
101
Réponses:
Essayez d'utiliser
autocomplete="off"
. Je ne sais pas si tous les navigateurs le prennent en charge. Documents MSDN ici .EDIT : Remarque: la plupart des navigateurs ont abandonné la prise en charge de cet attribut. Voir Est-ce que autocomplete = "off" est compatible avec tous les navigateurs modernes?
C'est sans doute quelque chose qui devrait être laissé à l'utilisateur plutôt qu'au concepteur du site Web.
la source
<input type="password" autocomplete="off" />
Je voudrais simplement ajouter qu'en tant qu'utilisateur, je pense que c'est très ennuyeux et un problème à surmonter. Je recommande fortement de ne pas l'utiliser car cela aggravera probablement vos utilisateurs.
Les mots de passe ne sont déjà pas stockés dans la MRU, et les machines publiques correctement configurées n'enregistreront même pas le nom d'utilisateur.
la source
J'ai résolu d'une autre manière. Vous pouvez essayer ceci.
#autrement
// vous devez ajouter l'attribut autocomplete = "off" ou vous pouvez ajouter la classe .auto-complete-off dans la zone de saisie et en profiter
Exemple:
la source
J'ai essayé ce qui suit et il semble que cela fonctionne avec n'importe quel navigateur:
Cette méthode est beaucoup plus sûre que l'utilisation de techniques de temporisation, car elle garantit que le champ de saisie cédera au mot de passe lorsque l'utilisateur le concentre.
la source
En ce qui concerne les problèmes de sécurité, voici ce qu'un consultant en sécurité vous dira sur l'ensemble du problème du terrain (cela provient d'un véritable audit de sécurité indépendant):
Je conviens également que cela devrait couvrir tout domaine contenant des données véritablement privées. Je pense qu'il est correct de forcer une personne à toujours taper ses informations de carte de crédit, son code CVC, ses mots de passe, ses noms d'utilisateur, etc. chaque fois que ce site va accéder à tout ce qui devrait être sécurisé [universellement ou par des exigences de conformité légale]. Par exemple: formulaires d'achat, sites bancaires / de crédit, sites fiscaux, données médicales, fédérales, nucléaires, etc. - et non des sites comme Stack Overflow ou Facebook.
D'autres types de sites - par exemple TimeStar Online pour les points d'entrée et de sortie du travail - c'est stupide, puisque j'utilise toujours le même PC / compte au travail, que je ne peux pas enregistrer les informations d'identification sur ce site - curieusement, je peux sur mon Android mais pas sur un iPad. Même les PC partagés, ce ne serait pas trop grave car pointer pour quelqu'un d'autre ne fait vraiment rien d'autre qu'ennuyer votre superviseur. (Ils doivent entrer et supprimer les poinçons erronés - choisissez simplement de ne pas enregistrer sur les PC publics).
la source
Voici.
la source
Voici la meilleure réponse et la plus simple! Mettez un champ de mot de passe supplémentaire devant votre
input
champ et définissez ledisplay:none
, de sorte que lorsque le navigateur le remplit, il le fasse dans uninput
que vous ne vous souciez pas.Change ça:
pour ça:
la source
display:none
ne fonctionne pas pour moi (Chrome 61 OSX), mais cela fonctionne:<input type="password" style="position: absolute; top: -1000px;">
Lisez aussi cette réponse où il utilise cette solution simple qui fonctionne partout (voir aussi le correctif pour Safari mobile):
la source
Vous pouvez utiliser JQuery, sélectionnez l'élément par identifiant:
Ou sélectionnez l'article par type:
Ou aussi:
Vous pouvez utiliser du Javascript pur:
la source
vous pouvez également l'utiliser comme suit
la source
vu que la saisie semi-automatique = off est obsolète, je suggère une solution plus récente.
Définissez votre champ de mot de passe sur un champ de texte normal et masquez votre entrée avec des "disques" en utilisant CSS. le code devrait ressembler à ceci:
Veuillez noter que cela peut ne pas fonctionner correctement sur les navigateurs Firefox et qu'une solution supplémentaire est nécessaire. Pour en savoir plus, cliquez ici: https://stackoverflow.com/a/49304708/5477548 .
La solution a été tirée de ce lien , mais pour se conformer à SO "no-hotlinks" je l'ai résumée ici.
la source
Dans le cas de la plupart des principaux navigateurs, le fait d'avoir une entrée en dehors de et non connectée à quelque formulaire que ce soit pousse le navigateur à penser qu'il n'y a pas eu de soumission. Dans ce cas, vous devrez utiliser la validation JS pure pour votre connexion et le cryptage de vos mots de passe serait également nécessaire.
Avant:
Après:
la source
J'ai trouvé les travaux suivants sur Firefox et Chrome.
Tous ces éléments se trouvent dans la section des formulaires. "person" et "mypswd" sont ce que vous voulez, mais le navigateur enregistrera "userid" et "passwd" une fois, et plus jamais car ils ne changent pas. Vous pouvez supprimer le champ "personne" si vous n'en avez pas vraiment besoin. Dans ce cas, tout ce que vous voulez est le champ "mypswd", qui pourrait changer d'une manière connue de l'utilisateur de votre page Web.
la source
Le seul moyen pour que Firefox, Edge et Internet Explorer désactivent la saisie semi-automatique est d'ajouter autocomplete = "false" dans ma déclaration de formulaire comme:
et je dois ajouter l'autocomplete = "off" à mon entrée de formulaire et changer le type en texte comme:
Il semble que ce code html doive être standardisé avec les navigateurs. le type de formulaire = mot de passe doit être révisé afin qu'il remplace les paramètres du navigateur. Le seul problème que j'ai est que j'ai perdu mon masquage d'entrée. Mais du côté positif, l'ennuyeux "ce site n'est pas sécurisé" n'apparaît pas dans Firefox.
pour moi, ce n'est pas un gros problème car l'utilisateur est déjà authentifié et sa partie mon nom d'utilisateur et mot de passe change
la source