Como definir o tempo limite da session no web.config

Eu tentei muito difícil, mas não consigo encontrar uma solução sobre como definir o valor de tempo limite de session para a session em processo para um aplicativo da Web ASP.Net.

Estou usando o VSTS 2008 + .Net 3.5 + C #. Aqui está o que eu escrevi para definir o tempo limite como 1 minuto, correto?

Eu escrevi na seção system.web no web.config

  

Se você quiser definir o tempo limite para 20 minutos, use algo como isto:

      

deveria te ver bem

O valor que você está definindo no atributo de timeout é uma das maneiras corretas de definir o valor de tempo limite da session.

O atributo timeout especifica o número de minutos que uma session pode ficar inativa antes de ser abandonada. O valor padrão para este atributo é 20.

Ao atribuir um valor de 1 a este atributo, você define a session para ser abandonada em 1 minuto após sua inatividade.

Para testar isso, crie uma página aspx simples e escreva este código no evento Page_Load,

 Response.Write(Session.SessionID); 

Abra um navegador e vá para esta página. Um ID de session será impresso. Aguarde um minuto para passar e, em seguida, pressione Atualizar. O ID da session será alterado.

Agora, se meu palpite estiver correto, você deseja que seus usuários efetuem logout assim que a session expirar. Para fazer isso, você pode montar uma página de login que irá verificar as credenciais do usuário e criar uma variável de session como essa –

 Session["UserId"] = 1; 

Agora, você terá que fazer uma verificação em cada página para esta variável como esta –

 if(Session["UserId"] == null) Response.Redirect("login.aspx"); 

Este é um exemplo básico de como isso funcionará.

Mas, para tornar seus aplicativos seguros com qualidade de produção, use as classs Roles & Membership fornecidas pelo ASP.NET. Eles fornecem autenticação baseada em formulários, que é muito mais confiável que a autenticação baseada em session normal que você está tentando usar.

Use isso no web.config :