Wie verhindere ich, dass der ReturnUrl-Parameter meiner Login.aspx-Seite die DestinationPageUrl-Eigenschaft meines ASP.NET-Anmeldesteuerelements überschreibt?

StackOverflow https://stackoverflow.com/questions/33166

  •  09-06-2019
  •  | 
  •  

Frage

Ich verwende das ASP.NET-Anmeldekontrollen Und Formularauthentifizierung für Mitgliedschaft/Anmeldeinformationen für eine ASP.NET-Webanwendung.Ich habe Seiten wie PasswordRecovery.aspx auf die nur anonyme Benutzer zugreifen können.Wenn ich auf einer solchen Seite auf meinen Anmeldelink klicke, wird auf der Anmeldeseite ein angezeigt ReturnUrl Parameter in der Adressleiste:

http://www.example.com/Login.aspx?ReturnUrl=PasswordRecovery.aspx

Und nach einer erfolgreichen Anmeldung kehren die Benutzer zum zurück PasswordRecovery.aspx Seite angegeben in der ReturnUrl Parameter, auf den sie keinen Zugriff mehr haben.

War es hilfreich?

Lösung

Ich habe die Antwort auf gefunden Velocity-Bewertungen.Ich habe das LoggedIn-Ereignis verarbeitet, um eine Umleitung zur DestinationPageUrl-Seite zu erzwingen.

Public Partial Class Login
    Inherits System.Web.UI.Page

    Protected Sub Login1_LoggedIn(ByVal sender As Object, _  
            ByVal e As System.EventArgs) Handles Login1.LoggedIn
        'overrides ReturnUrl page parameter
        Response.Redirect(Login1.DestinationPageUrl)
    End Sub

End Class
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top