Configurar la firma digital XML
Las opciones de configuración de la firma (imagen siguiente) se almacenan por separado por cada componente en el cuadro de diálogo Configuración del componente y todas las firmas se guardan en el archivo MFD.
A continuación explicamos las opciones que puede configurar.
La firma puede basarse en un certificado o en una contraseña. Seleccione el botón de opción del método que desea usar.
•Certificado: Si desea usar un certificado, éste debe tener una clave privada y encontrarse en un almacén de certificados accesible. La firma se genera con la clave privada del certificado. Para verificar la firma es necesario tener acceso al certificado (o a su versión de clave pública). La clave pública del certificado sirve para verificar la firma. Para seleccionar el certificado de clave pública/privada que se debe usar haga clic en el botón Seleccionar y navegue hasta el certificado.
•Contraseña:
•Guardar contraseña en el archivo MFD: Si marca esta casilla, la contraseña introducida en el campo Contraseña se guardará en formato confuso en el archivo MFD (es decir, la contraseña se cifrará). Recuerde que cualquier usuario con acceso al archivo MFD puede crear firmas con esta contraseña.
|
Los datos XML se transforman y el resultado de la transformación sirve para crear la firma. Puede especificar qué algoritmo de transformación canónica se debe aplicar a los datos XML del archivo (el contenido SignedInfo) antes de que se lleven a cabo los cálculos de firma. Debe tener en cuenta algunas diferencias entre las diferentes opciones de transformación:
•Ninguna: No se lleva a cabo transformación alguna y los datos XML del archivo binario guardado en disco se pasan directamente para la creación de firma. Si posteriormente se modifican los datos la firma no se podrá verificar. Sin embargo, si marca la casilla Eliminar los espacios en blanco entre los elementos XML, todos los espacios en blanco se eliminarán y los cambios en los espacios en blanco se pasarán por alto.
•Transformación canónica XML con o sin comentarios: si se incluyen comentarios para los cálculos de la firma y se realizan cambios en los comentarios de los datos XML, entonces se producirá un error de verificación. Si no se incluyen los comentarios, se podrán añadir o modificar comentarios en el documento XML una vez firmado y la firma se considerará válida y auténtica.
La opción "...con comentarios" solo está disponible si se elige la opción de ubicación de la firma Separada.
•Base64: se entiende que el elemento raíz (o de documento) del documento XML está codificado en base64 y se lee en su formato binario. Si el elemento raíz no es base64, se devuelve un error o el elemento se lee como vacío, dependiendo del tipo de elemento del que se trate.
La principal diferencia entre la opción Ninguna y la opción Transformación canónica es que esta última produce una secuencia de datos XML, en las que se normalizan algunas diferencias, como el orden de los atributos por ejemplo. Sin embargo, recuerde que si la firma está incrustada (envuelta), MapForce realiza una transformación canónica predeterminada. Así que los datos XML se usarán tal y como están (es decir, sin transformarse) cuando: la firma esté separada, la opción Ninguna esté seleccionada y la casilla Eliminar los espacios en blanco esté desactivada.
|
La firma se puede ubicar dentro del archivo XML o se puede crear en un archivo separado. Estas son las opciones de configuración:
•Envuelta: el elemento de firma se crea como último elemento secundario del elemento raíz (o de documento). Nota: el esquema XML asociado debe tener los elementos de definición de firma para que el resultado XML sea válido. Consulte la información dada más arriba.
•Separada: la firma XML se crea en un archivo separado. En este caso puede especificar la extensión de archivo y si el nombre del archivo se crea: (i) anexando la extensión al nombre del archivo (p. ej. test.xml.xsig) o (ii) reemplazando la extensión XML del archivo XML (p. ej. test.xsig). También puede elegir si en el archivo de firma la referencia al archivo XML es una ruta de acceso relativa o absoluta.
|
La casilla Anexar información clave se habilita si la firma está basada en un certificado. Si la firma está basada en una contraseña, esta casilla se deshabilita. Si se marca esta casilla, la información de clave pública se pone dentro de la firma. Si no se marca esta casilla, esta información de clave no se incluye en la firma. La ventaja de incluir la información de clave en la firma es que no se necesitará el certificado (concretamente la información de clave pública que contiene) para el proceso de verificación (porque la información de clave está presente en la firma).
|
Configuración de firma no válida
MapForce no puede firmar digitalmente el resultado de la asignación si las opciones de la firma XML no son válidas. La configuración de la firma digital no es válida si (i) no se puede acceder al certificado seleccionado o si el certificado no es adecuado para la firma de documentos XML; (ii) no se establece una contraseña.
Si no se elije contraseña ni certificado algunos, entonces el procesamiento se detiene o se continúa sin firma. Este comportamiento se puede determinar en el cuadro de diálogo Configuración del componente, con los botones de opción Dejar de procesar o Continuar sin la firma.