sessionCookieDomain Tomcat 7
Saludos,
Actualmente tengo la siguiente configuración para el manejo de cookies en un servidor Tomcat 7 en el archivo: web.xml:
Context sessionCookiePath="/"
useHttpOnly="false"
sessionCookieDomain=".swalifedev.com"
Sucede que si la url no tiene la palabra swalifedev.com el servidor no me está creando las cookies por tal razón recibo un error de autenticación.
Mi duda es como puedo hacer para poder acceder con más de un dominio a la vez, existe la posibilidad de configurar múltiples dominios?
Muchas gracias
Saludos cordiales.
- Inicie sesión o regístrese para enviar comentarios
Checa aquí
Tal vez esto te puede ayudar
¿“Recordarme”?
¿Para qué usas la cookie? ¿Estás implementando un “Recordarme”?
Algo parecido
Tengo esta configuracion en la ruta conf/Catalina/localhost/ y
La cual crea cookies para todos los subdominos que esten bajo el dominio .swalifedev.com, pero resulta que el entorno de desarrollo no se encuentra bajo ese dominio, por lo tanto no me esta generado cookies y debido a una validacion de seguridad la aplicacion genera un error,
Para solucionar el problema lo que hice fue crear una cookie desde el codigo y añadirla al array de cookies que viene desde el response ya existentes ,antes valido si ya existe:
Algo como;
public void validateJSsessionIdCookie(Cookie[] cookies, HttpServletResponse response) {
boolean ok = false;
Cookie cookieJS = null;
if (cookies != null)
for (Cookie cookie : cookies) {
if (cookie.getName().equals("JSESSIONID")) {
ok = true;
break;
}
}
if (!ok) {
cookieJS = new Cookie("JSESSIONID", UUID.randomUUID().toString());
response.addCookie(cookieJS);
}
}
Mi duda es que pasa con el dominio? en este caso esta fallando, yo puedo hacerlo asi? si alguien conoce o a realizado algo similar le agradezco mucho cualquier sugerencia.
Gracias
El dominio
Dado que el HTTP es stateless y que hemos usado el mecanismo de las cookies para mantener el estado de las conexiones, no sería bueno que los navegadores enviaran todas las cookies a todos los servidores a los que se conectan, por eso cada cookie va marcada con el dominio de origen, cuando usas sessionCookieDomain le indicas al tomcat que genere la cookie para un parcial del dominio; el navegador puede o no aceptar la cookie (dependiendo de sus configuraciones de seguridad) pero solo la enviará a los URLs que coincidan con el dominio para el cual fue puesta la cookie, por eso si en desarrollo usas una IP la cookie no va a llegar.
Te recomiendo usar otro dominio para tu ambiente de desarrollo (para que las cookies si lleguen) o que reconfigures tu archivo hosts para sobreescribir los dominios de producción con tus ips de prueba, esto sólo mientras desarrollas, pues podría confundirte si olvidas que realizaste ese cambio.
además, como el JSESSIONID que estas recibiendo no es el de la session, seguramente el servidor está generando nuevas sesiones