2009-06-12 5 views
0

Ich arbeite gerade an der Internationalisierung eines Produktes und ein Problem ist aufgetaucht. Das Problem dreht sich um die Anforderungen an die Passwortkomplexität für Länder mit nicht-lateinischen Sprachen und komplexen Zeichensätzen.i18n - Internationalisierung & Password Complexity Rules

Die Anwendung verwendet Aspnet-Mitgliedschaft für die Benutzer- und Kennwortverwaltung, obwohl dies ein ganz anderes Problem sein könnte. Gegenwärtig verfügt unsere Anwendung über Einstellungen und Code für A-Z, 0-9 und Sonderzeichen, die Passwörter bilden, aber diese werden wahrscheinlich eine Erweiterung benötigen, um mit anderen Kulturen fertig zu werden.

Ich habe auf dieser Suche nach Anleitung und Best Practice gesucht und hatte bisher nicht viel Freude. Die last post on this SO question berührt das Problem, bietet aber keine Anleitung.

Antwort

0

Nach der Kontaktaufnahme mit technischem Personal in einem Zweig unseres Unternehmens im Ausland in China, haben wir festgestellt, dass für den Großteil der Systeme, die Logins benötigen, sie sich an den Standard-ASCII-Zeichensatz für Benutzernamen und Passwörter halten diese Gründe.

Chinesische Tastaturen haben in der Regel die QWERTY-Funktion neben chinesischen Zeichen und Benutzer können einfach zwischen chinesischen und ASCII-Eingabemethoden wechseln, um sich bei Systemen anzumelden. Vorerst verlassen wir unser System so, wie es ist, und überwachen zusätzliche Kulturen, wenn sie hinzugefügt werden, und behandeln eventuell auftretende Spezialfälle.

Mehr Informationen über chinesische Eingabemethoden können auf Wikipedia - Chinese input methods for computers

0

Hängt davon ab, was Sie erzwingen möchten. Wörterbuch-Checks und Mustererkennung sollten in jeder Codierung und Sprache funktionieren. Wenn Sie die populären, aber willkürlichen Regeln "Mischung aus Großbuchstaben, Kleinbuchstaben und Ziffern" erzwingen wollen, dann müssen Sie wahrscheinlich A) eine Bibliothek oder API finden, die Groß- und Kleinschreibung für jede Sprache bestimmen kann oder B) dumm erstellen große Datenbank, um diese Informationen selbst zuzuordnen.

Diese Art von Komplexitätsregeln ist jedoch ein Hack. Dumm Leute werden dumme Passwörter erstellen, egal welche Art von Komplexitätsregeln du willkürlich durchsetzst. Bewährte Verfahren für die Passwortsicherheit stellen sicher, dass der Benutzer ein Passwort wählen muss, das nicht ganz so wahrscheinlich ist, wie es sein könnte. Daher wird das Wörterbuch überprüft (vergessen Sie nicht, alle Wörter auf der Passwort-Erstellungsseite und alle Wörter für das Passwort hinzuzufügen) Ein Eintrag, die Anwendung oder ihre Umgebung, sowie alle verfügbaren benutzerspezifischen Informationen, zB Geburtsdatum und Mädchenname, und Mustererkennung (abc123) sollten ausreichen.

Ich habe tatsächlich viele Fälle gesehen, in denen "abc123.-" oder etwas Ähnliches als Root-Passwörter verwendet wurden, weil niemand mit einem richtigen Passwort kommen konnte, das die Komplexitätskriterien erfüllte.

+0

Ja zu sehen, ich bin afriad i-ten abitrary Regeln sind mit, geerbt von einem Legacy-System, das mindestens einen Buchstaben, Zahl und Sonderzeichen erfordern. – Tanner

1

Viel hängt davon ab, wie sicher der Zugriff sein muss. Für hohe Sicherheit ist ein Passwort-Ansatz nicht wirklich praktisch, und eine Art biometrischer (Fingerabdruck?) Oder zwei-Faktor (SKey?) Ansatz könnte besser sein, besonders wenn er mit einer numerischen PIN kombiniert wird.

Dies ist, weil es nicht wirklich praktisch ist, Wörterbuch oder Komplexitätsanalyse auf nicht-westlichen Sprache Passwörter durchzuführen. Im Einzelnen:

  • Viele Sprachen unterscheiden nicht zwischen Groß- und Klein
  • Einige Sprachen Zeichen in zwei, drei oder vier Bytes
  • Es gibt keinen Grund in Passwörtern einzuführen numerische oder Interpunktionszeichen kodieren für Kulturen mit einer großen Anzahl von Ideogrammen (wie vereinfachtes Chinesisch)
  • pflegen Wörterbücher für eine große Anzahl von Sprachen können

für einfache Web unpraktisch Es kann ratsam sein, das Passwort genauer zu prüfen, wenn Sie eine nicht-westliche Sprachversion Ihrer Website an den Browser übermitteln.

+0

Das System muss den Benutzernamen/Passwort-Sicherheitsansatz beibehalten, wir haben keinen Spielraum, um eine neue Methode zu implementieren. Ich kann die Unterschiede zwischen den Lannaguages ​​und den Character-Sets nachvollziehen, bin mir aber immer noch nicht sicher, ob es sich um Systeme handelt, die mit Passwort-Komplexitätsregeln passwortgeschützt sind. Vielen Dank – Tanner