Invoertype=wachtwoord, laat de browser het wachtwoord niet onthouden

Ik herinner me dat ik een manier heb gezien om een ​​<input type="password" />te hebben, zodat de browser nietde gebruiker vraagt ​​om het wachtwoord op te slaan. Maar ik teken een blanco. Is er een HTML-attribuut of een JavaScript-truc die dit zal doen?


Antwoord 1, autoriteit 100%

Probeer autocomplete="off"te gebruiken. Het is echter niet zeker of elke browser dit ondersteunt. MSDN-documenten hier.

EDIT: Opmerking: de meeste browsers hebben de ondersteuning voor dit kenmerk laten vallen. Zie Is autocomplete=”off” compatibel met alle moderne browsers ?

Dit is aantoonbaar iets dat aan de gebruiker moet worden overgelaten in plaats van aan de ontwerper van de website.


Antwoord 2, autoriteit 50%

<input type="password" autocomplete="off" />

Ik wil er alleen aan toevoegen dat ik als gebruiker vind dat dit ergvervelend is en een hele klus om op te lossen. Ik raad het gebruik hiervan ten zeerste af, omdat het uw gebruikers meer dan waarschijnlijk zal verergeren.

Wachtwoorden zijn al niet opgeslagen in de MRU en correct geconfigureerde openbare machines slaan de gebruikersnaam niet eens op.


Antwoord 3, autoriteit 10%

Ik heb het op een andere manier opgelost. Je kunt dit proberen.

<input id="passfld" type="text" autocomplete="off" />
<script type="text/javascript">
// Using jQuery
$(function(){                                               
    setTimeout(function(){
        $("input#passfld").attr("type","password");
    },10);
});
// or in pure javascript
 window.onload=function(){                                              
    setTimeout(function(){  
        document.getElementById('passfld').type = 'password';
    },10);
  }   
</script>

#anders

<script type="text/javascript">    
 function setAutoCompleteOFF(tm){
    if(typeof tm =="undefined"){tm=10;}
    try{
    var inputs=$(".auto-complete-off,input[autocomplete=off]"); 
    setTimeout(function(){
        inputs.each(function(){     
            var old_value=$(this).attr("value");            
            var thisobj=$(this);            
            setTimeout(function(){  
                thisobj.removeClass("auto-complete-off").addClass("auto-complete-off-processed");
                thisobj.val(old_value);
            },tm);
         });
     },tm); 
    }catch(e){}
  }
 $(function(){                                              
        setAutoCompleteOFF();
    });
</script>

// je moet attribuut autocomplete=”off” toevoegen of je kunt class .auto-complete-off toevoegen aan het invoervak ​​en genieten

Voorbeeld:

 <input id="passfld" type="password" autocomplete="off" />
    OR
  <input id="passfld" class="auto-complete-off" type="password"  />

Antwoord 4, autoriteit 6%

Ik heb het volgende geprobeerd en het lijkt erop dat dit in elke browser werkt:

<input id="passfld" type="text" autocomplete="off" />
<script type="text/javascript">
    $(function(){  
        var passElem = $("input#passfld");
        passElem.focus(function() { 
            passElem.prop("type", "password");                                             
        });
    });
</script>

Deze manier is veel veiliger dan het gebruik van time-outtechnieken, omdat het garandeert dat het invoerveld zal wijken voor het wachtwoord wanneer de gebruiker het focust.


Antwoord 5, autoriteit 5%

<input type="password" placeholder="Enter New Password" autocomplete="new-password">

Alsjeblieft.


Antwoord 6, autoriteit 4%

Wat betreft beveiligingsproblemen, dit is wat een beveiligingsadviseur u zal vertellen over het hele veldprobleem (dit komt uit een daadwerkelijke onafhankelijke beveiligingsaudit):

HTML automatisch aanvullen ingeschakeld: voor wachtwoordvelden in HTML-formulieren is automatisch aanvullen ingeschakeld. De meeste browsers hebben een mogelijkheid om gebruikersgegevens te onthouden die zijn ingevoerd in HTML-formulieren.

Relatief risico: laag

Getroffen systemen/apparaten:
o https://*******/

Ik ben het er ook mee eens dat dit elkveld moet dekken dat echt privégegevens bevat. Ik vind dat het goed is om een ​​persoon te dwingen om altijd hun creditcardgegevens, CVC-code, wachtwoorden, gebruikersnamen, enz. te typen wanneer die site toegang krijgt tot iets dat beveiligd moet worden [algemeen of door wettelijke nalevingsvereisten]. Bijvoorbeeld: aankoopformulieren, bank-/kredietsites, belastingsites, medische gegevens, federaal, nucleair, enz. – nietsites zoals Stack Overflow of Facebook.

Andere soorten sites – bijv. TimeStar Online voor het in- en uitklokken van werk – het is dom, aangezien ik altijd dezelfde pc/account op het werk gebruik, dat ik de inloggegevens op die site niet kan opslaan – vreemd genoeg kan ik dat op mijn Android maar niet op een iPad. Zelfs gedeelde pc’s zou niet zo erg zijn, aangezien in-/uitklokken voor iemand anders echt niets anders doet dan je supervisor irriteren. (Ze moeten naar binnen gaan en de foutieve stoten verwijderen – kies er gewoon voor om niet op openbare pc’s op te slaan).


Antwoord 7, autoriteit 3%

Hier is het beste antwoord, en het gemakkelijkste! Zet een extra wachtwoordveld voor je input-veld en stel de display:nonein, zodat wanneer de browser het invult, het dit doet in een inputwaar je niets om geeft.

Wijzig dit:

<input type="password" name="password" size="25" class="input" id="password" value="">

naar dit:

<input type="password" style="display:none;">
<input type="password" name="password" size="25" class="input" id="password" value="">

Antwoord 8, autoriteit 2%

Lees ook dit antwoordwaar hij deze eenvoudige oplossing gebruikt die overal werkt (zie ook de oplossing voor Safari mobiel):

<input type="password" readonly onfocus="this.removeAttribute('readonly');"/>

Antwoord 9

U kunt JQuery gebruiken, selecteer het item op id:

$("input#Password").attr("autocomplete","off");

Of selecteer het item op type:

$("input[type='password']").attr("autocomplete","off");

Of ook:

U kunt puur Javascript gebruiken:

document.getElementById('Password').autocomplete = 'off';

Antwoord 10

je kunt het ook als volgt gebruiken

$('#Password').attr("autocomplete", "off");
setTimeout('$("#Password").val("");', 2000);

Antwoord 11

Aangezien autocomplete=offis verouderd, stel ik een recentere oplossing voor.

Stel uw wachtwoordveld in op een normaal tekstveld en maskeer uw invoer met “schijven” met behulp van CSS. de code zou er als volgt uit moeten zien:

<input type="text" class="myPassword" /> 
input .myPassword{
    text-security:disc;
    -webkit-text-security:disc;
    -mox-text-security:disc;
}

Houd er rekening mee dat dit mogelijk niet goed werkt in Firefox-browsers en dat er een extra oplossing nodig is. Lees er hier meer over:https://stackoverflow.com/a/49304708/5477548.

De oplossing is overgenomen van deze link, maar om te voldoen aan SO “no-hotlinks” heb ik het hier samengevat.


Antwoord 12

In het geval van de meeste grote browsers, laat een invoer buiten en niet verbonden met welke vorm dan ook de browser denken dat er geen onderwerping was. In dit geval zou u pure JS-validatie moeten gebruiken voor uw login en zou ook codering van uw wachtwoorden nodig zijn.

Vroeger:

<form action="..."><input type="password"/></form>

Na:

<input type="password"/>

Antwoord 13

Ik heb de volgende werken gevonden in Firefox en Chrome.

<form ... > <!-- more stuff -->
<input name="person" type="text" size=30 value="">
<input name="mypswd" type="password" size=6 value="" autocomplete="off">
<input name="userid" type="text" value="security" style="display:none">
<input name="passwd" type="password" value="faker" style="display:none">
<!-- more stuff --> </form>

Deze staan ​​allemaal in de sectie Formulieren. “person” en “mypswd” zijn wat je wilt, maar de browser zal “userid” en “passwd” een keer opslaan en nooit meer omdat ze niet veranderen. U kunt het veld “persoon” verwijderen als u het niet echt nodig hebt. In dat geval is alles wat u wilt het veld “mypswd”, dat op een of andere manier kan veranderen die bekend is bij de gebruiker van uw webpagina.


Antwoord 14

De enige manier waarop ik Firefox, Edge en Internet Explorer automatisch aanvullen kan laten uitschakelen, is door autocomplete=”false” toe te voegen aan mijn formulierinstructie, zoals:

 <form action="postingpage.php" autocomplete="false" method="post">

en ik moet de autocomplete=”off” toevoegen aan mijn formulierinvoer en het type wijzigen in tekst Like:

    <input type="text" autocomplete="off">

Het lijkt erop dat deze html-code gestandaardiseerd moet worden met de browsers. het formuliertype = wachtwoord moet worden herzien zodat het de browserinstellingen overschrijft.
Het enige probleem dat ik heb, is dat ik mijn invoermaskering ben kwijtgeraakt. Maar aan de positieve kant verschijnt het vervelende “deze site is niet veilig” niet in Firefox.

voor mij is het geen groot probleem, aangezien de gebruiker al is geverifieerd en het is mijn gebruikersnaam en wachtwoord wijzigen


Antwoord 15

u kunt dit gebruiken:
autocomplete=”new-password”

Voorbeeld:

<input type="password" placeholder="Enter New Password" autocomplete="new-password">

Other episodes