Zum Inhalt springen

Launcher ersetzt Zeichen im Nutzernamen beim Login mithilfe von Keepass


Empfohlene Beiträge

Ich habe im Dezember durch Humblebundle einen 2. Account bekommen. Um zwischen diesen Accounts zu wechseln, habe ich mir mit dem Passwort-Safe "Keepass" die Logindaten gespeichert. Wenn man bei beiden Einträgen "Auto-Type" für den GW2 Launcher einstellt, und die Tastenkombination (Standard Strg+Alt+A) drückt, öffnet sich ein Fenster, und man kann den Account auswählen. Die Logindaten werden im Format {USERNAME}{TAB}{PASSWORD}{ENTER} eingetragen.

Der Fehler: Fast immer wird das Zeichen vor "@" in der E-Mail Adresse durch @ ersetzt. Statt "example@mail.com" steht dann "exampl@mail.com" im Feld des Benutzernamen. Sehr gut sehen kann man das, wenn man vor die Sequenz "{DELAY=500}" schreibt. Das Zeichen wird einfach durch @ ersetzt. Es ist also kein Problem der Schreibgeschwindigkeit. Es ist auch kein Problem von Keepass, in jedem anderen Launcher funktioniert das Perfekt. Infolgedessen funktioniert der Login nicht. Das könnte Nutzer davon abschrecken, lange, sichere Passwörter und Keysafes zu nutzen.

Ein Beispiel-Gif ist hier zu sehen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Monat später...
  • 3 Wochen später...

Hallo, @anchuin.4970

Ich nutze auch den KeePass, nur schaffe ich das gerade Mal die Passwörter für meinem Browser zu speichern.Kannst Du mir eine kurze Anleitung geben, wie ich KeePass auch für verschiedene Clients und oder Apps nutzen kann?Leider finde ich diesbezüglich nichts im Internet, oder ich bin einfach zu blöd um richtig zu googlen.

Danke Dir schon Mal :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

@anchuin.4970 schrieb:Bump: Das Problem besteht in Launcher Version 96034 immernoch.

Du könntest bei dem Eintrag in KeePass im Reiter Erweitert, ein weiteres String-Feld hinzufügen.

Das nennst du dann bspw. einfach: LauncherUserName; und trägst da als Wert deine Email-Adresse einund machst da einfach einen weiteren Pseudobuchstaben vor dem @-Zeichen - wird ja dann eh entfernt.

Im Reiter AutoType wählst du dann Standardsequenz überschreiben und trägst dort folgendes ein:

{S:LauncherUserName}{TAB}{PASSWORD}{ENTER}

So sollte es dann mit AutoType im Launcher funktionieren. Ich denke mal für den Browser wirst du ja bestimmt KeePassHttp benutzen. Daher sollte sich da dann nichts ändern. Falls du da allerdings auch AutoType benutzen solltest, wirst du wohl nicht drumherum kommen, direkt einen weiteren Eintrag für den Launcher zu machen. Ich glaube jedenfalls nicht, dass Anet dieses Problem jemals angehen wird - leider.

Link zu diesem Kommentar
Auf anderen Seiten teilen

@"Sileeent.5861" schrieb:[...]{S:FieldID_LauncherUserName}{TAB}{PASSWORD}{ENTER}

Müsste das nicht

{S:LauncherUserName}{TAB}{PASSWORD}{ENTER}

heissen? Ohne das "FieldID_"? (hat zumindest bei mir sonst geknallt)

Aber davon mal ab: es ändert leider nichts an dem Problem. Es fängt ja schon damit an, dass es nicht konsistent ist. Manchmal funktioniert die Eingabe, manchmal nicht. Ein Extrazeichen würde also so oder so Probleme machen wenn die Funktion sich entschließt normal zu funktionieren (dann würde das ursprüngliche Zeichen und das Extrazeichen übermittelt werden). Und selbst wenn sie nicht normal funktioniert und der Benutzername richtig angezeigt wird funktioniert der Login (zumindest bei meinen Tests) trotzdem nicht.

Irgendwas ist da grundlegend im Eimer.

Lustigerweise funktioniert der automatische Login problemlos wenn man die Daten per Copy&Paste in die Felder packt. Ich hab mir schon vor Jahren ein AutoIt-Skript gebastelt das die Felder so füllt statt die Buchstaben einzeln zu senden und da noch nie ein Problem mit gehabt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

@Tiscan.8345 schrieb:

@"Sileeent.5861" schrieb:[...]
{S:FieldID_LauncherUserName}{TAB}{PASSWORD}{ENTER}

Müsste das nicht

{S:LauncherUserName}{TAB}{PASSWORD}{ENTER}

heissen? Ohne das "FieldID_"? (hat zumindest bei mir sonst geknallt)

Habe es editiert. Ja beim Testen hatte ich den Prefix noch davor, daher habe ich den dann fälschlicherweise mit rein geschrieben.

@Tiscan.8345 schrieb:Aber davon mal ab: es ändert leider nichts an dem Problem. Es fängt ja schon damit an, dass es nicht konsistent ist. Manchmal funktioniert die Eingabe, manchmal nicht. Ein Extrazeichen würde also so oder so Probleme machen wenn die Funktion sich entschließt normal zu funktionieren (dann würde das ursprüngliche Zeichen und das Extrazeichen übermittelt werden). Und selbst wenn sie nicht normal funktioniert und der Benutzername richtig angezeigt wird funktioniert der Login (zumindest bei meinen Tests) trotzdem nicht.

Irgendwas ist da grundlegend im Eimer.

Lustigerweise funktioniert der automatische Login problemlos wenn man die Daten per Copy&Paste in die Felder packt. Ich hab mir schon vor Jahren ein AutoIt-Skript gebastelt das die Felder so füllt statt die Buchstaben einzeln zu senden und da noch nie ein Problem mit gehabt.

Gut, soweit hatte ich es bei mir nicht einmal getestet. Ist natürlich um so blöder, wenn der Fehler so inkonsequent ist. Ja statt AutoType wäre es wohl nützlicher den Zwischenspeicher zu nutzen. Wenn ich das häufig brauchen würde, würde ich mir wohl nen kleines Plugin für KeePass schreiben. Sollte nicht schwer sein eine Copy & Paste Variante von AutoType zu bauen. Quasi eine AutoCopyPaste Funktion die den Zwischenspeicher am Ende auch schön leert nachdem die Aufgabe beendet wurde.

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Monat später...
  • 2 Monate später...
  • 1 Monat später...

Hi!

tl;dr

Im Launcher das „Account Name“-Feld mit folgender AutoType-Sequenz befüllen:

@+{LEFT}^X{T-REPLACE-RX:/{USERNAME}/([^@]+).*/$1/}^V{T-REPLACE-RX:/{USERNAME}/[^@]+@(.+)/$1/}

Dazu gegebenenfalls hintendran Tab, Passwort, Enter und was auch immer ihr braucht.


Mehr Info:

Ich stolperte gerade selbst übers Phänomen und hab als Workaround Folgendes gewählt. Achtung, Ghetto Deluxe. Also voll schlimm. Von hinten durch die Brust ins Auge. Das Zeichen vorm @-Zeichen wird ja nun mit hoher aber nicht mit absoluter Wahrscheinlichkeit durchs @ ersetzt. Also lasse ich KeePass beim AutoTypen das @ einfach nicht an seiner üblichen Stelle schreiben. Ich tipp das @ stattdessen da, wo die Macke egal ist: an erster Stelle und stückel mir das Ergebnis so wie's sein muss.

  1. Tippe ins leere „Account Name“-Feld des Launchers ein buchstäbliches @(Das Zeichen links davon wird womöglich gelöscht; es gibt noch keins, ist also egal)
  2. Schneide das @ in die Zwischenablage aus
  3. Tippe den local-part der Mailadresse, also alles links vom @
  4. Füge aus der Zwischenablage das zuvor ausgeschnittene @ ein
  5. Tippe die Domain der Mailadresse, also alles rechts vom @

Fertig.

Die einzelnen Zutaten in KeePass-AutoType-Sprache sind:

  • Das (@-)Zeichen links vom Cursor markieren, also <Shift> + <Pfeiltaste links>: +{LEFT}
  • <Strg> + <X>: ^X
  • <Strg> + <V>: ^V

Und etwas kniffliger, ein paar Zeichen der Mailadresse tippen:

  1. Aus der KeePass „Placeholders“-Doku, Abschnitt „Text Transformations“: {T-REPLACE-RX:/Text/Search/Replace/}, sprich in Text suche die Perl-compatible Regular Expression (PCRE) Search und ersetze das Gefundene mit Replace. Streng genommen sind's .NET Regular Expressions und nicht PCRE, sind aber für diesen Use Case praktisch gleich anwendbar und PCRE vermutlich bekannter.
  2. Für den local-part der Mailadresse:
    • Suche in {USERNAME}
    • Finde eine möglichst lange Kette Nicht-@-Zeichen ([^@]+)
    • Speichere das Ergebnis in $1 (([^@]+))
    • Finde nach dem Ergebnis eine möglichst lange Kette beliebiger Zeichen (.*)
    • Speichere sie aber nirgends
    • Ersetze den gesamten gefundenen String mit $1, also einer möglichst langen Kette Nicht-@-Zeichen
  3. Für die Domain:
    • Suche in {USERNAME}
    • Finde wieder eine möglichst lange Kette Nicht-@-Zeichen ([^@]+)
    • Speichere sie aber diesmal nirgends
    • Hintendran finde ein buchstäbliches @, speichere auch das nicht
    • Finde als nächstes eine mindestens ein Zeichen lange Kette beliebiger Zeichen (.+)
    • Speichere sie in $1 ((.+))
    • Ersetze den gesamten gefundenen String mit $1, also allem rechts vom @

Sonstiges:

  • Mit einem vorangestellten {CLEARFIELD} könnt ihr im Zweifelsfalls sicherstellen, dass das „Account Name“-Feld im Launcher geleert wird, bevor ihr loslegt. Im Normalfall bei ungespeicherten Zugangsdaten is es aber ja ohnehin leer.
  • Als Quelle für euren Accountnamen könnt ihr natürlich was Anderes als {USERNAME} nehmen, aber da steht's bei mir und sinnigerweise wohl den meisten

Ta daaa. Ghetto Deluxe ey. Ganz ganz schlimm, aber bei mir funktioniert's so immerhin.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Account erstellen

Erstelle einen neuen Account für unsere Community. Es ist einfach!

Neuen Account erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...