Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
711
Assunto : ASP.NET
Titulo: Controle a expiração do cookie de autenticação

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



O mecanismo de forms authentication utilizado pelo ASP.NET para realizar a autenticação do usuário utiliza-se de cookies para manter o ticket de autenticação do usuário.

Uma das opções no processo de autenticação é de manter o cookie de forma permanente, para que o usuário não precise mais se logar ao acessar o site.

Mas todo cookie tem obrigatoriamente que ter uma data de expiração. Qual a expiração do cookie permanente criado pelo ASP.NET ?

Eis a resposta : 50 anos. O cookie expira em 50 anos. O problema é que 50 anos é muito, gerando uma brecha de segurança. Alguém poderia capturar este cookie na máquina do usuário e acessar o site com identidade falsa. Então é importante que tenhamos o controle do tempo de expiração deste cookie, para reduzirmos esta possibilidade.

Para termos o controle da expiração deste cookie devemos evitar o redirectfromloginpage e utilizarmos um código como o abaixo :

Dim cookie As HttpCookie
cookie = FormsAuthentication.GetAuthCookie(User, isPersistent)
If (isPersistent) Then
cookie.Expires = DateTime.Now.AddDays(10)
End If


Response.Cookies.Add(cookie)

Dim targetUrl As String

targetUrl = FormsAuthentication.GetRedirectUrl(User, isPersistent)
Response.Redirect(targetUrl)


Neste exemplo verifica-se se o cookie é persistente e, se for, define-se a expiração do cookie como 10 dias.

Pode-se ainda programar o global.asax para aumentar a validade do cookie quando necessário, apenas deixando expirar quando o usuário ficar mais de 10 dias sem acessar o site, reduzindo assim a possibilidade de roubo de cookies de autenticação.


Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 10/20/2008 11:39:00 AM
nome: André
email: andresilva.vix@gmail.com
comentário:
Legal a dica.
Mas estou com um problema curioso. Em algumas máquinas não há escrita de cookies, e a validação fica comprometida. Será que estou fazendo alguma coisa errada? Mesmo se eu setar os cookies para aceitar todos, ainda continua não escrevendo..
Aguardo comentário!


data: 10/13/2008 7:39:00 PM
nome: Ailton Souza
email: doliver__@hotmail.com
comentário:
Muito obrigado. Muito útil esta dica. Abraço

 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br