Frage:
Der sicherste Weg, mit jemandem umzugehen, der vergessen hat, sein Konto zu verifizieren?
Ole
2019-07-18 21:08:29 UTC
view on stackexchange narkive permalink

Angenommen, wir senden eine E-Mail-Bestätigung an neue Abonnenten, bei der sie auf einen Link klicken müssen, um ihr Konto zu überprüfen.

Angenommen, sie vergessen, dies zu überprüfen, und versuchen später, sich anzumelden.

Sollte die Fehlermeldung "Ihr Benutzername oder Passwort ist falsch?" lauten, anstatt sie wissen zu lassen, dass sie vergessen haben, das Konto zu verifizieren.

Ich gehe davon aus, dass dies die sicherste Art der Behandlung ist Wenn wir ihnen mitteilen, dass sie das Konto überprüfen müssen, teilen wir ihnen mit, dass ein Konto mit dieser Benutzer-ID vorhanden ist ...

Gedanken?

Vielleicht der beste Weg Um damit fertig zu werden, müssen sie auf das Konto zugreifen können, aber sie dürfen nichts tun, bis sie überprüft wurden?

Sie haben ihre E-Mail.Sie könnten sie erneut per E-Mail senden.
Weil 2 E-Mails im Meer von 1000 ungelesenen E-Mails / Spam-Ordnern die Nachricht vermitteln.
@Aron Ich glaube nicht, dass es gültig ist anzunehmen, dass der Posteingang einer durchschnittlichen Person so überfüllt ist, dass E-Mails keine effektive Möglichkeit mehr sind, mit ihnen zu kommunizieren, insbesondere wenn sie aufgefordert werden, einem Bestätigungslink zu folgen (oder einen anzufordern).E-Mail dient einem Zweck und Missmanagement eines Posteingangs ist ein Benutzerfehler.
@0xdd Was ist mit der Spam-Box?E-Mail ist nicht zuverlässig.
Bei Spam können Sie entweder Maßnahmen ergreifen, um zu verhindern, dass Clients Sie als Spam erkennen (klare, gut formulierte E-Mails helfen ebenso wie SPF und DKIM in Ihrer Domain), oder Sie können den Benutzer bitten, ihren Spam-Ordner zu überprüfen.Viele Dienste tun dies bereits.E-Mail ist massiv zuverlässig.
Erlauben Sie ihnen einfach, sich anzumelden und ihnen einen nicht überspringbaren Bildschirm mit der Aufschrift "Bitte überprüfen Sie Ihr Konto, indem Sie auf den Link in der E-Mail klicken, die wir am XYZ-Datum gesendet haben. Wenn Sie diese E-Mail nicht haben, klicken Sie hier, um sie erneut zu senden."
Amazon Cognito erlaubt nicht verifizierten Konten, sich anzumelden ... Gedanken?
Ich denke, wir können nur eine E-Mail senden, wenn ein nicht verifiziertes Konto versucht, sich anzumelden und den Benutzer zu benachrichtigen, dass er seine E-Mails abrufen soll, aber wir werden ihm nicht mitteilen, ob sein Konto existiert oder nicht.In diesem Fall enthält die E-Mail den Bestätigungslink.
Sechs antworten:
Buffalo5ix
2019-07-18 21:29:12 UTC
view on stackexchange narkive permalink

Was ich am häufigsten sehe, ist, die Authentifizierung zuzulassen und den Benutzer anzumelden, aber sinnvolle Funktionen zu sperren, bis die E-Mail verifiziert ist. Sie sollten einen Fehler anzeigen, der den Benutzer daran erinnert, eine Aktivierungs-E-Mail erneut zu senden, wenn er versucht, auf eine der eingeschränkten Funktionen zuzugreifen.

Es ist ein schlechtes Design, einen Benutzer jemals anzulügen. Wenn er den richtigen Benutzernamen und das richtige Passwort übermittelt, sollte niemals ein Fehler angezeigt werden, der behauptet, dass einer der beiden falsch ist.

Ich würde einen ganzseitigen Nörgelbildschirm einfügen, der ihn auffordert, zuerst das Konto zu aktivieren, und eine Schaltfläche, um die Aktivierungs-E-Mail zu bestätigen und erneut zu senden.
Es kann jedoch sinnvoll sein, Konten zu löschen, die längere Zeit nicht aktiviert wurden, und dann ist der Fehler "Benutzername ist falsch" korrekt.
@ThoriumBR Es kommt darauf an, welcher Service angeboten wird.Ich habe eine Reihe von Diensten gesehen / mich angemeldet, bei denen es durchaus sinnvoll ist, eine bestimmte Nutzungsstufe zuzulassen, bevor eine E-Mail-Adresse bestätigt / authentifiziert wird.In solchen Fällen kann ein ganzseitiger Nörgelbildschirm OTT sein.
Andrew Morozko
2019-07-19 03:11:33 UTC
view on stackexchange narkive permalink

Ich stimme Buffalo5ix zu, aber die E-Mail-Überprüfung sollte nicht als Teil der Kontosicherheit betrachtet werden. E-Mail-Überprüfung:

  • beweist den Besitz der Adresse, nur um zu wissen, dass der Benutzer die richtige Adresse eingegeben hat, damit Sie Spam strike> Passwort-Wiederherstellungs-E-Mails senden können.
  • dient als sehr leichte Abschreckung für die Registrierung mehrerer gefälschter Konten. Es ist ziemlich einfach, die Erstellung von E-Mail-Adressen zu automatisieren (mithilfe von tempmail / Hosting Ihres eigenen E-Mail-Servers) und automatisch auf die Validierungslinks zu klicken, sodass CAPTCHA ein besseres System zum Schutz vor der automatisierten Registrierung gefälschter Konten darstellt.

Ich kann keinen sicherheitsrelevanten Grund erkennen, warum Sie die nicht verifizierten Konten in irgendeiner Weise sperren sollten. [ERKLÄRUNG: Ich bin nicht der Meinung, dass Sie Nachrichten an nicht verifizierte E-Mail-Konten senden sollten. Dies wäre zumindest Spam und würde im schlimmsten Fall einer zufälligen Person die Möglichkeit geben, das Kontokennwort zurückzusetzen, wenn der Benutzer seine E-Mail-Adresse falsch eingegeben hat. Ich sage, dass die Kontoanmeldung nicht deaktiviert werden sollte, das Senden von E-Mails an eine nicht bestätigte Adresse sollte dies offensichtlich sein.]

Ich bevorzuge das kleine Banner Der obere Bildschirmrand erinnert mich daran, das Konto zu verifizieren, und fordert Sie auf, die Bestätigungs-E-Mail erneut zu senden. Es ist nicht höflich, Benutzer wie verdächtige Kriminelle zu behandeln oder sie direkt nach der Registrierung zu nerven.

Es kann triftige Gründe geben, das nicht verifizierte Konto zu sperren, wenn die Überprüfung dazu beiträgt, den Missbrauch von Ressourcen zu verhindern.Wenn die Anwendung beispielsweise E-Mails sendet und die Verwendung ohne Konto zulässt, wird der Dienst als Relay zum Senden von Spam geöffnet: Ich kann ein Konto unter Ihrer E-Mail-Adresse registrieren und dann über den Dienst unerwünschte E-Mails senden.Die Verhinderung dieses Missbrauchs ist im Großen und Ganzen sicherheitsrelevant.Wenn E-Mail dem Hauptzweck des Dienstes untergeordnet ist, gibt es möglicherweise weniger drakonische Möglichkeiten, dies zu erreichen, z. B. die Verwendung des Kontos zuzulassen, aber nur die E-Mail-Funktionen zu sperren.
@ZachLipton Ich stimme zu, aber ich spreche speziell über die Sicherheit von * Konten *.Natürlich ist eine Überprüfung der E-Mail-Adresse erforderlich, bevor E-Mails dorthin gesendet werden, aber ich sehe keinen Grund, die Möglichkeit, sich anzumelden, mit der Möglichkeit zu verknüpfen, E-Mails zu senden.Es sei denn, Sie sind E-Mail-Anbieter;)
Die E-Mail-Überprüfung verhindert auch, dass sich jemand anderes mit Ihrer E-Mail anmeldet und Sie am Ende alle Spam-Mails erhalten.
@Qwertie Ja, das weiß ich.Hast du meinen ersten Stichpunkt gesehen?
`Ich kann keinen sicherheitsrelevanten Grund erkennen, warum Sie die nicht verifizierten Konten in irgendeiner Weise sperren sollten.`Wenn Sie es nicht tun, kann ich Hunderte von Konten für gefälschte E-Mail-Adressen erstellen.Natürlich könnte ich immer noch echte E-Mail-Adressen erstellen, wenn ich jedes Konto per E-Mail validieren müsste.Das Entfernen der Validierung macht es viel einfacher, nur falsche Konten zu erstellen, ohne dass dies Auswirkungen hat.Ich könnte auf Diskussionsseiten effektiv nicht bannbar sein, da ich ständig ein neues Konto eröffnen kann, ohne eine neue (echte) E-Mail-Adresse zu benötigen.
@Flater Ich kann Hunderte von Konten mit echten, verifizierten E-Mail-Adressen erstellen.Das Hosten Ihres eigenen E-Mail-Servers dauert etwa 30 Minuten und kostet 5 US-Dollar.Captcha würde diese Aufgabe viel mehr Tiering machen, eine Ratenbegrenzung durch IP würde dies viel teurer machen.
@AndrewMorozko: Es dauert 30 Minuten Ihrer Zeit.Es würde mich wesentlich mehr brauchen.Ich behaupte nicht, dass es unmöglich ist, echte Konten zu erstellen.Ich sage, dass die fehlende Überprüfung den Schwellenwert erheblich senkt, sodass Personen, denen diese Fähigkeit fehlt, nach Herzenslust immer noch Spam-Konten erstellen können.
@Flater Docker ist ziemlich einfach und es gibt fertige E-Mail-Stapel.Und selbst wenn es ungelernte Leute gibt, die mehrere gefälschte Konten erstellen, warum sollte es mich interessieren?Ein Konto ist nur eine Zeile in einer Datenbank.Wenn ich einen Messenger oder ein Forum erstelle, muss ich die Telefonnummer überprüfen oder ein Karma-System a-la-StackOverflow verwenden, um die Privatsphäre der Benutzer zu schützen und Spam zu begrenzen.Wenn ich einen Dienst anbiete, sollte ich von den Nutzern profitieren, die ihn nutzen.Wenn ich es nicht bin, ist es ein schlechter Service oder ich sollte strengere Grenzen setzen.Die Verwendung von E-Mail zur Identitätsprüfung entspricht der Verwendung von rot13 zur IMO-Verschlüsselung
@Flater kehrt jedoch zu meinem ursprünglichen Punkt zurück: Das Erstellen eines neuen Kontos sollte die ** Sicherheit ** Ihrer Anwendung im Allgemeinen oder anderer Konten unabhängig vom E-Mail-Bestätigungsstatus nicht beeinträchtigen.
@AndrewMorozko: Bei der Frage ging es nie um eine Überprüfung aus Sicherheitsgründen, sondern darum, wie eine Überprüfung sicher durchgeführt werden kann (d. H. Ohne die Sicherheit der Website zu beeinträchtigen).Das Hauptanliegen von OP ist, dass das Auflisten einer Nachricht, aus der hervorgeht, dass die Überprüfung aussteht, von Natur aus anzeigt, dass diese E-Mail-Adresse über ein Konto auf der Website verfügt.
@Flater Ich habe die Frage möglicherweise falsch verstanden, aber "Angenommen, sie vergessen, sie zu überprüfen und später zu versuchen, sich anzumelden" und "Vielleicht ist der beste Weg, damit umzugehen, ihnen den Zugriff auf das Konto zu ermöglichen", lassen Sie mich denken, dass wir darüber sprechenEine Situation, in der ein nicht verifizierter Benutzer bereits das richtige Login / Passwort eingegeben hat und OP fragt, ob das zu verifizierende Konto eine Voraussetzung a) für die erfolgreiche Authentifizierung (dh Teil der Kontosicherheit) oder b) für den Zugriff auf Funktionen des Dienstes (dh Identität) sein sollteÜberprüfung zur Missbrauchsprävention).
@AndrewMorozko: Die Tatsache, dass eine Überprüfung erforderlich ist, ist selbstverständlich (gemäß dem ersten Absatz).Wie ein Benutzer (wiederholt) zur Überprüfung aufgefordert wird (und dies ohne Beeinträchtigung der Sicherheit), ist die eigentliche Frage.Rahmenherausforderungen (die Ihre Antwort zu sein versucht) sind im Allgemeinen gültige Antworten, aber Sie können diese Frage nicht wirklich rahmen, ohne die Gründe zu kennen, aus denen die Überprüfung überhaupt erforderlich ist.
@Flater Und ich plädiere nicht dafür, dass OP die E-Mail-Überprüfung insgesamt deaktiviert.Ich sage nur, dass es "nicht als Teil der Kontosicherheit betrachtet werden sollte" (daher sollte es beim Authentifizierungsprozess keine Rolle spielen und die Anzeige "Ihr Benutzername oder Passwort ist falsch", wenn Benutzername und Passwort korrekt verletzt wurden)nach diesem Prinzip) und weist darauf hin, dass es einige Schwachstellen bei der Überprüfung der Identität / Missbrauchsprävention aufweist.
Ich stimme dem "Bitte haben Sie ein Captcha für die Anmeldung."Schauen Sie sich [dies] (https://webmasters.stackexchange.com/a/115694/89735) an, was passieren kann, wenn Sie dies nicht tun.
Ben
2019-07-19 09:48:18 UTC
view on stackexchange narkive permalink

Sie möchten nicht die Information verlieren, dass der Benutzername als Reaktion auf einen nicht authentifizierten Anmeldeversuch vorhanden ist. Auf diese Weise können Angreifer feststellen, welche der E-Mail-Adressen in ihrer Liste bei Ihrem Dienst vorhanden sind.

Wenn sich der Benutzer jedoch mit dem Kennwort anmeldet, das er bei der Registrierung angegeben hat, ist dies nicht die Situation, in der Sie sich befinden. Sie wissen (so viel wie nie zuvor mit Passwörtern), dass die Person, die sich anmeldet, dieselbe Person ist, die dieses Passwort registriert hat. Es schadet also nicht, ihnen mitzuteilen, dass ihr Benutzername existiert. Sie wissen das, seit sie es registriert haben!

Was Sie nicht wissen, ist, dass diese Person tatsächlich die E-Mail-Adresse kontrolliert, die Sie für sie haben. Dies hängt eigentlich nicht mit der Überprüfung der Identität der Person zusammen, die sich mit einem Kennwort anmeldet. Möglicherweise möchten Sie es als alternatives Mittel zum Nachweis ihrer Identität verwenden (damit sie sich von dem Verlust ihres Passworts erholen können). Wenn Sie ihre E-Mail-Adresse nicht überprüft haben, können Sie dies nicht sicher tun (da Sie nicht wissen, dass die registrierte Person diese E-Mail-Adresse kontrolliert), sodass die Kontrolle über ihr eigenes Konto nicht sicher eingerichtet ist. Dies bedeutet jedoch nicht, dass Sie mehr als normal Grund haben, daran zu zweifeln, dass das Kennwort bewiesen hat, wer sie waren, und sie als nicht authentifizierten Benutzer zu behandeln.

Wenn Sie entscheiden, dass es wichtig ist, Benutzern die Anmeldung nicht zu erlauben Wenn Sie die Identität der Person, mit der Sie kommunizieren, ermittelt haben, sollten Sie ihnen einfach mitteilen, dass das Problem vorliegt, und sie das Problem beheben lassen.

Der erste Absatz gilt nur, wenn es keine öffentliche Möglichkeit gibt, sich beim Dienst zu registrieren, oder wenn mehrere Konten dieselbe E-Mail verwenden können.
taswyn
2019-07-19 09:49:06 UTC
view on stackexchange narkive permalink

Ich möchte auf etwas hinweisen, das möglicherweise übersehen wird.

Sollte die Fehlermeldung "Ihr Benutzername oder Passwort ist falsch?" lauten, anstatt sie darüber zu informieren Ich habe angenommen, dass dies die sicherste Methode ist, um das Konto zu überprüfen. Wenn wir ihnen mitteilen, dass sie das Konto überprüfen müssen, teilen wir ihnen mit, dass ein Konto mit dieser Benutzer-ID vorhanden ist ...

Wenn sie ihre Authentifizierungsinformationen eingeben müssen, können Sie sie dennoch darüber informieren, dass sie ihr Konto überprüfen müssen, um Zugriff darauf zu erhalten ... solange Sie nur Senden Sie diese Nachricht, wenn die Authentifizierung korrekt ist. Auf diese Weise verlieren Sie keine Informationen, da sie ein gültiges Kennwort eingeben müssten, um zu dieser Nachricht über ein bestimmtes Konto zu gelangen. Zu diesem Zeitpunkt wären sie sonst ohnehin im Konto.

Wenn Sie haben wirklich das Gefühl, dass ein nicht verifiziertes Konto bis zur Verifizierung gesperrt werden sollte. Dies ist eine sehr gute Möglichkeit, damit umzugehen (geben Sie auch die Option, die Verifizierungs-E-Mail für diesen Bildschirm erneut zu senden, da bei Spam / etc Dinge verloren gehen).

Bob
2019-07-19 09:14:17 UTC
view on stackexchange narkive permalink

Beachten Sie, dass sich möglicherweise jemand mit einer E-Mail-Adresse registriert hat, die ihm nicht gehört. Wenn Sie wissen, dass E-Mails erforderlich sind, sollten Sie entweder:

  • Konten automatisch löschen, die nach X Tagen nicht überprüft wurden. Oder, besser, erstellen Sie niemals vollständige Konten und setzen Sie sie stattdessen in eine ausstehende Liste, bis die Überprüfung abgeschlossen ist (und lassen Sie mehrere Einträge derselben Adresse in diese Liste ein). Sie sollten diese automatische Löschung im E-Mail-Text und auch auf der Anmeldeseite vermerken.

  • Wenn Sie Konten nicht automatisch löschen, sollten Sie eine Möglichkeit dafür angeben der legitime E-Mail-Eigentümer, um später ein eigenes Konto zu erstellen (an diesem Punkt sollten Sie das frühere Konto erneut ungültig machen / löschen).

Natürlich sollten Sie keines zulassen Zugriff auf alles, bis die E-Mail bestätigt wird. Und Sie sollten niemals weitere E-Mails (einschließlich Marketing usw.) an die Adresse senden, bis diese überprüft wurde.

Wenn E-Mail für den Dienst optional ist, geben Sie dies ausdrücklich an und ziehen Sie an Machen Sie E-Mails überhaupt nicht zu einem Pflichtfeld. In diesem Fall können Sie, wenn jemand eine E-Mail eingibt, diese jedoch nie überprüft, ohne E-Mail-bezogene Funktionen fortfahren. Stellen Sie jedoch erneut sicher, dass dieselbe E-Mail-Adresse später vom rechtmäßigen Eigentümer wiederverwendet werden kann.


Ich kann gar nicht genug betonen, wie unglaublich frustrierend es sein kann, wenn jemand anderes ein Konto mit Ihrer E-Mail-Adresse registriert, sodass Sie kein eigenes Konto für den Dienst registrieren können, da diese E-Mail-Adresse in der Datenbank eindeutig ist und "beansprucht" wurde. durch das andere Konto. Selbst wenn der E-Mail-Besitzer das Passwort des Kontos leicht zurücksetzen kann, hilft dies nicht, dass das Konto von einer anderen Person personalisiert wurde. Bringen Sie Benutzer nicht in diese Position.

Solomon Ucko
2019-07-19 21:25:26 UTC
view on stackexchange narkive permalink

Angenommen, Sie haben ein Anmeldeformular, das keine doppelten Benutzernamen zulässt, ist es trivial zu überprüfen, ob der Benutzername vorhanden ist.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...