MVC - Verificar sessão antes de chamar um método

.NET

12/02/2015

Estou desenvolvendo uma aplicação em MVC 5 e tenho uma dúvida referente controle de acesso a páginas do sistema.
Preciso que antes que uma página fosse chamada, verificar a sessão do usuário, caso não possua dados na sessão ou a sessão expirar, gostaria que o sistema direcionasse o usuário para página de login, sem executar o método que chamaria a view, ou seja, realizar todo o controle no construtor da classe de controle.

É possível fazer isso?
Ricardo Vieira

Ricardo Vieira

Curtidas 0

Melhor post

Randrade

Randrade

13/02/2015

Qual a forma de autenticação que está utilizando?
Você está usando o atributo Autorize em seus métodos?
Se sim, basta adicionar isto em seu web.config, que quando a sessão expirar, ele será redirecionado para a página específica.

 <authentication mode="Forms">
      <forms loginUrl="~/Autenticacao/Entrar" timeout="2880" />
    </authentication>
GOSTEI 1

Mais Respostas

Pjava

Pjava

12/02/2015

Creio que sim.

public class minha_classe()
{
  public mminha_classe()
  {
     if(Session["minha_session"] == null)
     {
        Response.Redirect(url, false);
     } 
  }
}


Acho que isso daria certo sim, agora tem que garantir que no momento de instanciar essa classe, já tenha passado login e senha para garantir a carga do usuário na session.
GOSTEI 0
Ricardo Vieira

Ricardo Vieira

12/02/2015

Não funcionou.

Quando chega no "Response.Redirect(url,false)" ele não executa na hora, primeiro ele entra no médoto e depois que ele faz o redirect
GOSTEI 0
Ricardo Vieira

Ricardo Vieira

12/02/2015

Muito obrigado pela ajuda!

Eu pesquisei na internet e vi como implementar a autenticação em MVC, segue os links abaixos:

http://www.linhadecodigo.com.br/artigo/3366/aspnet-mvc-action-filters-handleerror-authorize-e-outputcache.aspx

http://devbrasil.net/profiles/blogs/autentica-o-e-permiss-es-de-usu-rios-em-asp-net-mvc-4?xg_source=activity
GOSTEI 0
POSTAR