2010-01-19 9 views
7

Ich überlege, die folgenden Regeln für eine Casual-Website zu verwenden.Passwort-Regel für eine Casual-Website

  • 8-20 Zeichen lang
  • gültige Zeichen sind Buchstaben, Ziffern und Symbole
  • case sensitive

das ist alles. Meine Frage ist, neben weißem Raum, gibt es andere Symbole, die ich als "illegal" betrachten sollte? Bitte beachten Sie, dass es sich um eine legere Website handelt, so dass ich keine sehr eingeschränkten Passwortrichtlinien brauche.

Danke,

+1

OpenID! (Etwas wie es wird eines Tages den Mainstream treffen.) –

Antwort

7

Sie sollten Ihre Benutzer haben lassen, was sie wollen Passwort. Vielleicht eine Mindestlänge erzwingen, aber sonst nichts. Sie bereinigen dies, bevor es Ihre Datenbank überhaupt trifft, richtig?

+0

Danke, was du beschrieben hast macht jetzt Sinn für mich. Ja, ich werde alle Anforderungen außer den Einschränkungen für die Länge entfernen. Und ja, ich werde alle Eingaben vor der Speicherung in der Datenbank bereinigen. – sean717

+0

+1 für die Bereinigung –

+3

Wie RCC feststellt, sollten Sie das Passwort nicht selbst speichern. Hash es zuerst. –

2

Warum möchten Sie illegale Charaktere? Solange es keine Teile Ihres Systems bricht (was es nicht tun sollte), gibt es keinen wirklichen Grund, es abzulehnen.

0

Ich würde von der anderen Seite gehen: ungültige Zeichen nicht zurückweisen (Sie können vergessen, einige abzulehnen) - überprüfen Sie stattdessen, dass jedes Zeichen ein erlaubtes Zeichen ist.

17

Hoffentlich sind Sie nicht speichern Passwörter in Ihrer Datenbank. Sie sollten den Hash des Passworts nur speichern.

Also, wenn Sie einen Hash aus dem Passwort erstellen, warum haben keine illegale Zeichen?

Möglicherweise möchten Sie eine minimale Kennwortlänge erzwingen, nur für ihren eigenen Schutz.

Auch wenn Sie tun beschränken Zeichen, warum würden Sie weißen Raum ein illegales Zeichen betrachten? Viele Benutzer erstellen "Pass-Phrasen", um ihre Passwörter zu sichern.

+0

IMO, jede Seite sollte Passwörter wie Diamanten behandeln. Sie wissen nie, wann ein Benutzer sein Bankpasswort für eine "zufällige" Website verwendet und Ihre Website wird so geöffnet. Sei ein guter Bürger und erkenne, indem du nach einem Passwort fragst, nach Vertrauen. –

+0

danke, die maximale Passwortlänge wird ebenfalls entfernt. Die einzige Einschränkung für das Passwort ist "mindestens 8 Zeichen lang" – sean717

+1

@Jim Leonardo ... und die Art, dies zu erreichen, ist, * nie * ein Passwort in Ihrer Datenbank zu speichern. Keine Verschlüsselung, keine Lock-and-Key-Vertrauensstellung. Hashes ** nur **. –

2

Warum möchten Sie Kennwörter auf 20 Zeichen beschränken? Ein Minimum ermutigt die Benutzer, schwer zu erratende Phrasen auszuwählen, aber warum sollte es begrenzt werden?

Das gleiche gilt für die Begrenzung der Zeichen, die verwendet werden können. Warum beschränken Sie es überhaupt?

Trotz Ihrer Website casual ist es eine schlechte Praxis, Passwörter im Klartext zu speichern. Zumindest verketten Sie etwas Salz (wie den Benutzernamen und eine konstante Zeichenfolge für Ihre Site) und speichern Sie den SHA-1-Hash davon. Da Benutzer dazu neigen, an mehreren Standorten dieselben Kennwörter zu verwenden, bietet dies einen guten Schutz vor Cross-Site-Hacking, falls die Kennwörter Ihrer Website entführt werden.

1

Wie wäre es mit dem Verlassen des Passwort-Geschäftes und der Verwendung von Open ID wie SO verwendet?

+0

Bitte ermutigen Sie OpenID nicht. Ignoriere sie, bis sie weggehen, und mit etwas Glück wird sie durch etwas Nützliches ersetzt. –

+7

Bitte ermutigen Sie OpenID. Hoffentlich werden sie bemerkt und wir werden einen Wettbewerb haben, um ein besseres und weiter verbreitetes System zu schaffen. –

1

Die meisten Websites benötigen entweder 6 oder mehr Zeichen oder haben keine Mindestanzahl. Während 6 ist nicht sehr sicher, es ist wahrscheinlich nicht so wichtig, da es eine Casual-Website ist. Sie sollten Passwörter so kurz wie 6 Zeichen zulassen, um die Benutzer zufriedener zu machen, wenn sie kürzere Passwörter wünschen.

Ich sehe keinen Grund, bestimmte Zeichen zu verbieten. Viele Websites erlauben nur alphanumerische Zeichen, aber ich weiß nicht warum. Stellen Sie nur sicher, dass die Zeichen den Quellcode der Website nicht stören, und Sie sollten in Ordnung sein.

0

Tun Sie das nicht. 8 Zeichen sind viel zu lang für eine zwanglose Seite, und die Benutzer sind unbeständig. Jede Anforderung, die Sie an die Komplexität des Kennworts stellen, wird Ihre Benutzer verlieren.

Wenn Sie keine Bank sind, sollten Sie keine Passwort-Komplexität erzwingen. Wenn ein Benutzer den Buchstaben "a" als sein Passwort haben möchte, lassen Sie ihn es tun. Wenn er feststellt, dass eine bösartige Entität URLs in seinem Namen (oder was auch immer Ihre Site tut) verkürzt, kann er damit umgehen und möglicherweise eine gute Lektion lernen.

Die wichtige Sache zu erinnern ist, dass es nicht dein Problem ist, und du kannst Leute nur pissen, indem du Komplexität erzwingst.

+0

Es wird zu Ihrem Problem, wenn Ihre Reputation verschmutzt ist, weil Hacker Zugriff auf die Passwörter Ihres Benutzers erhalten haben. – keyboardP