Einmalcode automatisch ausfüllen (Passwort Manager)

  • App
    WoltLab Suite Core

    Hallo


    Beim Plugin von Hanashi war es möglich dass der Einmalcode nach dem Login mit der Browsererweiterung von 1Password automatisch ausgefüllt wurde. Mit der in 5.4 integrierten Lösung klappt das weder auf Mobilen noch auf Desktop Geräten.


    Würde mir da wünschen wenn das in der kommenden 5.4 drinnen sein könnte.

  • Ist mir auch gerade aufgefallen, dass ich den Code nun manuell aus 1Password kopieren und einfügen muss... :/


    Vorher (Plugin Hanashi):

    <input type="text" name="twoStepCode" id="twoStepCode" autocomplete="one-time-code" required="" class="" data-com-onepassword-filled="light">


    Nachher (WSC 5.4):

    <input type="text" id="code" name="code" value="" class="multifactorTotpCode" inputmode="numeric" autocomplete="off" pattern="[0-9]*" autofocus="" required="" minlength="6" maxlength="6" placeholder="123456" size="6">


    "autocomplete" ist nun auf "off" gesetzt. Und "ID" und "Name" sind auch anders.

    • Official Post

    Hallo,


    ich habe lokal einmal den autocomplete-Wert auf one-time-code gestellt. 1password füllt dann im Safari auch, wie erwartet, das Feld automatisch aus und Safari unterdrückt die Autokomplettierung. Bei anderen Browsern unter macOS sieht es aber anders aus. Chrome bspw. unterdrückt die Autokomplettierung nicht (und füllt das Feld auch nicht automatisch aus). In allen Fällen (unter macOS) wird allerdings der Mehrfaktor-Code in die Zwischenablage kopiert, sodass der Code einfach nur noch mit einem Tastenklick eingefügt werden muss.


    Unter iOS wird übrigens weder der Code automatisch ausgefüllt, noch der Code in die Zwischenablage kopiert (wieso auch immer).


    Das MDN gibt außerdem nicht an, wie sich der Browser konkret verhalten soll, wenn er dieses Feld sieht. Einzig allein Safari unter macOS benutzt es derzeit wie erwartet.


    Daher haben wir uns gegen die Änderung des Attributes entschieden.


    Falls die Browser das verhalten zukünftig anpassen, schließen wir nicht aus, dass wir den Vorschlag doch noch umsetzen. Nur derzeit ist es nicht sinnvoll.

    • Official Post

    Hallo,

    Bei Bedarf kann notfalls ja jeder selbst das Template dafür anpassen.

    das Feld wird mit dem FormBuilder erzeugt, entsprechend ist eine Template-Änderung hier nicht möglich. Siehe auch der verlinkte PR.


    Ganz unabhängig davon würde ich hier auch davon abraten individuelle Änderungen vorzunehmen, da sich dann die selbe Funktion in unterschiedlichen Communitys unterschiedlich verhält. Das ist der UX nicht zuträglich.

  • da sich dann die selbe Funktion in unterschiedlichen Communitys unterschiedlich verhält

    Na und? Solange es innerhalb der Community identisch ist, ist das ein Pseudo-Argument. Spinnt man das weiter müssten alle Communities identisch sein.

    • Official Post

    Hallo,


    siehe der zweite Absatz in diesem Beitrag:



    Es ist nicht sinnvoll, dass sich sicherheitsrelevante Kernfunktionen in ihrem Verhalten unterscheiden.

  • Und dennoch kann und soll das jeder selber entscheiden. Wenn es ja in externen Plugins geht und ihr es nur teilweise übernehmt, ist es kalt das es den Anwendern nicht gefällt. Also wird es sicher Anwender geben die dies für sich ändern werden. Ob ihr das nun sinnvoll findet oder nicht, ist da sicher dem einen oder anderen egal.

  • ich habe lokal einmal den autocomplete-Wert auf one-time-code gestellt

    Ich denke nicht, dass es daran liegt, was das eigentliche Problem ist. Das Problem - zumindest für mich - ist nicht, dass der Code nicht direkt automatisch ausgefüllt wird. Sondern dass 1Password nicht in der Lage ist, dieses neue Feld überhaupt als TOTP-Feld zu erkennen. :(


    In allen Fällen (unter macOS) wird allerdings der Mehrfaktor-Code in die Zwischenablage kopiert, sodass der Code einfach nur noch mit einem Tastenklick eingefügt werden muss.

    Hast du das Ganze zufällig mal unter Windows 10 probiert? Ich nutze die aktuelle Version 2.0.4 der Chrome-Erweiterung im Vivaldi Browser und hier wird leider kein TOTP-Code mehr nach dem Ausfüllen in die Zwischenablage kopiert. Ja, ich kann mich daran erinnern, dass das mal so war, als ich noch die Classic-Extension in Verbindung mit der Desktop App genutzt hatte.


    Wie geschrieben, sehe ich allerdings eher das Problem darin, dass das Feld erst gar nicht von 1Password und vermutlich auch von anderen Passwort-Managern als TOTP-Feld erkannt wird.


    Hier mal zur Veranschaulichung der Unterschied zwischen dem WSC 5.3 mit Plugin von Hanashi und dem WSC 5.4.



    Es ist hier deutlich zu erkennen, dass 1Password keinerlei Chance mehr hat, das Feld irgendwie zu erkennen und auszufüllen. Und ich finde, daran sollte etwas geändert werden!


    Unter iOS wird übrigens weder der Code automatisch ausgefüllt, noch der Code in die Zwischenablage kopiert (wieso auch immer).

    Unter iOS klappt leider so Vieles nicht bei 1Password. Ich denke, dass hier Restriktionen von Apple mit hineinspielen.


    Daher haben wir uns gegen die Änderung des Attributes entschieden.

    Das ist sehr schade. Wie ich weiter oben schrieb, wäre es wenigstens wünschenswert, dass 1Password (und andere Passwort-Manager) dazu in der Lage sind, das Feld als TOTP-Feld zu erkennen und verarbeiten zu können. Damit wäre schon vielen Nutzern von Passwort-Managern geholfen.

  • Daher haben wir uns gegen die Änderung des Attributes entschieden.

    Ich verstehe das Argument nicht: „Viele Browser machen nichts damit, manche aber verwenden es korrekt“. Ich sehe hier den Nachteil nicht und daher auch nicht den konkreten Grund, warum ihr euch gegen eine solche Implementierung entschieden habt.


    Das einzige, was mir in den Sinn kommen mag, ist das Deaktivieren einer Funktion, damit es in allen Browsern identisch ist. Das empfinde ich dann aber wiederum als unsinnig, zumal autocomplete="one-time-code" explizit für den zweiten Faktor da ist. Wer weiß, vielleicht ist es in 1–2 Chrome-Versionen dort auch wieder anders und sie unterstützen ihn ebenso sauber.


    Ich kann zudem mindestens für andere Websites sagen, dass dort das automatische Ausfüllen problemlos funktioniert (beispielsweise bei hosting.de).

  • Es wird von mir ein Paket dazu geben. Die Funktion kann gerne beim Login auf meiner Seite getestet werden, um etwaige Probleme vor dem Release ausfindig zu machen.

    PS: Das Paket landet natürlich nicht im Plugin-Store…

    • Official Post

    Hallo,

    Ich verstehe das Argument nicht: „Viele Browser machen nichts damit, manche aber verwenden es korrekt“. Ich sehe hier den Nachteil nicht und daher auch nicht den konkreten Grund, warum ihr euch gegen eine solche Implementierung entschieden habt.

    das Problem ist nicht, dass viele Browser nichts damit machen. Das Problem ist, dass alle Browser die es nicht unterstützen autocomplete="one-time-code" als autocomplete="on" statt autocomplete="off" interpretieren. Mit dem Resultat, dass der Benutzer seitenübergreifend (!) Vorschläge für bereits verwendete TOTP-Codes bekommt. Im Laufe der Zeit wird das eine ziemlich lange nutzlose Liste, die dazu führen kann, dass der Benutzer versehentlich einen der Vorschläge auswählt und entsprechend – mit entsprechender Verwirrung – einen ungültigen Code als Resultat bekommt.


    Letztlich sind wir mit der Entscheidung für autocomplete="off" auch nicht allein. Die Logins bei Google und Cloudflare setzen beispielsweise ebenfalls autocomplete="off".

    Wer weiß, vielleicht ist es in 1–2 Chrome-Versionen dort auch wieder anders und sie unterstützen ihn ebenso sauber.

    Wenn die Unterstützung in Webbrowsern weniger unsinnig wird, dann ist eine Anpassung auch kurzfristig möglich, den Wert zu ändern ist ja keine Raketenwissenschaft.

  • Es wird von mir ein Paket dazu geben.

    Und wieder muss ein anderer Entwickler eingreifen, um etwas zu realisieren, was doch eigentlich kein Problem darstellen sollte... :/


    EDIT: Und wie es funktioniert gn5VmUKCtv6ekrMf ! Es funktioniert nicht nur das automatische Ausfüllen sondern auch die Erkennung, dass es sich bei dem Feld um ein TOTP-Feld handelt. :thumbup:



    Letztlich sind wir mit der Entscheidung für autocomplete="off" auch nicht allein. Die Logins bei Google und Cloudflare setzen beispielsweise ebenfalls autocomplete="off".

    Das mag richtig sein. Aber zumindest haben die anderen Anbieter kein Problem damit, dass ihre TOTP-Felder auch als solche von Passwort-Managern erkannt werden. :(

  • Ich kann beide Seiten nachvollziehen und halte


    Die Logins bei Google und Cloudflare setzen beispielsweise ebenfalls autocomplete="off".


    auch für ein gutes Argument. Zumindest im Beispiel von Google.


    Ich sehe den Zugzwang hier eher bei den Passwortmanagern. Da sollte sich ein Standard etablieren, bei dem z.b. auf ein neues Attribut gesetzt wird. Damit umgeht man nämlich die Gefahr, bestehende Implementierungen kaputt zu machen und ist vollkommen unabhängig von irgendwelchen Browser-Eigenarten.

  • Ich sehe den Zugzwang hier eher bei den Passwortmanagern.

    Zumindest im Fall von 1Password werde ich eine Anfrage stellen, sobald ich auf 5.4 bin. Dann kann ich denen alles liefern, was sie benötigen, um das Feld wieder zu erkennen und ausfüllen zu lassen. ;)

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!