7 Stimmen

Wie handhabt man bei OpenID 2 Konten mit demselben Nicknamen?

Wenn ich OpenID als einzige verfügbare Registrierungsmethode anbieten möchte UND etwas Sinnvolles mit dem Spitznamen machen möchte, wie kann ich dann 2 Benutzer mit demselben Jon Smith Spitznamen behandeln?

Als ich mir das URL-Schema von StackOverflow ansah, war ich überrascht, dass die interne Benutzer-ID in der URL verwendet wurde. Zum Beispiel:

https://stackoverflow.com/users/5908/z225rate

Jetzt ist mir klar, dass es wahrscheinlich darum geht, dieses Problem zu vermeiden.

Dies eröffnet aber auch ein heikles Szenario. Was ist, wenn ein Benutzer sich als jemand anderes ausgeben möchte? Sie brauchen nur ein gefälschtes OpenID-Konto zu erstellen, den Benutzernamen zu kopieren und schon kann es losgehen. Natürlich kann man anhand der OpenID-Url feststellen, wer wer ist, aber das wird bei unerfahrenen Nutzern wahrscheinlich zu Verwirrung führen.

Ich hatte daran gedacht, den Nick bei der Registrierung zu überprüfen und den Benutzer zu zwingen, einen anderen zu wählen, falls er bereits in Gebrauch war. Aber dann muss man den neuen Nick behalten und ihn anstelle des in OpenID eingerichteten verwenden. Das ist nicht schön.

Irgendwelche Ideen? "Don't use OpenID" ist keine (gültige) Idee : ) Ich meine, es könnte gut sein, dass ich am Ende nicht verwenden, aber wollen wissen, wie weit würde ich gehen müssen, um es zu machen "richtig" arbeiten.

Danke!

3voto

Cade Roux Punkte 85601

Sie können den Spitznamen aus Open ID verwenden und diesen als Standard für die Auswahl des Spitznamens in Ihrem System festlegen, aber keine Duplikate in Ihrem System zulassen, so dass sie gezwungen sind, einen anderen Spitznamen für Ihr System zu wählen.

Sie können den OpenID-Nick speichern und verwenden. Wenn Sie also möchten, dass die Benutzer ihren bevorzugten OpenID-Nick um jeden Preis anzeigen können, können Sie die Anzeige als "OpenID Nick (Ihr eindeutiger Nick)" erzwingen.

So könnten Sie Mike (mike1), Mike (mike2) usw. für jeden Benutzer haben, der einen Spitznamen bevorzugt, den viele Benutzer wollen. Ich denke, dass dies alle Benutzer davon abhalten würde, einen nicht eindeutigen Nicknamen zu wählen, da sie nicht wollen, dass er auf diese Weise angezeigt wird.

1voto

Scott Markwell Punkte 1095

So etwas wie eine gefälschte OpenID gibt es nicht. Im Grunde genommen ist OpenID eine Zuordnung eines URL-Bereichs zu einem Benutzer, mit ein paar Regeln für die Weitergabe von Daten.

Da es keinen Standard für die Form einer URL für OpenID gibt, wäre es etwas unschön, einfach die vollständige OpenID-URL neben den Namen zu setzen. Was Sie bereits bemerkt haben.

Ihre eigenen internen Daten sollten immer als gültiger angesehen werden als die vom Benutzer übergebenen OpenID-Felder. Lassen Sie den Benutzer einen anderen Namen auswählen, wenn ein Name bereits von einer anderen OpenID beansprucht wird.

1voto

Vineet1982 Punkte 7514

Meiner Meinung nach ist es am besten, einen separaten Ordner für jeden Dienstanbieter zu erstellen, wie z.B. example.com/google/username, dabei gibt es keinen Konflikt zwischen den verschiedenen Anbietern, der Kopfschmerz der Benutzernamen sollte nur von den Dienstanbietern durchgeführt werden, und wenn Sie versuchen, dies zu tun, wird es ein Chaos sein und die anderen Möglichkeiten wie http://stakeoverflow.com macht...

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X