2009-09-21 9 views
8

Mi comprensión deDiferencia con regenerateExpiredSessionId = "false" y regenerateExpiredSessionId = "true" .net

http://msdn.microsoft.com/en-us/library/system.web.configuration.sessionstatesection.regenerateexpiredsessionid.aspx

significado de regenerateExpiredSessionId = "false" era que si un identificador de sesión ha finalizado NO será reutilizado si el cliente solicita una url con la misma identificación.

Y mening de regenerateExpiredSessionId = "true" era que si un identificador de sesión ha finalizado será reutilizado (reciclado) si la petición del cliente una dirección URL con el mismo id.

Pero cuando leí puesto en

regenerateExpiredSessionId not working as expected

parece que no he entendido bien lo que regenerateExpiredSessionId = significa "verdaderos".

¿Puede alguien explicar cuál es la correcta?

+0

creo que estás en lo correcto y no veo cómo el otro post contradice esto. – Locksfree

+0

Sé que esta pregunta tiene 5 años, pero aún me gustaría ver una respuesta aclaratoria que confirme o niegue la interpretación anterior de este ajuste. Me parece un poco confuso también. – jdmcnair

Respuesta

1

Creo que la palabra "reeditar" es problemática cuando las personas discuten este atributo. He visto algunas publicaciones interpretar que significa "una nueva identificación de sesión se genera y se emite al cliente" y otras que interpretan que significa "una identificación de sesión caducada se asigna a una nueva sesión y se emite al cliente". Creo que la documentación de msdn lo significa en el último sentido, y que la publicación de desbordamiento de pila que usted hizo referencia la interpretó incorrectamente como la primera.

11

De forma predeterminada, los valores de ID de sesión que se utilizan en las sesiones sin cookies se reciclan. Es decir, si se realiza una solicitud con un ID de sesión que ha expirado, se inicia una nueva sesión utilizando el valor de SessionID que se proporciona con la solicitud. Esto puede ocasionar que una sesión se comparta involuntariamente cuando varios navegadores utilizan un enlace que contiene un valor SessionID sin cookies. (Esto puede ocurrir si el enlace pasa a través de un motor de búsqueda, a través de un mensaje de correo electrónico o de otro programa). Puede reducir la posibilidad de que los datos de sesión se compartan al configurar la aplicación para no reciclar identificadores de sesión. Para hacer esto, establezca el atributo regenerateExpiredSessionId del elemento de configuración de sessionState en verdadero. Esto genera una nueva ID de sesión cuando se realiza una solicitud de sesión sin cookies con una ID de sesión caducada.

Ref: http://msdn.microsoft.com/en-us/library/ms178581.aspx

Cuestiones relacionadas