4 Stimmen

ASP.Net-Mitgliedschaft speichert geändertes Passwort als Klartext, auch wenn Hashed passwordFormat eingestellt ist

Ich verwende den ASP.Net SqlMembershipProvider, um meine Benutzer zu verwalten. Hier ist meine Konfiguration:

<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15">
            <providers>
                <clear />
                <add
                    name="SqlProvider"
                    type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
                    connectionStringName="SiteDatabase"
                    applicationName="WPR"
                    minRequiredPasswordLength="6"
                    minRequiredNonalphanumericCharacters="0"
                    enablePasswordRetrieval="false"
                    enablePasswordReset="true"
                    requiresQuestionAndAnswer="false"
                    requiresUniqueEmail="true"
                    passwordFormat="Hashed" />
            </providers>
        </membership>

Mein Problem ist folgendes: Wenn ich Membership.CreateUser aufrufe, um neue Benutzer zu erstellen, wird das Kennwort in der DB im Hash-Format mit einem Salz gespeichert - das ist alles gut. Wenn ich jedoch Membership.ChangePassword in einer Admin-Funktion aufrufe, wird das Kennwort im Klartextformat gespeichert. Ich kann dieses Verhalten wirklich nicht verstehen, da in der Konfiguration eindeutig "Hash" steht und beim Anlegen eines neuen Benutzers ein Hash-Passwort erstellt wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X