WebSigner FAQs
2.2. Comprobación de requisitos
2.2.2. Sistema operativo no soportado
2.2.3. Versión de Java incorrecta
2.2.4. Ventanas emergentes desactivadas
2.2.5. No hay permisos de ejecución de
JavaScript
2.2.6. Componente no cargado o versiones no
coincidentes
2.3. Pérdida de foco en ventanas
2.4. Desinstalación de WebSigner
3.1. Permisos necesarios para la
instalación en Windows Vista/7.
3.2. WebSigner no funciona con la máquina
virtual de 64 bits
4.1. Permisos necesarios para la
instalación
5.1. Funcionamiento del DNI electrónico
5.2. Solamente muestra un certificado
siendo que hay más instalados
5.3. Permisos necesarios para la
instalación
6.1. No detecta ningún perfil o alguno está
ausente
6.2.1. Ejecución de profileManager
6.2.3. Ejecución de Firefox seleccionando un
perfil
6.2.5. Cambio de nombre de perfil
6.3. Instalación de drivers de SmartCard
6.4. No se muestran los certificados de la
SmartCard
7.1. No funciona correctamente en Linux
7.2. La página de requisitos detecta una
JRE incorrecta
8.1. No funciona correctamente en Linux
8.2. Donde localizo los certificados
9.1. No puedo realizar un cifrado con el
DNI
9.2. Al tener el DNI insertado en el lector
se ralentiza la carga
10.1. No verifica firmas XAdES generadas por otras plataformas
10.2. No verifica firmas CAdES secuenciales generadas por otras
plataformas
Este documento presenta
los problemas más típicos con la utilización de WebSigner diferenciado por
entornos de ejecución.
Este documento pretende
ayudar al usuario final en caso de que exista algún problema con la ejecución
esperada de WebSigner.
WebSigner es un
componente cliente que se instala en el ordenador del usuario, bien a través
del navegador o de un instalador local, y permite realizar operaciones de
firma, verificación, cifrado y descifrado en cliente.
Para facilitar tanto
la instalación como el uso de WebSigner para el usuario, se pueden comprobar
los requisitos desde la página principal de WebSigner. Si el proceso de
instalación y verificación es correcto debería aparecer la siguiente página

En
caso contrario, puede deberse a algún problema con alguno de los siguientes requisitos
WebSigner
dispone de una serie de navegadores, en función del sistema operativo, a los
cuales les da soporte. Además, debido a los posibles cambios que realizan, solo
se garantiza un funcionamiento completo si las versiones de los navegadores son
coincidentes.
Si
se utiliza un navegador no soportado por WebSigner (En la propia página existe
un listado con los navegadores actualmente soportados), aparecerá una ventana
similar a esta en la cual se indica que se debe utilizar un navegador
soportado:

Al igual que en el apartado anterior, WebSigner dispone de una serie de
sistemas operativos donde se garantiza el correcto funcionamiento del
componente. Si dicha página se ejecuta con un sistema operativo no soportado
aparecerá una ventana similar a la anterior recomendando el uso de un sistema
operativo válido.
Para poder ejecutar el componente WebSigner se necesita tener instalada la
JRE de Java, ya que al tratarse de un Applet (cargado mediante JNLP) es
necesario disponer de esta utilidad.
En el caso de no tener instalada ninguna versión de Java, o dicha versión
no es una de las que se indica como soportadas, aparecerá un mensaje de error
que recomendará dirigirse a la página web de Java para descargarse la versión
adecuada
En el caso de que ya se disponga de la última versión de Java y se indique
desde la página que no está soportada, se puede deber a que al ser una versión
demasiado actual, no se ha podido garantizar su correcto funcionamiento. En
este caso aparecerá un mensaje de advertencia en lugar de error ya que es
probable que funcione con dicha versión.

El
componente necesita tener las ventanas emergentes activadas para el sitio que
se está integrando con WebSigner Applet. Según versiones del navegador avisa de
que se está intentando mostrar una pantalla y en otras muestra un icono en la
barra de estado. Independientemente se debe permitir mostrar pantallas
emergentes al sitio.
Hay
que permitir ejecutar JavaScript para que funcione correctamente. Dependiendo
del navegador utilizado, esta utilidad se activa de una manera u otra. En todos
los navegadores viene activada por defecto por lo que no debería existir ningún
problema salvo que esta propiedad se modifique.

Al
acceder con una versión nueva de WebSigner, puede que se queden cacheados los ficheros JavaScript de
alguna versión anterior por lo que al detectar que las versiones no son
coincidentes se muestra un error. Normalmente este error se corrige borrando la
cache del navegador (la página muestra las instrucciones para borrarla en
función del navegador usado) y refrescando la página.

En ocasiones, las
ventanas del cliente pierden el foco, haciendo imposible la interacción del
usuario. Este error bloquea ciertas ventanas Java en Internet Explorer y
Mozilla, perdiendo el foco y haciendo imposible la interacción con el usuario.
En muchos casos este
error se solventa al cambiar el foco a otras ventanas, o minimizar/maximizar el
navegador, para intentar que recupere el foco, pero si ni aun así se corrige el
problema se recomienda reiniciar el navegador
En caso de querer
desinstalar WebSigner, es suficiente con descargarse el instalador manual desde
la página de instalación

Al descargarlo, se
puede ver un archivo .zip que contiene tanto el instalado como el desinstalador.
Para poder desinstalar la aplicación es suficiente con abrir en cualquier
navegador con permisos de administrador (misma
restricción que en el caso del instalador). Para ver como se ejecuta con
permisos de admistrador el navegador consultar el documento dependiendo del
sistema operativo y navegador utilizado.
Si se ejecuta por primera vez la instalación desde
un navegador que no ha sido ejecutado con permisos de administrador, ocurrirá un
error en la instalación y no se podrá instalar.
Para poder realizar la instalación de manera
correcta es necesario ejecutar el navegador con permisos de administrador para
que el instalador pueda copiar todos los ficheros. En posteriores ejecuciones
se debe ejecutar con los permisos habituales de usuario.
La manera de ejecutar el navegador con dichos
permisos es suficiente con pulsar encima del icono del navegador con el botón
derecho y ejecutar la opción que se indica.

Para el correcto funcionamiento del componente en
Windows 64 bits (Vista/7) es necesario instalar un entorno de ejecución de Java
en 32 bits, y no una variante de 64 bits (tanto del navegador como de la
máquina virtual de Java)
El soporte de Java 64 bits en Windows 64 bits no se
puede asegurar hasta que se dé un soporte completo a 64 bits para la librería
nativa NSS (caso de Firefox) y el CAPIProvider (proveedor de acceso al almacén)
en el caso de Internet Explorer y Google Chrome.
Si se ejecuta por primera vez la instalación desde
un navegador que no ha sido ejecutado con permisos de administrador, ocurrirá
un error en la instalación y no se podrá instalar
Para ejecutar el navegador con permisos de
admistrador se deben realizar los siguientes pasos:
·
Abrir un terminal y
ejecutar el comando:
sudo Firefox
En caso de no
reconocer el comando Firefox deberá especificar el path donde se encuentra
Firefox:
sudo <ruta>/Firefox
·
Se solicitará la
contraseña de administrador.
·
Al introducirla se
abrirá en navegador y desde dicho navegador, se debe acceder a la página de
instalación de WebSigner.
·
Una vez realizada
la instalación cerrar el navegador y abrir nuevamente sin permisos de
administrador.
Una
vez instalados los drivers de OpenDNIe, para permitir que Java acceda a los
lectores PKCS#11 es necesario editar el siguiente archivo:
$ sudo vi /etc/opensc/opensc.conf
Y eliminar el
caracter # de la línea donde pone "# plug_and_play = false;"
# Parameters for the OpenSC PKCS11 module
app opensc-pkcs11 {
pkcs11 {
# Should the module support hotplug of readers as per PKCS#11 v2.20?
# This affects slot changes and PC/SC PnP, as v2.11 applications
# are not allowed to change the length of the slot list.
# Default: true
# plug_and_play = false;
plug_and_play = false;
WebSigner en su versión 6.1 no permite la
utilización del DNI electrónico sobre MacOS.
Debido a un bug reconocido por Apple en la lectura
desde Java del llavero, donde se
instalan los certificados privados del usuario, solamente se muestra un único
certificado. Además, si se disponen de tres certificados (A, B y C) y se
muestra el certificado A y este se elimina, pasa a mostrarse el certificado B.
En el siguiente ejemplo se puede ver como en el
llavero están dados de alta 2 certificados (FIRMANTE 2 y User test)

Al cargar los certificados se puede observar como
únicamente se muestra uno de ellos. Por lo tanto solamente se puede asegurar un
comportamiento correcto con la existencia de un único certificado en el llavero

Si se ejecuta por primera vez la instalación desde
un navegador que no ha sido ejecutado con permisos de administrador, ocurrirá
un error en la instalación y no se podrá instalar
Para ejecutar el navegador con permisos de
admistrador se deben realizar los siguientes pasos:
·
Acceder a la ruta
de la carpeta Java:
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/lib/ext
·
Se cambian los
permisos de escritura sobre la carpeta ext
Obtener información > Compartir y permisos.
·
Se pulsa sobre el
candado para desbloquear las opciones (se pedirá la contraseña de
administrador)
·
Se cambia la opción
por Leer y escribir
·
Se accede a la
página de WebSigner y se instala el componente
·
Para finalizar y
por seguridad, una vez instalado, se recomienda volver a realizar el mismo
proceso para cambiar a la opción Sólo
leer
En el caso de disponer de varios perfiles, depende
de cómo se hayan creado puede que no se detecte ningún perfil o alguno de ellos
esté ausente. Para cargar un perfil que no aparezca en la lista de perfiles,
será necesario cargar el perfil de manera manual seleccionando la ruta completa
de dicho perfil

En caso de
que el perfil de Firefox se corrompa o deje de funcionar correctamente el
navegador, se dispone de un gestor de perfiles que se puede utilizar para
generar un nuevo perfil y eliminar el perfil dañado (sin necesidad de tener que
desinstalar e instalar el Firefox de nuevo)
Para
ejecutar el gestor de perfiles se debe:
ü IMPORTANTE: Cerrar todas las
ventanas de Firefox.
ü Ir a: Inicio à
Ejecutar à firefox.exe –ProfileManager
Se
mostrará una ventana similar a la de la imagen

Para
crear un nuevo perfil se debe pulsar en la opción crear perfil.
Se
debe indicar el nombre que deseamos que tenga el perfil y tras este proceso el
nuevo perfil aparecerá en la ventana de ProfileManager.
Para
ejecutar Firefox con un perfil determinado es suficiente con seleccionar el
perfil a utilizar en la ventana de ProfileManager y pulsar la opción Iniciar Firefox.
Una
vez se ejecute Firefox, el perfil seleccionado quedará establecido como predeterminado,
por lo que Firefox se ejecutará con ese perfil mientras no se seleccione otro.
Para
eliminar un perfil se debe seleccionar el perfil que se desea eliminar en la
ventana de ProfileManager y pulsar la opción Eliminar perfil.
Se
dispone de la opción de eliminar el perfil por completo (se eliminará de la
carpeta profiles de Firefox) o solo las referencias.
Para
cambiar el nombre de un perfil se selecciona el perfil en la ventana de
ProfileManager y se pulsa la opción Renombrar
perfil.
Mozilla
Firefox no usa los almacenes de claves del Sistema Operativo, para acceder a
otros almacenes que no sean los suyos utiliza el estándar PKCS#11 por lo que la
instalación de los mismos difiere respecto a la instalación sobre el resto de
navegadores.
Para
instalar los drivers de una SmartCard determinada sobre Mozilla Firefox es
necesario realizar los siguientes pasos:
·
Ir
a herramientas -> Opciones -> Pestaña Avanzado -> Dispositivos de
seguridad -> Cargar

·
En
la ventana de cargar se deberá seleccionar un nombre identificativo de la
SmartCard (DNI, FNMT, Tarjeta de empleado de empresa X, etc.) y se debe
seleccionar el driver PKCS11 que proporcionará el distribuidor de las tarjetas.
Normalmente en Windows es un fichero con extensión .dll mientras que en Linux
es un fichero con extensión .so
Al actualizar Firefox automáticamente, puede haber
inconsistencias en la base de datos que contiene la configuración de los
dispositivos de seguridad, haciendo imposible el uso de SmartCards como el DNI.
Por este motivo se aconseja desinstalar cualquier Firefox y sus perfiles antes
de instalar el nuevo Firefox si se presenta este problema.
Actualmente no se
proporciona soporte a este navegador bajo el sistema operativo Linux debido a
que el almacén de certificados del navegador, además de ser de reciente creación
para este S.O., es distinto que para el resto de sistemas.
Para próximas
versiones se está desarrollando una evolución del componente para poder dar un
soporte completo.
Desde la página de
comprobación de requisitos de WebSigner, existe una limitación a la hora de
comprobar la versión de la JRE instalada desde el navegador Chrome. Al acceder
aparecerá la siguiente pantalla:

Se
puede comprobar de manera manual la versión de la máquina virtual que se está
ejecutando accediendo a la consola de Java.
Actualmente no se
proporciona soporte a este navegador bajo el sistema operativo Linux.
Los
certificados utilizados por el componente para este navegador son los
contenidos en el almacén del sistema (en Windows el almacén de Windows, en
MacOS el llavero).
El DNI electrónico no
permite realizar operaciones de cifrado ya que sus certificados no contienen
dicho uso de clave. Los certificados que contiene tienen uso de clave de firma
digital (Certificado de autenticación) y uso de clave de No repudio
(Certificado de firma)

Al
realizar la carga de los certificados de WebSigner e insertar el DNI
electrónico en el lector, es probable que la carga de los mismos se vea
ralentizada. Esto es debido al acceso de los drivers al contenido del DNI lo
que implica que este comportamiento sea normal.
Puede ocurrir este
comportamiento con otros proveedores de SmartCards.
Desde WebSigner, únicamente se da soporte al formato
de XAdES 1.2.2. Es por ello que si se intenta verificar con el componente una
firma generada por una plataforma que emite firmas XAdES 1.3.2, éstas no podrán
ser verificadas.
La manera de comprobar si el formato de firma es
correcto o no es comprobando si existe un nodo en el XML similar a este:
<QualifyingProperties xmlns=http://uri.etsi.org/01903/v1.3.2#>
Si al verificar una
firma secuencial CAdES con varios firmantes, WebSigner únicamente devuelve uno
de ellos, puede ser debido a que la firma esta generada por una plataforma que
realiza las firmas secuenciales utilizando el atributo CounterSignature (no
soportado actualmente por WebSigner). Para comprobar esto se puede utilizar un
visor de firma (por ejemplo BerViewer) y analizar lo siguiente:

Si existe una línea similar a la marcada en negrita
(atributo CounterSignature), solamente se devolverá una de las firmas, en
cambio, si la firma es generada por WebSigner tiene la siguiente apariencia:
