![]() |
recuperacion del control de la página Muy buenas: estamos dando los últimos toques a una aplicación web que debe detectar si el usuario que accede tiene instalado un certificado en el navegador. Si es así, el certificado se valida y se le muestran unos datos. Si no tiene certificado, se le muestra un conjunto restringido de esos datos (pero puede seguir trabajando). Ya hemos hecho la validación con @firma, y recuperamos correctamente los datos del certificado. El problema es que, @firma, cuando no detecta la presencia de un certificado, redirige a una página de error y lo que a nosotros nos interesa es recuperar el control para seguir con la ejecución. Esa página de error puede cambiar dependiendo de la configuración de @firma, por lo que no podemos recuperar el control accediendo directamnte a la página... Hemos buscado información al respecto y todas las soluciones que hemos encontrado pasan por el empleo de un Servlet que procesa la petición (HttpRequest), pero ésta nunca trae los datos del certificado, aunque exista (siempre viene a null, no sabemos por qué). ¿Quizás es que tenemos que instalar un “certificado root” en el equipo en el que se aloja la aplicación? Si es así ¿cómo podemos obtener ese certificado y cómo lo instalamos? Resumiendo: ¿conoceis alguna forma, en Java, de detectar si un usuario tiene o no instalado un certificado en el navegador? Desde ya gracias. |
Re: recuperacion del control de la página Hola! Necesito saber si has sido capaz de recuperar los datos de un certificado digital con Java y si ha sido así... ¿me podrías decir cómo? Estoy con Servlets y jsp`s... Me sería de gran ayuda. Un saludo y gracias de antemano |
Re: recuperacion del control de la página ¿Has probado a configurar el tomcat con clientAuth="true"? O si usas otro contenedor, busca una opción similar. La cuestión es que el servidor, no tu servlet, debe solicitarle al cliente que envie sus certificados. Si no, por defecto no los envian, por obvias razones de seguridad. Y tu servidor debe estar configurado para usar SSL, ya que si no me parece que no se envian nunca los certificados. |
Re: recuperacion del control de la página Hola GreenEyed. En primer lugar, gracias por responder. La opción de clientAuth="true" ya la tengo contemplada y... nada, es más, el servidor no es capaz de arrancar (peta). Tengo incluido el certificado digital del cliente en el navegador pero nada de nada tampoco. En fin, que no sé qué hacer :neurotico :neurotico En el servlet estoy utilizando: __________________________________________________ _______________ res.setContentType("text/html"); PrintWriter out = res.getWriter(); // out.println("<HTML>"); // out.println("<BODY>"); // out.println("<H3>Informacion de certificado de cliente</H3>"); Object o = req.getAttribute("javax.servlet.request.X509Certif icate"); System.out.print("javax.servlet.request.X509Certif icate"); if (o == null){ // out.println("<B>No hay certificado de cliente</B>"); RequestDispatcher rd = req.getRequestDispatcher("/datos.jsp"); rd.forward(req, res); }else { try { X509Certificate[] certs = (X509Certificate[]) o; X509Certificate cert; ... __________________________________________________ _______________ Pero el objeto "o" al leerlo me dice que es null. A parte, mi servidor sí que está preparado para utilizar ssl. Si dispones de algún ejemplo sencillo me sería de gran ayuda En fin, ya me contarás. Muchas gracias por la ayuda y gracias otra vez por responder :arriba: Un saludo |
| La zona horaria es GMT -6. Ahora son las 08:44. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.