martes, 25 de junio de 2013

Checklist para el uso de firma electronica con la administración.

No sé por qué, pero algo que debería ser simple, rápido, eficaz y gestionado por el servidor, como la firma electronica, suele dar un montón de problemas, al menos a mí siempre me los da. A continuación, una pequeña checklist para tratar de corregir errores.
  1. ¿Tienes una firma electronica? Asegúrate de tener una firma electrónica. En caso de que la firma esté en un dispositivo externo (DNI electrónico), asegúrate de haber escrito bien la contraseña.
  2. ¿Has incluido los AC raíz más recientes de la FNMT (Administración Pública, FNMT-RCP y APE) y Camerfirma en tu navegador? Si no lo has hecho, ve a la página de la FNMT y Camerfirma y descárgatelos. (NOTA: en los puntos siguientes, al hablar de certificados, nos referimos a tu certificado personal MÁS los certificados de la FNMT y Camerfirma).
  3. ¿Estás usando Chrome? - El navegador Chrome tiene su propia gestión de los archivos PDF. Eso es estupendo, pero, lamentablemente, alguien decidió (por motivos de seguridad) no incluir el soporte para script que necesitan casi todos los formularios online de la administración española. Por tanto, tienes dos opciones (elige una de ellas):
    1. Cambiar de navegador (Internet Explorer es lo que menos problemas te dará, siempre y cuando tengas la última versión).
    2. Abrir chrome://plugins/, y deshabilitar "Chrome PDF Viewer", lo que debería habilitar "Adobe Reader" (si tienes adobe instalado, claro). Cuando abras el PDF, Chrome intentará disuadirte de ejecutar Adobe Reader, así que tendrás que decirle que sí, que lo ejecute.
  4. ¿Has instalado tu certificado en tu navegador? Puede que hayas instalado tu certificado en Windows, pero eso no garantiza que esté instalado en el navegador, a menos que uses explorer. Comprueba en la configuración de tu navegador que el certificado esté instalado.
    1. Chrome: Menú > Configuración > Ver opciones avanzadas > HTTPS > Administrar certificados.
    2. Mozilla Firefox: Herramientas > Opciones > Avanzado > Cifrado > Ver Certificados
  5. ¿Has instalado tu certificado en Adobe Acrobat? Puede que hayas instalado tu certificado en Windows, pero eso no garantiza que esté instalado en Acrobat (aunque debería). Comprueba en la configuración de Acrobat Reader que esté instalado. Use una de estas dos.
    1. Instala tus certificados en Edición > Protección > Configuración de seguridad.
    2. Ve a Preferencias > Seguridad > Preferencias avanzadas > Integración con windows y márcalo todo (de ese modo, se asegurará de que sus preferencias de seguridad coincidan con las de windows, aunque esto no está exento de problemas).
  6. ¿Has instalado tus certificados en Java? Para instalarlos, tienes que ir al panel de control, buscar Java, y dentro del icono "Java" seleccionar "Seguridad" y "Gestionar Certificados".
  7. ¿Está tu navegador bloqueando Java o Acrobat? Puedes tratar de evitarlo manteniendo pulsado "Control" en Internet Explorer, o bien agregando la web actual a "Sitios de confianza". A menudo, el bloqueo de Java conduce a un bucle sin fin (sale un cartelito pidiendo que aprobemos un applet, decimos que sí, volvemos al mismo sitio donde estábamos, se vuelve a descargar el applet, se nos vuelve a preguntar si la aprobamos). Ese "bucle sin fin" solo se puede evitar si agregamos la ubicación actual a los "sitios de confianza" o bajamos la seguridad del navegador al mínimo.

Supón que has probado todo lo anterior y sigue sin funcionar. ¿Qué puede haber pasado? Si usas un lector de DNIe puede deberse a un capricho de la aplicación del DNIe; también puede suceder que tu nombre tenga acentos en tu certificado pero no los tenga en la administración con la que estás lidiando (esto suele suceder en la Seguridad Social) o puede, simplemente, que hoy los hados no estén de tu parte. Mejor imprimes el dichoso formulario y te vas al registro de tu ayuntamiento, o a una oficina de correos.


Nota sobre certificados digitales y seguridad: es importante que tu certificado digital esté protegido con alguna contraseña, para evitar que el robo de tu ordenador conduzca al robo de tu identidad. Lamentablemente, casi ningún navegador gestiona bien este punto (Internet Explorer pide tu permiso pero, aparentemente, no solicita una contraseña). Admirables excepciones son Java y Firefox.


Edición del 24 de febrero de 2014. Hay otros dos errores posibles que no tuve en cuenta:
"Error 2148532334: El usuario canceló la operación":
Significa que el driver o programa usado no se ha instalado con privilegios administrativos, o no se ha ejecutado como administrador. Por lo tanto, el sistema de seguridad de Windows Vista / 7 / 8 / 8.1 lo bloquea.
"El navegador no puede ejecutar este complemento":
Puede significar varias cosas:
  • Muchos de los navegadores actuales bloquean java por defecto. Debes indicarle al navegador (habitualmente en un mensaje en la parte superior o en un icono en la barra de navegación) que permita usar java (ver arriba).
  • Además, Java 7 exige que las applet estén firmadas con una firma actual (por ejemplo, las de la Agencia de protección de datos no lo están). Para poder usar las app java de firmado en estos sitios es necesario ir al panel de control y bajar la configuración de seguridad de Java, o bloqueará el complemento.
  • Finalmente, las últimas actualizaciones de java exigen que las app incluyan en su "manifiesto" una lista de sitios web en los que pueden ejecutarse (esto ya es para nota). Así que la mayoría de sitios que usaban java ya no funcionan.