Como evito que o parâmetro ReturnUrl da minha página Login.aspx substitua a propriedade DestinationPageUrl do meu controle de login ASP.NET?

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

  •  09-06-2019
  •  | 
  •  

Pergunta

estou usando o Controles de login do ASP.NET e Autenticação de formulários para associação/credenciais para um aplicativo da web ASP.NET.Eu tenho páginas como Recuperação de senha.aspx que são acessíveis apenas a usuários anônimos.Quando clico no meu link de login nessa página, a página de login tem um ReturnUrl parâmetro na barra de endereço:

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

E então, após um login bem-sucedido, os usuários retornam ao Recuperação de senha.aspx página especificada no ReturnUrl parâmetro ao qual eles não têm mais acesso.

Foi útil?

Solução

encontrei a resposta em Avaliações de velocidade.Tratei do evento LoggedIn para forçar um redirecionamento para a página DestinationPageUrl.

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
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top