variables de session que expiran antes del tiempo
Hola, tengan todos buen dia.
Tengo un problema con las variables de session, pues he notado que expiran antes de 20 minutos o del tiempo que este configurado, he tambien encontrado varios mensajes preguntando el mismo tema pero no respuestas que puedan ayudar. Gracias mil y feliz día.
Tengo un problema con las variables de session, pues he notado que expiran antes de 20 minutos o del tiempo que este configurado, he tambien encontrado varios mensajes preguntando el mismo tema pero no respuestas que puedan ayudar. Gracias mil y feliz día.
Por desgracia los motivos de que pase eso pueden ser muchos, desde que tu aplicacion se reinicie por algun motivo cada n tiempo, un consumo por encima de lo estipulado de memoria de la aplicacion, la eliminacion de un ticket de seguridad para usuarios autenticados....
Quizas si pudieras ser mas explicita en tu problema en concreto, podríamos intentar echarte un cable.
Como tienes configurado el estado de session?, los usuarios se han autenticado i luego pierden su session? siempre es el mismo tiempo? o va variando?
Podrias intentar hacer un seguimiento de las variables de session, en todas tus paginas i comprobando que la propiedas Session.IsNewSession este a false, si se pone a true, es que esa sesion se acaba de iniciar. A partir de ahi investigar a fondo donde se puede haber producido y como es casi una odisea. Lo digo por experiencia. Me paso algo parecido a mi i tarde tres dias enteros para encontrar que se debia a que el tiket de autenticacion del usuario se caducaba antes que la session i no se renovaba correctamente.
Suerte
Quizas si pudieras ser mas explicita en tu problema en concreto, podríamos intentar echarte un cable.
Como tienes configurado el estado de session?, los usuarios se han autenticado i luego pierden su session? siempre es el mismo tiempo? o va variando?
Podrias intentar hacer un seguimiento de las variables de session, en todas tus paginas i comprobando que la propiedas Session.IsNewSession este a false, si se pone a true, es que esa sesion se acaba de iniciar. A partir de ahi investigar a fondo donde se puede haber producido y como es casi una odisea. Lo digo por experiencia. Me paso algo parecido a mi i tarde tres dias enteros para encontrar que se debia a que el tiket de autenticacion del usuario se caducaba antes que la session i no se renovaba correctamente.
Suerte
gracias por tu respuesta, te mando web. config que tengo (parte de el ) :
<!-- AUTHENTICATION
This section sets the authentication policies of the application. Possible modes are "Windows",
"Forms", "Passport" and "None"
-->
<authentication mode="Forms">
<forms loginUrl="frmLogin.aspx">
</forms>
</authentication>
<!-- AUTHORIZATION
This section sets the authorization policies of the application. You can allow or deny access
to application resources by user or role. Wildcards: "*" mean everyone, "?" means anonymous
(unauthenticated) users.
-->
<authorization>
<deny users="?"/>
<!-- <allow users="[comma separated list of users]"
roles="[comma separated list of roles]"/>
<deny users="[comma separated list of users]"
roles="[comma separated list of roles]"/>
-->
</authorization>
<!-- APPLICATION-LEVEL TRACE LOGGING
Application-level tracing enables trace log output for every page within an application.
Set trace enabled="true" to enable application trace logging. If pageOutput="true", the
trace information will be displayed at the bottom of each page. Otherwise, you can view the
application trace log by browsing the "trace.axd" page from your web application
root.
-->
<trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />
<!-- SESSION STATE SETTINGS
By default ASP.NET uses cookies to identify which requests belong to a particular session.
If cookies are not available, a session can be tracked by adding a session identifier to the URL.
To disable cookies, set sessionState cookieless="true".
-->
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;user id=sa;password="
cookieless="false"
timeout="20"
/>
-- el resto es el que trae por default, tampoco he hecho ningun cambio en el global
<!-- AUTHENTICATION
This section sets the authentication policies of the application. Possible modes are "Windows",
"Forms", "Passport" and "None"
-->
<authentication mode="Forms">
<forms loginUrl="frmLogin.aspx">
</forms>
</authentication>
<!-- AUTHORIZATION
This section sets the authorization policies of the application. You can allow or deny access
to application resources by user or role. Wildcards: "*" mean everyone, "?" means anonymous
(unauthenticated) users.
-->
<authorization>
<deny users="?"/>
<!-- <allow users="[comma separated list of users]"
roles="[comma separated list of roles]"/>
<deny users="[comma separated list of users]"
roles="[comma separated list of roles]"/>
-->
</authorization>
<!-- APPLICATION-LEVEL TRACE LOGGING
Application-level tracing enables trace log output for every page within an application.
Set trace enabled="true" to enable application trace logging. If pageOutput="true", the
trace information will be displayed at the bottom of each page. Otherwise, you can view the
application trace log by browsing the "trace.axd" page from your web application
root.
-->
<trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />
<!-- SESSION STATE SETTINGS
By default ASP.NET uses cookies to identify which requests belong to a particular session.
If cookies are not available, a session can be tracked by adding a session identifier to the URL.
To disable cookies, set sessionState cookieless="true".
-->
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;user id=sa;password="
cookieless="false"
timeout="20"
/>
-- el resto es el que trae por default, tampoco he hecho ningun cambio en el global