Uso de cliente miniapplet - Estándares de desarrollo del Gobierno

Anuncio
USO DE CLIENTE MINIAPPLET
Proyecto
Ref: Service Desk
SERVICIO UNIFICADO DE MANTENIMIENTO DE APLICACIONES
CA:
OT:
Ref SUMA
Cliente
Documento
PRC:
Gobierno de Cantabria
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet
CONTROL VERSIONES
Proyecto
Servicio Unificado de Mantenimiento de Aplicaciones
Título
Uso de cliente miniapplet
Documento
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet
Versión
Fecha
elaboración
Elaborado por
1.0
03/10/2014
SUMA
Revisado por
Aprobado por
RESUMEN ACTUALIZACIONES
Versión
1.0
Punto
Descripción
Versión inicial (Miniapplet 1.2)
Página 2 de 9
Fecha
aprobación
Proyecto
Servicio Unificado de Mantenimiento de Aplicaciones
Título
Uso de cliente miniapplet
Documento
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet
TABLA DE CONTENIDO
1.
INTRODUCCIÓN
2.
PRERREQUISTOS
3.
IMPLEMENTACIÓN EN CLIENTE ....................................................................................
..................................................................................................... 4
.................................................................................................... 5
Página 3 de 9
6
1.
Proyecto
Servicio Unificado de Mantenimiento de Aplicaciones
Título
Uso de cliente miniapplet
Documento
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet
INTRODUCCIÓN
Se necesita realizar el firmado de información a través de certificados utilizando únicamente tecnología de
cliente, por lo que se utiliza el miniapplet de @firma en su versión 1.2 para realizar esta tarea, este
documento resume los pasos a seguir para realizar esta tarea.
Página 4 de 9
2.
Proyecto
Servicio Unificado de Mantenimiento de Aplicaciones
Título
Uso de cliente miniapplet
Documento
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet
PRERREQUISTOS
Los mismos que se indican en la documentación del minapplet de @firma:




Sistema Operativo
o
Windows XP SP3, Vista SP2, 7 SP1, 8 o superior, en 32 (x86) o 64 (x64) bits.
o
Windows Server 2003 R2 SP2 o superior, en 32 (x86) o 64 (x64) bits.
o
Linux 2.6 o superior (soporte prestado para Ubuntu y Guadalinex), en 32 (x86) o 64
(x64/AMD64) bits.
o
Mac OS X Snow Leopard (10.6.8 o superior), Lion (10.7.2 o superior) o Mountain Lion
(10.8.1 o superior).
Navegador web:
o
Mozilla Firefox 4.0 o superior (En Windows únicamente se soporta Firefox en 32 bits).
o
Google Chrome 15 o superior.
o
Apple Safari 5 o superior.
o
Microsoft Internet Explorer 7 o superior, en 32 o 64 bits.
o
Java SE 6 Update 38 (1.6.0_38) o superior, en 32 (x86).
o
Java SE 7 Update 10 (1.7.0_10) o superior en 32 (x86) o 64 (x64/AMD64) bits.
JRE:
Certificado digital de usuario instalado en el navegador / sistema operativo o disponible a través de
un modulo PKCS#11 o CSP instalado en el navegador (caso del DNI-e).
Para obtener más información sobre los requisitos mínimos se recomienda ver la documentación oficial de
@firma, documento “MCF_manual-integrador_ES.pdf”, dicho manual se puede encontrar en el catálogo de
componentes de amap.cantabria.es
Página 5 de 9
3.
Proyecto
Servicio Unificado de Mantenimiento de Aplicaciones
Título
Uso de cliente miniapplet
Documento
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet
IMPLEMENTACIÓN EN CLIENTE
El primer paso para la incorporación del cliente es la inclusión de las librerías de javascript que vamos a
utilizar:
<head>
….
<script type="text/javascript" src="<entorno>/js/miniapplet/miniapplet.js"id="afirmacliente.js"/>
<script type="text/javascript" src="<entorno>/js/miniapplet/afirmaClienteMiniapplet.js"/>
….
</head>
El id del primer script es importante y no debe ser eliminado.
La última librería no pertenece al miniapplet pero contiene las funciones de firmado (firmar, cofirmar y
contrafirmar) que nos permitirá realizar las tareas de firmado básico en una sola invocación de manera
sencilla.
El texto “<entorno>” debe ser sustituido por uno de los entornos de trabajo del Gobierno de Cantabria
donde el miniapplet está desplegado.
Desarrollo:
https://sdesora07.intranet.gobcantabria.es/clientefirma
Preproducción:
https://soaspre05.intranet.gobcantabria.es/clientefirma
Producción:
https://aplicaciones6.cantabria.es/clientefirma
A continuación se incorporará la llamada de inicialización de la librería
<body>
<script type="text/javascript">
Página 6 de 9
Proyecto
Servicio Unificado de Mantenimiento de Aplicaciones
Título
Uso de cliente miniapplet
Documento
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet
inicializaClienteFirma();
</script>
…..
</body>
Es muy importante tener en cuenta que la carga de la librería (la llamada a
inicializaClienteFirma) debe hacerse al principio del body como se muestra ya que de hacerse en
el proceso de carga (método onload) o en otro momento anterior provocaría que no estuviesen cargados
los prerrequisitos de invocación de la función y, por lo tanto, no se ejecutase correctamente.
Una vez realizados estos pasos simplemente deberemos invocar a la función de firma concreta que
deseemos, firmar, cofirmar, contrafirmar, en el momento adecuado. A continuación, se
detalla cada uno de ellas.
Firmar
firmar(tipoFirma,datos,filtroTitular,filtroEmisor,filtroSoloFirma,firmaSalidaEnFichero,firmaMultiple,politicaFirma)
Esta función espera recibir los siguientes valores como parámetros:

TipoFirma: indica el tipo de firmar a aplicar sobre el contenido, puede tener uno de los siguientes
valores:
o
101: Indica que se va a firmar fichero en base 64 en formato CAdES Implícito.
o
100: Indica que se va a firmar fichero en base 64 en formato CAdES Explicito.
o
301: Indica que se va a firmar fichero en base 64 en formato PAdES Implícito.
o
501: Indica que se va a firmar fichero en base 64 en formato XAdES Implícito.
o
0: Solo aplicable a cofirma/contrafirma. Indica que se va a cofirmar/contrafirmar el fichero
en base 64 en formato de la firma original.

Datos: datos a firmar codificados en base 64.

filtroTitular: indica el texto de filtrado del titular a utilizar para mostrar la lista de certificados con
los que se firmará el contenido

filtroEmisor: indica el texto de filtrado del emisor a utilizar para mostrar la lista de certificados con
los que se firmará el contenido
Página 7 de 9
Proyecto
Servicio Unificado de Mantenimiento de Aplicaciones
Título
Uso de cliente miniapplet
Documento
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet

filtroSoloFirma: indica si se deben filtrar los certificados que no están diseñados para firma
electrónica (valor “true") o por el contrario se muestran todos (valor “false”).

firmaSalidaEnFichero: indica si la firma resultado de la operación se va a guardar en un fichero
(valor “true) o en un string (valor “false”).

firmaMultiple: Indica si la firma se va a aplicar a múltiples ficheros (true) o, por el contrario, se
aplica a un único fichero (false).

politicaFirma: Indica si se aplicará la política de firma (true) o, por el contrario, no se aplicará
(false). En el caso de que se aplique, dependiendo del tipo de firma que se quiera aplicar, se
realizará un tipo de firmado u otro. A continuación se indica la correspondencia:
o CAdES: La firma resultante será CAdES-EPES.
o PAdES: La firma resultante será PAdES-BES.
o XAdES: La firma resultante será XAdES-EPES.
Por ejemplo, si queremos firmar el texto “facturación mensual” (y su codificación en base64 es
“ZmFjdHVyYWNp824gbWVuc3VhbA==”) con un certificado de firma (el que el usuario desee) podríamos
invocar a la función de la siguiente manera:
var firmado = firmar(“1”,” ZmFjdHVyYWNp824gbWVuc3VhbA== ”,null,null,false, true, false, false)
De esta manera, tras la invocación quedaría en la variable “firmado” el contenido de la firma generada
(codificada en base 64) con el certificado seleccionado por el usuario.
Cofirmar
cofirmar(tipoFirma,datos,filtroTitular,filtroEmisor,filtroSoloFirma,firmaSalidaEnFichero,firmaMultiple,politicaFirma)
Esta función espera recibir como parámetros los mismos valores en que en el apartado "Firmar".
Por ejemplo, si queremos cofirmar un documento ya firmado anteriormente, podríamos invocar a la
función de la siguiente manera:
var cofirmado = cofirmar("101",null,null,null,false,true,false,false);
De esta manera, tras la invocación quedaría en la variable "cofirmado" el contenido de la cofirma generada
(codificada en base 64) con el certificado seleccionado por el usuario.
Contrafirmar
contrafirmar(tipoFirma,datos,filtroTitular,filtroEmisor,filtroSoloFirma,firmaSalidaEnFichero,firmaMultiple,politicaFirma)
Página 8 de 9
Proyecto
Servicio Unificado de Mantenimiento de Aplicaciones
Título
Uso de cliente miniapplet
Documento
DGDIT-PLATFIRMA-1.0-Uso de cliente miniapplet
Esta función espera recibir como parámetros los mismos valores en que en el apartado "Firmar".
Por ejemplo, si queremos contrafirmar un documento ya firmado anteriormente, podríamos invocar a la
función de la siguiente manera:
var contrafirmado = contrafirmar("101",null,null,null,false,true,false,false);
De esta manera, tras la invocación quedaría en la variable "contrafirmado" el contenido de la contrafirma
generada (codificada en base 64) con el certificado seleccionado por el usuario.
Para un uso avanzado de la función se recomienda la consulta de la documentación oficial de @firma.
Página 9 de 9
Descargar