2017-02-06 6 views
1

Wie erhalten Sie in einer C# MVC-Anwendung, die die OAuth-Anmeldemethode verwendet, das entschlüsselte Kennwort für den aktuell angemeldeten Benutzer?Aktuellen Benutzernamen und Kennwort von OAuth abrufen

Ich weiß

User.Identity.GetUserName()

Ruft den Benutzernamen, aber in der Tabelle AspNetUseres ist eine PasswordHash Spalte mit dem Hash-Passwort, und ich möchte in der Lage sein Abrufen und entschlüsseln Sie es bei Bedarf in der App. Ich kann die Hash-Zeichenfolge in Ordnung, aber nicht sicher, wie Sie es in Text konvertieren ...

+0

Lesen Sie diese: http://plaintextoffenders.com/faq/devs –

Antwort

1

Sie können nicht. Der eigentliche Sinn des Hashings besteht darin, Daten so zu verschleiern, dass Sie sie verifizieren können, aber nicht den tatsächlichen Wert sehen können.

Um Werte verschlüsseln/entschlüsseln zu können, müssen Sie eine Kennwortverschlüsselung einrichten, nicht Hashing.

Aber Sie sollten Benutzerkennwörter sowieso nicht entschlüsseln. Wenn Sie warum erwähnen möchten Sie das Passwort, vielleicht könnte jemand hier eine alternative Möglichkeit vorschlagen, was Sie wollen.

+1

Hallo Jay, ich wollte den Benutzernamen und das Passwort des Benutzers verwenden, um eine T-SQL-Anmeldung für ihre Datenbank zu erstellen, und sie auch als Login verwenden in einer Verbindungszeichenfolge. – RobboLew

+0

@RobboLew: Sie wollen das wirklich nicht, überdenken Sie Ihren Ansatz, um für jeden Benutzer, der sich in Ihre App einloggt, keine zusätzliche SQL-Anmeldung zu benötigen. Ich denke kaum an ein realistisches Szenario, in dem dies nicht vermieden werden konnte. –

Verwandte Themen