Tengo dos aplicaciones web diferentes. La aplicación web de servicios tiene servicios REST definidos. La aplicación web del cliente tiene páginas JSP que realizan llamadas a los servicios REST utilizando Ajax para obtener los datos y mostrarlos en la interfaz de usuario. Quiero implementar OWASP CSRF Gaurd 3 para mis servicios REST.
¿Cómo puedo obtener el valor del token CSRF en la aplicación del Cliente para que pueda pasar el valor del token a medida que los servicios de cabecera y descanso se validan y ejecutan?
Déjame decirle a mi arquitectura un poco clara.
Proyecto de servicios: es un proyecto de primavera / JPA con servicios web REST definidos. Este proyecto requiere ser protegido con CSRF. Su contexto web es / Servicios. Así que la url podría estar en localhost como http://localhost:8080/Services/RESTSERVICE
Proyecto del cliente: es un proyecto JSP / Servlet con páginas web jsp / html. Este proyecto realiza llamadas AJAX a los Servicios REST del proyecto Servicios para recuperar los datos y mostrarlos en la interfaz de usuario. La URL es como http://localhost:8080/Client/index.jsp
Ahora mi duda es si implemento CSRF Guard in Services Project, el proyecto del Cliente requirió el token CSRF para llamar a los Servicios REST protegidos. ¿Cómo obtengo este valor de token en las páginas jsp de proyectos del Cliente?
Intenté agregar una cookie en la respuesta de los servicios de descanso, pero el javascript del cliente no puede leerla, por lo que no pude compartir el token con el cookie. ¿Hay algún otro enfoque? Cualquier ayuda será apreciada ...