Você está na página 1de 11

SISTEMA INTEGRADO DE GESTIN DE EXPEDIENTES MODULAR (SIGM)

CONFIGURACIN DE FIRMA DIGITAL POR ENTIDADES

SIGM v3

Administracin Local Soluciones

Control de versiones Versin 01 02 Fecha aprobacin 10-05-2010 03-10-2012 Cambio producido Versin inicial Actualizacin para SIGEM v3.0. Configuracin del modo de securizacin de @firma por entidad y propiedad de proxy para especificar los hosts que no lo van a utilizar Autor IECISA IECISA

AL SIGM v3 Configuracin de Firma Digital por Entidades

NDICE

INTRODUCCIN ......................................................................................... 4 1.1 1.2 1.3 VISIN GENERAL DEL SISTEMA ......................................................................... 4 FINALIDAD DEL DOCUMENTO ........................................................................... 4 DEFINICIONES Y ABREVIATURAS ....................................................................... 4

2 3

PRE-REQUISITOS ....................................................................................... 5 TIPOS DE FIRMA Y SU CONFIGURACIN .................................................... 5 3.1 3.2 3.3 FIRMA BOUNCYCASTLE .................................................................................. 5 FIRMA PKCS7 ........................................................................................... 6 FIRMA MEDIANTE @FIRMA.............................................................................. 7

4 5

CONFIGURACIN POR DEFECTO............................................................... 11 CONFIGURAR LA FIRMA DE UNA NUEVA ENTIDAD ................................... 11

AL SIGM v3 Configuracin de Firma Digital por Entidades

1 1.1

Introduccin Visin general del sistema

AL SIGM es la plataforma de Tramitacin Electrnica del MINETUR, solucin integral para la tramitacin electrnica de los procedimientos administrativos, que fomenta la interoperabilidad entre administraciones mediante su adaptacin a estndares de comunicacin as como la reutilizacin de recursos e informacin pblica.

1.2

Finalidad del documento

El objetivo del presente documento es describir la configuracin necesaria para la firma de documentos desde el servidor, detallando los diferentes parmetros que se pueden usar, en cada uno de los diferentes tipos de firma digital soportados por AL SIGM. Tambin se comenta como se debe realizar esta configuracin, para soportar varias entidades, de forma que cada entidad pueda usar su propio certificado para la firma. Esta firma digital se usar en el servidor para realizar el firmado de los justificantes que se entregan en las solicitudes telemticas, y de los justificantes de firma generados en la gestin de expedientes.

1.3

Definiciones y Abreviaturas

A continuacin se expone una tabla con los diferentes acrnimos y abreviaturas utilizados a lo largo del documento, con su correspondiente definicin. Acrnimo / Abreviatura MINETUR IECISA SIGM Definicin Ministerio de Industria, Energa y Turismo Informtica El Corte Ingls S.A. Sistema Integrado de Gestin de Expedientes Modular Administracin Local

AL

AL SIGM v3 Configuracin de Firma Digital por Entidades

Pre-requisitos

Con el fin de garantizar que la informacin que contiene los justificantes es verdica y no ha sido modificado, se firman dichos documentos con un certificado de firma, correspondiente a la entidad emisora de dicho justificante. El certificado de firma, normalmente consiste en un fichero, con extensin p12 o pfx, protegido por contrasea. Para que cada entidad pueda firmar los justificantes con su propio certificado de firma, es necesario copiar estos certificados al servidor, en un directorio al que pueda acceder el servidor de aplicaciones. Por ejemplo: /home/sigem/SIGEM/certificados. Cada uno de estos ficheros, constituye el almacn de claves que contiene la clave privada que ser utilizada por cada entidad para la firma de sus justificantes.

Tipos de Firma y su configuracin

En SIGEM hay actualmente implementados tres procesos de firma: BC, PKCS7 y @Firma. Para seleccionar qu tipo de firma se utiliza, hay que indicarlo en el fichero de configuracin externalizado: SIGEM_Core/SIGEM_spring.properties En concreto, habra que modificar el parmetro FIRMA_ELECTRONICA_DEFAULT_IMPL. En el ejemplo siguiente se ve la validacin configurada para utilizar PKCS7, que es la utilizada por defecto en SIGEM. FIRMA_ELECTRONICA_DEFAULT_IMPL=SIGEM_ServicioFirmaElectronica.PKCS7.API La configuracin del tipo de firma, se especifica a travs del directorio SIGEM_FirmaDigital, de la configuracin externalizada. Adems puede ser diferente para cada entidad, de forma que cada una puede usar su propio certificado para la firma, si se crean directorios para las distintas entidades. A continuacin se muestran los ficheros a configurar para cada uno de los tipos de firma soportados:

3.1 Firma BouncyCastle


Su configuracin se encuentra en el fichero firmaBCConfig.properties, ubicado en SIGEM_FirmaDigital/xxx, y consta de las siguientes propiedades: FIRMA_SIGEM_API_KEYSTORE: Ruta absoluta al almacn de claves que contiene la clave privada a usar en la firma realizada desde el servidor FIRMA_SIGEM_API_PASSWORD: Contrasea del almacn de claves anterior.

AL SIGM v3 Configuracin de Firma Digital por Entidades

FIRMA_SIGEM_API_ALIAS: Alias asociado a la clave privada a utilizar para la firma, en el almacn de claves. Esta informacin se puede obtener con la utilizada keytool incluida con java (keytool v list). FIRMA_SIGEM_API_KEYSTORE_TYPE: Tipo del almacn de claves anterior (JKS, JCEKS o PKCS12) Por defecto pkcs12 (extensin p12 o pfx). FIRMA_SIGEM_API_KEYSTORE_PROVIDER: Identificador del proveedor a usar para la carga del almacn de claves a usar para firmar. Normalmente BC.

Ejemplo: FIRMA_SIGEM_API_KEYSTORE=/home/sigem/SIGEM/certificados/certificadoServid or.pfx FIRMA_SIGEM_API_PASSWORD=sigem FIRMA_SIGEM_API_ALIAS=be401672f8273e2117dd0a6c9ea4aa82_5f0c77b6-1a434c79-861f-b7ca120682f1 FIRMA_SIGEM_API_KEYSTORE_TYPE=pkcs12 FIRMA_SIGEM_API_KEYSTORE_PROVIDER=BC

3.2 Firma PKCS7


Su configuracin se encuentra en el fichero firmaPKCS7Config.properties, ubicado en SIGEM_FirmaDigital/xxx, y consta de las siguientes propiedades: FIRMA_PKCS7_API_KEYSTORE: Ruta absoluta al almacn de claves que contiene la clave privada a usar en la firma realizada desde el servidor FIRMA_PKCS7_API_PASSWORD: Contrasea del almacn de claves anterior. FIRMA_PKCS7_API_ALIAS: Alias asociado a la clave privada a utilizar para la firma, en el almacn de claves. Esta informacin se puede obtener con la utilizada keytool incluida con java (keytool v list ). FIRMA_PKCS7_API_KEYSTORE_TYPE: Tipo del almacn de claves anterior (JKS, JCEKS o PKCS12) Por defecto pkcs12 (extensin p12 o pfx). FIRMA_PKCS7_API_KEYSTORE_PROVIDER: Identificador del proveedor a usar para la carga del almacn de claves a usar para firmar. Normalmente BC.

Ejemplo: FIRMA_PKCS7_API_KEYSTORE=/home/sigem/SIGEM/certificados/certificadoServid or.pfx FIRMA_PKCS7_API_PASSWORD=sigem FIRMA_PKCS7_API_ALIAS=be401672f8273e2117dd0a6c9ea4aa82_5f0c77b6-1a434c79-861f-b7ca120682f1 FIRMA_PKCS7_API_KEYSTORE_TYPE=pkcs12 FIRMA_PKCS7_API_KEYSTORE_PROVIDER=BC

AL SIGM v3 Configuracin de Firma Digital por Entidades

3.3 Firma mediante @Firma


Nota: Actualmente los servicios web de firma digital ofrecidos por @firma, estn deprecados. Por esta razn, ya no es posible realizar el alta de nuevos certificados de firma en @firma. Sin embargo, s se permite el alta de nuevas entidades, para habilitar la utilizacin del resto de servicios web ofrecidos por la plataforma (validacin de certificado, validacin de firma, etc). La configuracin de este apartado, est dirigida a aquellas entidades que ya estuviesen usando los servicios de firma de @firma, con anterioridad. Su configuracin se encuentra en el fichero firmaAFirmaConfig.properties, ubicado en SIGEM_FirmaDigital/xxx, y consta de las siguientes propiedades: FIRMA_AFIRMA_API_PATH_SERVICES: URL parcial de acceso a los servicios web, del entorno de @firma a utilizar

Nota: En caso de usar https://, hay que aadir los certificados SSL de la ruta de certificacin completa, desde la autoridad certificadora raz, al almacn de confianza del servidor, que normalmente ser el cacerts de la JDK del servidor de aplicaciones. FIRMA_AFIRMA_API_SERVICE_FIRMAR: Nombre del servicio web de firma de @firma. Por defecto: FirmaServidor. Normalmente no ser necesario modificar este parmetro. FIRMA_AFIRMA_API_SERVICE_VERIFICAR: Nombre del servicio web de validacin de @firma. Por defecto: ValidarFirma. Normalmente no ser necesario modificar este parmetro. FIRMA_AFIRMA_API_SERVICE_STORAGE: Nombre del servicio web de custodia de documentos de @firma. Por defecto: AlmacenarDocumento. Normalmente no ser necesario modificar este parmetro. FIRMA_AFIRMA_API_SERVICE_REGISTRAR_FIRMA: Nombre del servicio web para el registro de firmas de @firma. Por defecto: FirmaUsuario2FasesF2. Normalmente no ser necesario modificar este parmetro. FIRMA_AFIRMA_API_APP_ID: Identificador de la aplicacin, dada de alta en @firma, que realiza la firma. FIRMA_AFIRMA_API_FIRMANTE: Identificador de la clave privada dada de alta en @firma, que se utilizar para firmar. FIRMA_AFIRMA_API_REF_ID: Actualmente no se usa. FIRMA_AFIRMA_API_ALGO_HASH: Algoritmo Hash que tiene que usar @firma para en la firma. FIRMA_AFIRMA_API_FORMATO: Formato de la firma usar por @firma FIRMA_AFIRMA_API_KEYSTORE: Almacn de claves donde se encuentra el certificado, que tambin est alojado en @firma. Se utiliza para poder obtener la informacin del certificado, sin necesidad de acceder a @firma. FIRMA_AFIRMA_API_PASSWORD: Contrasea del Almacn de claves anterior.

AL SIGM v3 Configuracin de Firma Digital por Entidades

FIRMA_AFIRMA_API_ALIAS: Alias del certificado/clave pblica en el almacn de claves. Esta informacin se puede obtener con la utilizada keytool incluida con java (keytool v list ) FIRMA_AFIRMA_API_KEYSTORE_TYPE: Tipo del almacn de claves anterior (JKS, JCEKS o PKCS12) Por defecto pkcs12. FIRMA_AFIRMA_API_KEYSTORE_PROVIDER: Identificador del proveedor a usar para la carga del almacn de claves anterior. Normalmente BC. FIRMA_AFIRMA_API_CONFIG_FILE: Fichero de configuracin del mecanismo de seguridad para invocar a los servicios web de @firma, localizado bajo el directorio SIGEM_FirmaDigital/xxx de la configuracin externalizada. Tambin es posible especificar una ruta absoluta a dicho fichero. FIRMA_AFIRMA_API_MESSAGES_HANDLER: Nombre del manejador de mensajes para la versin 5.0.1 o 5.2.1 de @firma. Es necesario descomentar el de la versin que se utilice y comentar el resto.

Ejemplo: FIRMA_AFIRMA_API_PATH_SERVICES=http://afirma.redsara.es:8080/afirmaws/ser vices/ FIRMA_AFIRMA_API_SERVICE_FIRMAR=FirmaServidor FIRMA_AFIRMA_API_SERVICE_VERIFICAR=ValidarFirma FIRMA_AFIRMA_API_SERVICE_STORAGE=AlmacenarDocumento FIRMA_AFIRMA_API_SERVICE_REGISTRAR_FIRMA=FirmaUsuario2FasesF2 FIRMA_AFIRMA_API_APP_ID=mityc.sigem3 FIRMA_AFIRMA_API_FIRMANTE=mityc.sigem3.firmaservidor.firmante3 FIRMA_AFIRMA_API_REF_ID= FIRMA_AFIRMA_API_ALGO_HASH=SHA1 FIRMA_AFIRMA_API_FORMATO=PKCS7 FIRMA_AFIRMA_API_KEYSTORE=/home/sigem/SIGEM/certificados/certificadoServi dor.pfx FIRMA_AFIRMA_API_PASSWORD=sigem FIRMA_AFIRMA_API_ALIAS= ad3eeb1f5d176e9a6506cabbd77d373e_b4ac0c23-78c64849-b036-bb9c77932ac9 FIRMA_AFIRMA_API_KEYSTORE_TYPE=pkcs12 FIRMA_AFIRMA_API_KEYSTORE_PROVIDER=BC FIRMA_AFIRMA_API_CONFIG_FILE=AFirmaConfiguration.properties #FIRMA_AFIRMA_API_MESSAGES_HANDLER=SIGEM_ServicioFirmaElectronica.AFIRMA. API.Afirma501MessagesHandler FIRMA_AFIRMA_API_MESSAGES_HANDLER=SIGEM_ServicioFirmaElectronica.AFIRMA.A PI.Afirma521MessagesHandler Por otra parte, la configuracin de securizacin de los servicios web, se encuentra en el fichero AFirmaConfiguration.properties, normalmente localizado en SIGEM_FirmaDigital/xxx/ y consta de las siguientes propiedades: timer: Tiempo mximo de espera en milisegundos security.mode: Mecanismo de securizacin a utilizar en la llamada a los servicios. Los valores posibles son None para ninguno, UsernameToken para usuario y contrasea y BinarySecurityToken para el firmado del mensaje SOAP de la peticin.

AL SIGM v3 Configuracin de Firma Digital por Entidades

Atributos exclusivos si se usa UsernameToken: security.usertoken.user: Usuario dado de alta para la aplicacin que realizar la firma a travs de @firma. security.usertoken.password: Contrasea del usuario anterior. security.usertoken.passwordType: Indica si se enva la password hasheada (PasswordDigest) o ser enva en texto plano (PasswordText).

Atributos exclusivos si se usa BinarySecurityToken: security.keystore.location: Localizacin del almacn de claves a usar en la firma de las peticiones SOAP. security.keystore.type: Tipo del almacn de claves anterior (JKS, JCEKS o PKCS12) Por defecto pkcs12. security.keystore.password: Contrasea del almacn de claves anterior. security.keystore.cert.alias: Alias de la clave privada en el almacn de claves, a usar para firmar las peticiones SOAP. Esta informacin se puede obtener con la utilizada keytool incluida con java (keytool v list ) security.keystore.cert.password: Contrasea de la clave privada en el almacn de claves. En caso de que la clave privada no tenga contrasea, rellenar con la contrasea del almacn de claves (security.keystore.password).

Atributos de configuracin del proxy (Dejarlos vacos si no se usa): http.proxyHost y http.proxyPort: Nombre del host y puerto del proxy. http.proxyUser y http.proxyPass: Usuario y contrasea de acceso al proxy http.nonProxyHosts: Lista de excepciones del proxy. Se trata de una lista de direcciones, separadas por el carcter | de aquellos servidores que deben accederse directamente sin usar proxy. Se puede usar el carcter comodn *.

Ejemplo: timer=60000 security.mode=None #security.usertoken.user=user #security.usertoken.password=pass #security.usertoken.passwordType=PasswordDigest #security.keystore.location=/certificados/keystore.p12 #security.keystore.type=PKCS12 #security.keystore.password=clave #security.keystore.cert.alias={FE0D1993-06CF-403F-A1DF-8A8A1078F667} #security.keystore.cert.password=clave http.proxyHost= http.proxyPort= http.proxyUser= http.proxyPassword= # Excepciones del proxy: a list of hosts that should be reached directly, bypassing the proxy.

AL SIGM v3 Configuracin de Firma Digital por Entidades

# This is a list of patterns separated by '|'. The patterns may start or end with a '*' for wildcards. # Any host matching one of these patterns will be reached through a direct connection instead of through a proxy. http.nonProxyHosts=

AL SIGM v3 Configuracin de Firma Digital por Entidades

10

En caso de necesitar configurar un proxy para la conexin con @firma, se recomienda configurar estos parmetros (http.proxyHost, http.proxyPort, http.proxyUser, http.proxyPassword, http.nonProxyHosts) a nivel de servidor de aplicaciones, en lugar de hacerlo en este fichero de configuracin, porque aplican sobre todas las aplicaciones desplegadas.

Configuracin por defecto

En SIGEM se entrega una configuracin por defecto para cada tipo de firma dentro de la carpeta de configuracin externalizada: SIGEM_FirmaDigital/default/ En caso de no especificar ninguna configuracin especfica para una entidad, o que no se encontrase, se cargara la configuracin que se encuentre en la carpeta default.

Configurar la firma de una nueva entidad

Para configurar la firma de una nueva entidad, servira con: Duplicar la carpeta default Renombrarla al nombre de la entidad en cuestin (por ejemplo, 001) Modificar dentro de esta carpeta, el fichero o ficheros de configuracin correspondientes al servicio / tipo de firma digital que se va a utilizar.

AL SIGM v3 Configuracin de Firma Digital por Entidades

11

Você também pode gostar