wie Passwort in Django abgerufen werden

8

Wie erhalten wir ein Passwort eines Benutzers?

%Vor%

zeigt sha1$f09711cac8f604d49869e33ca125a76253a02fef64e

an

Gibt es eine Funktion, um das Passwort aus dieser codierten Zeichenfolge zu finden?

    
John 16.05.2012, 15:55
quelle

4 Antworten

18

Nein. Es ist unmöglich, mit Absicht. Aber es sollte niemals nötig sein, es trotzdem zu tun.

    
Daniel Roseman 16.05.2012, 15:57
quelle
7

Aufgrund von Sicherheitseinschränkungen ist die Passwort-Hash-Methode eine Möglichkeit. Sie müssen das Benutzerkennwort zurücksetzen.

Versuchen Sie, die Methode set_password(raw_password) zu verwenden, um dem Benutzer ein neues Passwort zu geben. Denken Sie daran, die Methode save() aufzurufen, um sicherzustellen, dass Sie die Änderung in der Datenbank speichern.

%Vor%     
Kristian Roebuck 16.05.2012 15:58
quelle
2

nein. und das sollte nicht sein. Als Teil der Sicherheit werden Kennwörter vor dem Speichern über eine Einwegfunktion weitergegeben, sodass sie nicht manipuliert werden, wenn die Datenbank kompromittiert ist.

Was Sie tun können, ist ersetzen das Passwort des Benutzers mit einer, die Sie kennen. So funktioniert die (gute) Site "Passwort vergessen" -Funktionen: Sie senden Ihnen ein neues zufälliges Passwort, nicht Ihr altes, da sie (sollten) nicht darauf zugreifen können

    
second 16.05.2012 15:57
quelle
2

Nein, das Feld enthält den gesalzenen Hash des Passworts. Von der Zeichenfolge wissen wir, dass es SHA1-Funktion ist. Wenn Sie das Passwort haben, können Sie denselben Hash-Wert erzeugen, der als Footprint fungiert. Aus Sicherheitsgründen sollte es jetzt möglich sein, das Passwort in einer wirtschaftlichen Weise wiederherzustellen (Sie können immer noch Gewalt anwenden, aber es wird lange dauern).,

    
Daniel Baktiar 16.05.2012 16:01
quelle

Tags und Links