Login: Benutzernamen mit Leerschlägen?

Hallo liebe Community

Ich arbeite an einer neuen Website. Jetzt stehe ich vor der Entscheidung, wie sich die Nutzer authentifizieren sollen. Ich möchte folgendes gewährleisten:

  • Account soll virtuellen und nicht realen Benutzer referenzieren.
  • Ein realer Benutzer soll einfach mehrere Accounts anlegen können.
  • Benutzer soll den Dienst möglichst anonym verwenden können.
  • Man soll vom Account nicht auf den realen Benutzer schliessen können.
  • Standardmässig soll alles anonym sein, wenn jemand seinen realen Namen preisgeben möchte, soll er dies bewusst tun müssen.
Natürlich wäre die E-Mail-Adresse das ideale Authentifizierungs-Werkzeug. Die will ich jedoch nicht nehmen, da es damit schnell Probleme gibt mit den Punkten oben (mehrere Accounts, per se anonym, etc.).

Also dachte ich, kann man ja direkt Pseudonyme als Benutzernamen nehmen. Nun wäre es natürlich einfach, Whitespaces nicht zuzulassen. Ich möchte jedoch Leerschläge, denn sie ermöglichen einfach bessere Lesbarkeit. Und immerhin sind wir im 21. Jahrhundert...


Es ergeben sich jedoch andere Probleme:

  • Es gibt Leerschläge verschiedener Breite (siehe hier) - nur den normalen zulassen?
  • Was machen, wenn jemand zwei oder mehr Leerschläge nacheinander eingibt (aus Versehen oder gewollt spielt keine Rolle) => könnte andere Benutzer irritieren (oder jemand könnte einen Account mit ähnlichem Namen anlegen und sich damit als jemand anderes ausgeben).
Anfang und Schluss kann man natürlich trimmen. In der Datenbank möchte ich eine UserId zusammen mit dem Benutzer anlegen. Die UserId ist der Primary Key, der UserName ist unique.


Was haltet ihr davon? Hat jemand damit schon Erfahrungen gemacht? Oder habt ihr andere Ideen?




Gruss
TschiMan
 
Ich weis zwar nicht was für eine Art Seite das wird, aber ich hatte es bisher so gelöst, dass ich einen benutzer mit allen persönlichen Daten habe und den einzelnen accounts einfach nummern automatisch generiert habe. Jeder account muss dann die Nummer und das Passwort zum anmelden verwenden. Hat ein Benutzer das Passwort seines accounts vergessen muss dies vom admin zurückgesetzt werden mit authentifizirung über die benutzerdaten. Vielleicht hilft dir das als denkanstoß weiter

Sent from my OMNIA7 using Board Express
 
Hallo Prophion

Die Seite sollte ähnlich wie ein Forum werden. Als Enduser kommen alle in Frage. Daher ist es etwas zu 'technisch', wenn man den Nutzern eine LoginId vergibt, die sie sich merken müssen. Es würde zwar das ganze einiges einfacher machen.

Ich denke, ich muss es so machen, dass der String links und rechts getrimmt wird. Anschliessend wird jedes Zeichen geprüft, ob es erlaubt ist (lateinisches Alphabet, arabische Ziffern und ein paar Sonderzeichen).
Das Problem ist dann halt, dass keine anderen Schriftzeichen erlaubt sind (z. B. chinesische...).


Gruss
TschiMan
 
Sehr oft wird auch neben dem Login Namen ein anzeigename zusätzlich gemacht so dass der loginname nie im Forum zu sehen ist. Hab noch nie gesehen dass Leerzeichen in einem loginname erlaubt sind, aber das muss ja nicht heißen dass es eine schlechte Idee ist ;)

Sent from my OMNIA7 using Board Express
 
Das könnte es sein... Ich könnte mir vorstellen, dass man bei der Registrierung einen Namen eingeben kann (mir Leerzeichen, ganz normal), dann werden die Leerzeichen durch underscores ersetzt, und dem User gesagt, er soll sich damit einloggen.
Macht das ganze wieder etwas komplizierter. Es sollte halt schon DAU-tauglich sein.

Hab noch nie gesehen dass Leerzeichen in einem loginname erlaubt sind,

Das schreckt mich davon ab :D


Gruss
TschiMan
 
Nicht vor Innovationen zurückschrecken! Wenns nichts ist wird es sich nicht durchsetzen, falls es sinnvoll ist hast du das Web 3.0 entwickelt! (oder sind wir dann schon bei 4.0 angelangt? Ich blicke da nicht mehr ganz durch ...)

mfg benediktibk
 
Ich frage mich gerade wenn es dir um Anonymität geht, wieso dann überhaupt ein Login.
Gerade wenn es dir nicht darum geht Mehrfachaccounts zu verhindern, Trolle zu sperren
oder irgendwie mit den Nutzern Kontakt aufzunehmen.
Da reicht ein Captcha, um Bots weitgehend fernzuhalten und ein Zwangsfeld für ein
Pseudonym. Wird dieses von mehreren genutzt erhöht es die Anonymität.

Allerdings liegt dadurch dann der Grossteil der Verantwortung für die veröffentlichten Inhalte
bei dir, wenn du auf jegliche Verifizierung verzichtest. Dies würde dann schon beim verwendeten
Pseudonym beginnen.

Gruss
 
Nicht vor Innovationen zurückschrecken! Wenns nichts ist wird es sich nicht durchsetzen, falls es sinnvoll ist hast du das Web 3.0 entwickelt! (oder sind wir dann schon bei 4.0 angelangt? Ich blicke da nicht mehr ganz durch ...)
Ob das wohl reicht? ^^

Ich frage mich gerade wenn es dir um Anonymität geht, wieso dann überhaupt ein Login.
Durch das Login erhält der Nutzer überhaupt erst die vollen Funktionalitäten. Das System liefert jedem Nutzer individuellen Inhalt. Daher kann man darauf wohl nicht verzichten.

Aber grundsätzlich sollte es schon funktionieren. Der Leerschlag hat die Nummer 32 beim ASCII-Zeichensatz, und mit dem ist ja eh jeder andere kompatibel (und vor allem UTF-8 ). Und es darf halt nur ein Leerschlag nacheinander vorkommen, da man sonst schnell gleiche Namen mit unterschiedlicher Anzahl Leerschläge verwechselt. Das schreit förmlich nach Regex... :D


Gruss
TschiMan
 
Wenn du Leerzeichen erlaubst und dann noch so viel wie möglich kann das auch schnell nach hinten losgehen. Man könnte sich zum Beispielnennen

Code:
Admin                                         ist doof

und aufgrund der Auflösung ist nur Admin zu sehen und es kann jemand anders denken Admin ist doof und Admin sind die selben personen. (ist früher bei Windows oft genutzt wurden der trick mit den überlangen Dateinamen mit einer harmlosen endung bei einer gewissen "standard" Einstellung aber dennnoch ist eine gefährliche Endung gewesen die sich nur hinter Leerzeichen versteckt hat.

Desweiteren wird es wohl unmöglich werden ein passendes BenutzerInterface zu machen wenn sich eine beliebige lange Zeichenkette als Benutzername durchsetzen will.

Wenn du wirklich die Lesbarkeit verbessern willst dann lass den User 2 oder 3 Namen eingeben du dann Zusammenbaust mit Leerzeichen. Um doppelte namen zu verhindern könntest du als Login einfach die zusammensetzung der 3 Namen nehmen.
 
Wenn du Leerzeichen erlaubst und dann noch so viel wie möglich kann das auch schnell nach hinten losgehen. Man könnte sich zum Beispielnennen
Da müsste man prüfen, dass nie zwei oder mehr Leerzeichen beieinander vorkommen. Und an den Enden werden die Leerzeichen auch entfernt. Dann sollte es keine Überraschungen geben.
Natürlich könnte einer einen Benutzernamen à la "U s e r n a m e" wählen. Sieht zwar etwas eigen aus, aber bitteschön.

Desweiteren wird es wohl unmöglich werden ein passendes BenutzerInterface zu machen wenn sich eine beliebige lange Zeichenkette als Benutzername durchsetzen will.
Da hast du wohl recht. Die Länge des Benutzernamens werde ich natürlich beschränken, z. B. auf 30. Mit 40 verschiedenen Zeichen (Alphabet, Zahlen, einigen Sonderzeichen) ergeben sich circa 10³⁹ Möglichkeiten => sollte vorerst reichen, vor allem wenn man eh Pseudonyme nimmt :)

Gruss
TschiMan
 
Ich sehe das ganze wie Benedikt. Technisch gesehen spricht nichts dagegen Leerzeichen in einem Loginnamen zu erlauben. Außerdem kanns du unerwünschte eingaben wie leerzeichen am Anfang\ende oder mehr wie ein Leerzeichen durch eine solide validierungsmethode verhindern. Wie gesagt, nur weil's etwas nicht gibt muss es nicht schlecht sein. Das ist Innovation.

Sent from my OMNIA7 using Board Express
 
Drupal erlaubt alles an UTF-8 in Accountnamen und die werden auch zum Login verwendet. Scheint also keine größeren Sicherheitsprobleme aufzuwerfen...
 
Zurück
Oben