Die ASP.Net-Mitgliedschaft speichert das geänderte Kennwort auch dann als Nur-Text, wenn Hashed passwordFormat festgelegt 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 Datenbank im Hash-Format mit einem Salt gespeichert - was alles in Ordnung ist. Wenn ich jedoch Membership.ChangePassword in einer Administratorfunktion aufrufe, wird das Kennwort im Nur-Text-Format gespeichert. Ich kann dieses Verhalten wirklich nicht verstehen, da in der Konfiguration eindeutig "Hashed" steht und beim Erstellen eines neuen Benutzers ein Hash-Passwort erstellt wird.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage