Notas para desarrolladores_20140827.pdf

28
Notas para desarrolladores Página 1 de 28 20140827 Subdirección General de Tecnología de la Información y Comunicaciones Área de Desarrollo - Formación Acreditación de centros de formación en modalidad de teleformación Servicio web de Seguimiento. Kit de Auto-evaluación Notas para desarrolladores

Transcript of Notas para desarrolladores_20140827.pdf

  • Notas para desarrolladores

    Pgina 1 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Servicio web de Seguimiento. Kit de Auto-evaluacin Notas para desarrolladores

  • Notas para desarrolladores

    Pgina 2 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Informacin del documento Documento Notas para desarrolladores Archivo Notas para desarrolladores_20140827.doc Distribucin

    Documentacin relacionada Documentacin base de cada una de las aplicaciones de Desarrollo Formacin.

    Control de versiones Fecha Responsable Versin Modificaciones 2014-08-27 Equipo de formacin 20140827 Redaccin inicial del documento Control Inicial del Documento Fecha Responsable Versin Comentarios 2014-08-27 Equipo de formacin 20140827 Creacin del documento inicial

  • Notas para desarrolladores

    Pgina 3 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    ndice

    ______________________________________________________________ Captulo 1. Introduccin. ________________________________________ 5 Captulo 2. Modelo de datos _____________________________________ 6 Captulo 3. Kit de auto-evaluacin ________________________________ 7

    3.1. Lnea de comandos ________________________________ 8 3.1.1. Ejemplos de lneas de comandos ______________________ 9

    3.2. Configuracin ____________________________________ 10

    3.3. Archivo de procesamiento por lotes (batch) _____________ 11

    3.4. Estructura de la prueba ____________________________ 12

    Captulo 4. Infraestructuras adicionales __________________________ 14 4.1. Generacin del truststore ___________________________ 14

    4.1.1. Obtencin del certificado digital de servidor _____________ 14 4.1.2. Creacin del almacn de claves (Truststore) ____________ 24

    Captulo 5. Informacin de contacto _____________________________ 28

  • Notas para desarrolladores

    Pgina 4 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    ndice de ilustraciones Ilustracin 1.- rbol XML (modelo de datos) del seguimiento de acciones

    formativas ....................................................................................................................... 6 Ilustracin 2.- Estructura de directorios del kit de auto-evaluacin ........................ 7 Ilustracin 3.- Fichero de certificado digital en el sistema de archivos ................. 15 Ilustracin 4.- Fichero de backup del certificado digital en el sistema de archivos

    ........................................................................................................................................ 15 Ilustracin 5.- Extraccin clave pblica (openssh) ...................................................... 16 Ilustracin 6.- Conversin de formatos de certificado (openssh) ........................... 17 Ilustracin 7.- Detalles de la comunicacin segura de datos en Internet Explorer

    ........................................................................................................................................ 18 Ilustracin 8.- Informacin del certificado digital del sitio web en Internet

    Explorer ........................................................................................................................ 18 Ilustracin 9.- Inicio del proceso de importacin de un certificado digital

    (Internet Explorer) .................................................................................................... 19 Ilustracin 10.- Inicio del asistente de importacin de un certificado digital

    (Internet Explorer) .................................................................................................... 19 Ilustracin 11.- Asistente de importacin de certificado digital (Internet

    Explorer) ...................................................................................................................... 20 Ilustracin 12.- Finalizacin del asistente de importacin de certificado digital

    (Internet Explorer) .................................................................................................... 20 Ilustracin 13.- Mensaje de operacin correctamente realizada (Internet

    Explorer) ...................................................................................................................... 21 Ilustracin 14.- Acceso a la configuracin de certificados digitales (Internet

    Explorer) ...................................................................................................................... 21 Ilustracin 15.- Seleccin del certificado digital a exportar (Internet Explorer) 22 Ilustracin 16.- Inicio del asistente de exportacin de certificados digitales

    (Internet Explorer) .................................................................................................... 22 Ilustracin 17.- Eleccin del formato de exportacin (Internet Explorer)........... 23 Ilustracin 18.- Especificacin de la ruta de acceso (y nombre del fichero) a

    utilizar en la exportacin (IE) .................................................................................. 23 Ilustracin 19.- Paso ltimo del asistente de exportacin de certificados digitales

    (Internet Explorer) .................................................................................................... 24 Ilustracin 20.- Finalizacin del asistente de exportacin de certificados digitales

    (Internet Explorer) .................................................................................................... 24 Ilustracin 21.- Ubicacin del certificado digital en el sistema de archivos. ........ 25 Ilustracin 22.- Proceso de generacin del almacn de claves con la utilidad

    keytool (1/4) .................................................................................................................. 26 Ilustracin 23.- Proceso de generacin del almacn de claves con la utilidad

    keytool (2/4) .................................................................................................................. 26 Ilustracin 24.- Proceso de generacin del almacn de claves con la utilidad

    keytool (3/4) .................................................................................................................. 26 Ilustracin 25.- Proceso de generacin del almacn de claves con la utilidad

    keytool (4/4) .................................................................................................................. 27 Ilustracin 26.- Fichero de almacn de claves en el sistema de archivos.............. 27

  • Notas para desarrolladores

    Pgina 5 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Captulo 1. Introduccin.

    El presente documento pretende servir de ayuda a las pruebas que, desde los diferentes centros/entidades de formacin y con el objetivo de su acreditacin como centros de formacin en modalidad de teleformacin, se llevarn a cabo en el transcurso del desarrollo del servicio web de seguimiento a ser ofertado desde sus respectivas plataformas online. Para tales pruebas, se pone a disposicin de los centros un kit de auto-evaluacin que permitir simular la operativa del seguimiento de las acciones formativas autorizadas a estos.

    La correcta operativa de este servicio web ser condicin ineludible para la resolucin, favorable al centro, de la solicitud de acreditacin que este haya tramitado hacia el Servicio Pblico de Empleo Estatal (SPEE)

  • Notas para desarrolladores

    Pgina 6 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Captulo 2. Modelo de datos

    El modelo de datos que se facilita describe los diferentes elementos que componen los datos que el Servicio Pblico de Empleo Estatal considera necesarios para el seguimiento de las acciones formativas en las que se imparten las especialidades formativas en las que el centro de formacin est acreditado o inscrito.

    El modelo incluye la denominacin de las etiquetas, su descripcin, el tipo de dato, su obligatoriedad y en su caso los valores posibles.

    Siguiendo este modelo cada centro de formacin facilitar los datos sobre sus acciones formativas.

    Ilustracin 1.- rbol XML (modelo de datos) del seguimiento de acciones formativas

    Se entiende que cada centro de formacin mantiene estos datos de forma coherente, con independencia del servicio web de seguimiento del Servicio Pblico de Empleo Estatal. Estos datos ya existentes, simplemente, se facilitarn siguiendo el modelo descrito.

    El modelo incluye restricciones, en especial en los valores codificados, que intencionadamente no estn incluidas en la definicin del WSDL. El motivo no es otro que tratar de reducir en la medida de lo posible el nmero de cambios en la definicin del servicio web.

  • Notas para desarrolladores

    Pgina 7 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Captulo 3. Kit de auto-evaluacin

    El programa de autoevaluacin le permitir probar su implementacin del servicio web de seguimiento de forma anloga a como se validar su disponibilidad en el trmite de acreditacin o inscripcin del centro de formacin. El kit se compone de un fichero comprimido ZIP con el siguiente contenido:

    Un programa Java que realiza la prueba de verificacin, embebido en el componente ProvCentTFVal.jar.

    Un fichero XML con los datos necesarios para la prueba (pruebaDatosDelCentro_20140619.xml).

    Un archivo de proceso por lotes con la invocacin al programa (run.cmd).

    Libreras necesarias para el programa Java, ubicadas en el subdirectorio lib.

    Ficheros de configuracin, a personalizar segn el entorno, ubicados a partir del subdirectorio config.

    Una vez descomprimido, la estructura de directorios creada ser la siguiente:

    Ilustracin 2.- Estructura de directorios del kit de auto-evaluacin Para su ejecucin se precisa un entorno Java versin 1.6 o posterior. El programa Java est pensado para ejecutarse desde el smbolo del sistema de un equipo que est comunicado con el servicio web. La correcta operativa del kit de auto-evaluacin requerir de los siguientes datos:

    URL que identifica, de manera unvoca, al servicio WEB de seguimiento.

    Credenciales de acceso (password). Fichero XML con datos de prueba. Tipo de almacn de claves (truststore) donde deber haber sido

    almacenada la clave pblica del certificado digital del servidor sobre el que realizar las pruebas.

    Ruta de acceso al mencionado almacn dentro del sistema de archivos. Password de acceso al contenido del truststore.

  • Notas para desarrolladores

    Pgina 8 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Finalmente, se recuerda que para la autentificacin al servicio web se utilizar el estndar Web Services Security UsernameToken Profile 1.0 OASIS Standard 200401, March 2004. El elemento wsse:Username ser SEPE (sin comillas) como cuando lo invoque el Servicio Pblico de Empleo Estatal. El elemento wsse:Password ser el segundo argumento de la lnea de comandos. Se emplearn credenciales de tipo wsse:PasswordText.

    3.1. Lnea de comandos

    La lnea de comandos a utilizar para la correcta realizacin de la prueba es mostrada a continuacin (Importante: por razones de legibilidad queda visualizada en varias lneas, si bien en la prctica se corresponder nicamente con una nica lnea):

    java -jar ProvCentTFVal.jar

    -Djavax.net.ssl.trustStoreType= -Djavax.net.ssl.trustStore= -Djavax.net.ssl.trustStorePassword=

    donde: Tipo del almacn de certificados con claves pblicas (truststore),

    donde se almacenar la clave pblica de nuestro servidor. En los ejemplos aqu utilizados, el valor especificado ser jks (Java key store) Parmetro obligatorio si el endpoint especificado en especifica un acceso bajo capa segura (la URL comenzara por https://). En caso contrario, no ser necesaria su especificacin. Vase el apartado titulado Generacin del truststore.

    Ruta de acceso al almacn de claves. Parmetro obligatorio si el endpoint especificado en especifica un acceso bajo capa segura (la URL comenzara por https://). En caso contrario, no ser necesaria su especificacin. Vase el apartado titulado Generacin del truststore.

    Contrasea para el acceso al contenido del almacn de claves.

    Parmetro obligatorio si el endpoint especificado en especifica un acceso bajo capa segura (la URL comenzara por https://) y siempre que, durante el proceso de generacin de almacn de claves, se especificase contrasea para el acceso a su contenido. En caso contrario, no ser necesaria su especificacin. Vase el apartado titulado Generacin del truststore.

    URL que identifica al endpoint del servicio web de seguimiento. Parmetro obligatorio.

    Credencial (password) con el que se autentica el usuario en el servicio

    web. Parmetro obligatorio.

  • Notas para desarrolladores

    Pgina 9 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Ruta de acceso al archivo XML de datos de prueba (proporcionado en el ZIP) Parmetro obligatorio.

    3.1.1. Ejemplos de lneas de comandos

    En este apartado ofreceremos dos ejemplos de lnea de comandos que permita la realizacin de la prueba.

    3.1.1.1. Acceso por capa no-segura (HTTP) La siguiente lnea de comandos (dividida en este documento para una mayor legibilidad) llevar a cabo la ejecucin de la prueba:

    java -jar ProvCentTFVal.jar -Djavax.net.ssl.trustStoreType= -Djavax.net.ssl.trustStore= -Djavax.net.ssl.trustStorePassword= http://plataforma.com/seguimiento 12abcd#24 c:\datosPrueba.xml

    En este caso, nicamente fue necesaria la especificacin de los tres parmetros siguientes

    http://plataforma.com/seguimiento 12abcd#24 c:\datosPrueba.xml

    Al respecto de los switches D definidos en lnea de comandos (y mostrados a continuacin)

    -Djavax.net.ssl.trustStoreType= -Djavax.net.ssl.trustStore= -Djavax.net.ssl.trustStorePassword=

    es importante resaltar que NO sern tenidos en cuenta por el kit en el contexto no seguro (http) que nos ocupa, pudiendo:

    a) No ser especificados (eliminndolos de la propia lnea de comandos), b) ser especificados sin valor alguno o, finalmente, c) ser especificados con aquellos valores establecidos para las pruebas en

    modo https (modo seguro).

    3.1.1.2. Acceso por capa segura (HTTPS) En este caso, se requerir la especificacin completa del truststore, almacn de claves donde se localizar la clave pblica del servidor donde fue publicado el servicio web. Vase el apartado titulado Generacin del truststore. La siguiente lnea de comandos llevar a cabo la ejecucin de la prueba:

    java -jar ProvCentTFVal.jar -Djavax.net.ssl.trustStoreType=jks -Djavax.net.ssl.trustStore=c:\miAlmacenClaves.jks -Djavax.net.ssl.trustStorePassword=123456#24ABCD https://plataforma.com/seguimiento 12abcd#24 c:\datosPrueba.xml

  • Notas para desarrolladores

    Pgina 10 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    En este caso, la especificacin de las variables especificadas sera la siguiente:

    jks c:\miAlmacenClaves.jks 123456#24ABCD https://plataforma.com/seguimiento 12abcd#24 c:\datosPrueba.xml

    3.2. Configuracin

    En esta nueva versin del kit de auto-evaluacin puede ser necesaria la configuracin de parte de su infraestructura. En el caso de que la conexin hacia el servicio web requiera establecer los datos de configuracin del proxy, esta informacin deber ser especificada en el archivo

    /config/repository/axis2.xml donde se correspondera con la ruta bajo la que fue descomprimido el contenido del kit. Dentro del mencionado archivo XML, deber acudirse a la estructura identificada por el nombre de parmetro Proxy (inicialmente comentada):

    Para definir la salida a travs de un proxy, se deber eliminar los comentarios que rodean a la totalidad de la estructura XML anterior. A continuacin debern establecerse, segn proceda, los valores para los nodos , , y . El siguiente ejemplo muestra la manera en cumplimentar el mencionado bloque:

    proxy.midominio.com 8080 miusuario mipassword

  • Notas para desarrolladores

    Pgina 11 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Importante: en caso de que no se requiera configurar un proxy, mantenga comentado este bloque XML, lo que garantizar una correcta operativa de la infraestructura. De igual forma, si la especificacin de los datos de usuario (y password) no fuese requerida, ambos nodos ( y ) deberan mantenerse comentados.

    3.3. Archivo de procesamiento por lotes (batch)

    Para facilitar las pruebas, se proporciona un archivo de proceso por lotes (run.cmd) con el contenido que se muestra a continuacin:

    set TRUST_STORE_TYPE= set TRUST_STORE_PATH= set TRUST_STORE_PASSWORD= set WEB_SERVICE= set PASSWORD= set XML_PATH= java -Djavax.net.ssl.trustStoreType=%TRUST_STORE_TYPE% -Djavax.net.ssl.trustStore=%TRUST_STORE_PATH% -Djavax.net.ssl.trustStorePassword=%TRUST_STORE_PASSWORD% -jar ProvCentTFVal.jar %WEB_SERVICE% %PASSWORD% %XML_PATH%

    Las cinco primeras lneas se corresponden con sentencias de asignacin de las variables de entorno utilizadas en la ltima de las lneas que compone el mencionado script (la lnea de comandos que ser finalmente la que lleve a cabo la prueba) El equipo de desarrollado deber especificar, para cada una de ellas, los valores adecuados segn su desarrollo, de acuerdo a la siguiente forma:

    set =

    donde identifica a cada una de las variables de entorno definidas en el archivo y el valor a asignar para cada una de ellas. Ntese que cada una de ellas se corresponde con uno de los parmetros de la lnea de comandos, descritos en un anterior apartado.

    El siguiente ejemplo muestra una definicin del archivo run.cmd donde se ha parametrizado la totalidad de las variables, necesarias para la ejecucin de las pruebas del servicio web de seguimiento bajo canal seguro (https://):

    set TRUST_STORE_TYPE=jks set TRUST_STORE_PATH=c:\almacenes\miTruststore.jks set TRUST_STORE_PASSWORD=12537629#21 set WEB_SERVICE=https://miplataformaonline.com/teleformacion/seguimiento set PASSWORD=34#32abbb344 set XML_PATH=c:\datosProveedorCentro.xml java -Djavax.net.ssl.trustStoreType=%TRUST_STORE_TYPE% -Djavax.net.ssl.trustStore=%TRUST_STORE_PATH% -Djavax.net.ssl.trustStorePassword=%TRUST_STORE_PASSWORD% -jar ProvCentTFVal.jar %WEB_SERVICE% %PASSWORD% %XML_PATH%

    En la especificacin de la lnea de comandos del script se asume que la ruta de acceso a la mquina virtual (java) se ha incluido dentro del path del sistema. En caso de no ser as, incluya la mencionada ruta de acceso en el path o bien haga preceder, dentro del script y al ejecutable java, la ruta de acceso al mismo.

  • Notas para desarrolladores

    Pgina 12 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Creado para su uso especfico en plataformas Microsoft Windows, su sencillez permite ser fcilmente portado a un script de similares caractersticas dentro de aquel sistema operativo bajo el que se termine ejecutando el kit.

    3.4. Estructura de la prueba

    El fichero proporcionado en el empaquetado ZIP, pruebaDatosDelCentro.xml, que tambin se incluye contiene una prueba equivalente a la que se pasar en la acreditacin o inscripcin. Debe obtener resultado correcto en todos los pasos. El test queda compuesto por las siguientes pruebas:

    obtenerDatosCentro con una password incorrecta. Se invocar al WS con usuario: SEPE (este es el usuario correcto que se emplear en el seguimiento) y, a modo de credencial errnea, se utilizar el literal: EPESSEPECESEPE.

    obtenerDatosCentro - datos identificativos correctos. Se solicitarn los datos identificativos y el resultado ser correcto si coinciden con los datos identificativos del Fichero XML con datos de prueba.

    crearCentro - ORIGEN_CENTRO='20' y CODIGO_CENTRO='9999999999'. Se crear el centro de formacin asignndole la identificacin 20 9999999999. Para poder crear el centro, ste no debe tener acciones.

    obtenerDatosCentro. Se obtendrn los datos del centro de formacin y se comprobar que su identificacin es: ORIGEN_CENTRO='20' y CODIGO_CENTRO='9999999999'.

    obtenerListaAcciones. Se solicitar la lista de acciones formativas que debe resultar vaca puesto que se acaba de crear el centro de formacin.

    crearAccion. Se solicitar la creacin de las acciones formativas que estn en el fichero XML con datos de prueba. Esta prueba se repetir tantas veces como acciones formativas haya en el XML de prueba. El fichero XML de prueba incluido en el kit tiene acciones formativas en diferentes situaciones con los elementos del modelo presentes o ausentes apropiados para cada situacin.

    obtenerListaAcciones. Se solicitar la lista de acciones formativas que debe coincidir con el XML de prueba.

    crearAccion Se intentar crear una accin formativa ya creada, que debe dar error para que el resultado de la prueba sea correcto.

    obtenerAccion. Se obtendrn, una por una, todas las acciones formativas del fichero XML de prueba y se comprobar que la informacin devuelta coincide con la del XML de prueba.

  • Notas para desarrolladores

    Pgina 13 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    eliminarAccion. Se eliminarn una por una todas las acciones formativas del fichero XML de prueba.

    Para cada prueba se mostrar los literales OK, si el resultado obtenido fue el esperado, o KO si no lo fue. Se considerar como disponible todo servicio web que, tras la ejecucin, obtenga el valor OK para todas las pruebas.

  • Notas para desarrolladores

    Pgina 14 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Captulo 4. Infraestructuras adicionales

    4.1. Generacin del truststore

    La operativa del seguimiento de centros, se llevar a cabo a travs de un canal cifrado que permita la comunicacin segura entre el Servicio Pblico de Empleo Estatal (SEPE) y el centro. Con el fin de garantizar tal operativa, el punto de acceso (endpoint) al servicio web de seguimiento deber comenzar, ineludiblemente, por https://, siendo el desarrollo del servicio web coherente con tal requerimiento. Durante el transcurso de las pruebas, el equipo de desarrollo podr utilizar el kit de auto-evaluacin para llevar a cabo las pruebas tanto por canal no seguro (http://) como por canal seguro (https://), si bien ser este ltimo contexto, como se mencionaba anteriormente, el nico aceptado durante el proceso de acreditacin del centro. Para llevar a cabo las pruebas bajo canal seguro, se deber llevar a cabo, con anterioridad, las siguientes tareas:

    1. Obtencin de la clave pblica del certificado digital del servidor desde el que se ejecutar el servicio web de seguimiento,

    2. creacin del truststore (almacn de claves) necesario para, finalmente, 3. almacenar en este la clave pblica obtenida en el primer punto.

    4.1.1. Obtencin del certificado digital de servidor En este apartado describiremos la forma en cmo disponer de la clave pblica del certificado digital de nuestro servidor, con el fin de ser incorporada, posteriormente, en el almacn de claves (truststore) a referenciar en las pruebas. Al respecto, sern descritos los siguientes escenarios (de todos los posibles) para la obtencin de dicha clave:

    - Se dispone de certificado digital (*.cer/*.crt/*.der). - Se dispone de un archivo de backup que contiene el certificado digital

    (*.pfx/*.p12). - No se dispone de un archivo que contenga el certificado digital (o su clave pblica),

    obteniendo la clave a partir de un navegador web.

    4.1.1.1. Se dispone del certificado digital En este caso, se entiende como el ms habitual, se dispondr del certificado digital descargado en formato.

  • Notas para desarrolladores

    Pgina 15 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Ilustracin 3.- Fichero de certificado digital en el sistema de archivos Sin necesidad de actuacin previa sobre el certificado (conversin en el formato de codificacin, etc.), el certificado podra ser incluido en el truststore a utilizar en las pruebas del kit.

    4.1.1.2. Se dispone de un archivo de backup del certificado digital En este caso, se asume que se dispone de un backup del certificado digital, almacenado en formato PKCS#12 (*.pfx/*.p12)

    Ilustracin 4.- Fichero de backup del certificado digital en el sistema de archivos

  • Notas para desarrolladores

    Pgina 16 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Haremos uso, para esta operacin, de la infraestructura de cdigo abierto OpenSSL (http://www.openssl.org/), cuya utilidad homnima satisfar los requerimientos aqu exigidos. El ejemplo ha sido realizado desde un entorno Microsoft Windows, haciendo uso de la distribucin referenciada, para esta plataforma y en el mencionado proyecto, bajo el enlace https://www.openssl.org/related/binaries.html. Una vez instalado este toolkit, la primera tarea ser obtener la clave pblica del certificado, siendo esta exportada al formato PEM:

    openssl pkcs12 -in -clcerts -nokeys -out

    donde:

    Fichero que contiene el certificado digital, codificado en el formato PKCS#12, del que extraer la clave pblica.

    Fichero donde se almacenar, tras la ejecucin, la clave

    pblica del certificado, codificada en formato PEM.

    Para el ejemplo que nos ocupa, esta sera la lnea de comandos, a partir de la cual se nos solicitar la password con la que el certificado fue previamente exportado:

    Ilustracin 5.- Extraccin clave pblica (openssh)

    Tras ello, habremos obtenido la clave pblica, en formato PEM. Seguidamente, se deber realizar una conversin de formato. El formato de salida ser DER (Distinguished Encoding Rules), codificacin esta admitida por la herramienta de gestin de keystores/truststores (keytool) utilizada. Para llevar a cabo la conversin, la lnea de comandos ser:

    openssl x509 -outform der -in -out

    donde:

    Fichero de entrada donde estar contenida la clave pblica del certificado, codificada en formato PEM.

  • Notas para desarrolladores

    Pgina 17 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Fichero de salida donde se almacenar la clave pblica del certificado, convertida a formato DER (*.der)

    Continuando con el ejemplo que nos ocupa, la ejecucin de la conversin ser llevada a cabo de la siguiente forma:

    Ilustracin 6.- Conversin de formatos de certificado (openssh) Con ello, finalizaremos el proceso de extraccin de la clave pblica de nuestro certificado, permitiendo ser almacenada en el truststore que crearemos posteriormente.

    4.1.1.3. No se dispone de certificado digital de servidor En el caso de que no disponer del certificado digital de nuestro servidor, podremos hacer uso de un navegador web (en el ejemplo el utilizado es Microsoft Internet Explorer, si bien la mayora de los navegadores ofrecen funcionalidades similares) para obtener la clave pblica a incluir en nuestro almacn de claves de confianza (truststore). El ejemplo aqu descrito obtendr la clave pblica del certificado de servidor de la Sede electrnica del Servicio Pblico de Empleo Estatal. En este supuesto, supondremos que disponemos de un servicio web de seguimiento con su punto de acceso (endpoint) expresado por la siguiente URL:

    https://sede.sepe.gob.es/teleformacion/seguimiento Abriremos el navegador la anterior URL o aquella, simplificada, mostrada a continuacin:

    https://sede.sepe.gob.es/ La siguiente captura muestra el resultado de esta accin:

  • Notas para desarrolladores

    Pgina 18 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Ilustracin 7.- Detalles de la comunicacin segura de datos en Internet Explorer Al hacer clic sobre el icono obtendremos, en el rea resaltada en rojo, la informacin bsica del certificado digital de servidor:

    Ilustracin 8.- Informacin del certificado digital del sitio web en Internet Explorer

  • Notas para desarrolladores

    Pgina 19 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Dentro de ese rea, haremos clic sobre la opcin Ver certificados, accin sta que desencadenar la visualizacin de la siguiente ventana:

    Ilustracin 9.- Inicio del proceso de importacin de un certificado digital (Internet Explorer) Procederemos, a continuacin, a instalar el certificado en nuestro navegador, haciendo clic sobre la opcin Instalar certificado, lo que iniciar el asistente de importacin de certificados:

    Ilustracin 10.- Inicio del asistente de importacin de un certificado digital (Internet Explorer)

  • Notas para desarrolladores

    Pgina 20 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Haremos clic en Siguiente para avanzar en el proceso de importacin:

    Ilustracin 11.- Asistente de importacin de certificado digital (Internet Explorer)

    Nuevamente haremos clic en el botn Siguiente, manteniendo la seleccin establecida por defecto por el navegador. Se visualizar la siguiente pantalla:

    Ilustracin 12.- Finalizacin del asistente de importacin de certificado digital (Internet Explorer)

    Pulsando Finalizar para dar por concluido el proceso. El navegador mostrar, en caso de xito, la siguiente MessageBox:

  • Notas para desarrolladores

    Pgina 21 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Ilustracin 13.- Mensaje de operacin correctamente realizada (Internet Explorer)

    Una vez que tenemos el certificado importado en uno los almacenes del navegador, procederemos a su exportacin. Para ello, procederemos acudiremos a la opcin de men HerramientasOpciones de Internet, eligiendo la solapa Contenidos que se visualiza a continuacin:

    Ilustracin 14.- Acceso a la configuracin de certificados digitales (Internet Explorer) Haremos clic en la opcin Certificados, para acceder a los almacenes de certificados del navegador. Dentro de la esta nueva ventana, seleccionaremos la solapa Otras personas.

  • Notas para desarrolladores

    Pgina 22 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Ilustracin 15.- Seleccin del certificado digital a exportar (Internet Explorer) Tras el anterior proceso de importacin, el certificado ser visible en la lista de certificados correspondientes a esta categora. A efectos de su exportacin a archivo, procederemos a su seleccin dentro de la mencionada lista, para seguidamente hacer clic en la opcin Exportar. Tal accin iniciar el procedimiento de exportacin de certificados, que nos permitir exportar la clave pblica previamente almacenada:

    Ilustracin 16.- Inicio del asistente de exportacin de certificados digitales (Internet Explorer)

  • Notas para desarrolladores

    Pgina 23 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Haremos clic en Siguiente para avanzar en el proceso de exportacin:

    Ilustracin 17.- Eleccin del formato de exportacin (Internet Explorer) Mantendremos seleccionada la opcin establecida por defecto (DER binario codificado X.509) y volveremos a elegir la opcin Siguiente:

    Ilustracin 18.- Especificacin de la ruta de acceso (y nombre del fichero) a utilizar en la exportacin (IE) Con la opcin Examinar se nos permitir especificar la ruta de acceso as como el nombre del archivo en el que la clave ser exportada:

  • Notas para desarrolladores

    Pgina 24 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Ilustracin 19.- Paso ltimo del asistente de exportacin de certificados digitales (Internet Explorer) Finalmente, pulsaremos Finalizar para dar por concluida la exportacin, situacin esta que ser confirmada por la MessageBox siguiente:

    Ilustracin 20.- Finalizacin del asistente de exportacin de certificados digitales (Internet Explorer)

    4.1.2. Creacin del almacn de claves (Truststore) Tras la exportacin a archivo de la clave pblica, el siguiente paso sera la creacin del almacn de claves (truststore) a utilizar desde el kit de auto-evaluacin. Es en l donde almacenaremos la clave pblica del certificado digital de nuestro servidor, hacindolo disponible, posteriormente, desde las pruebas. Reutilizaremos el certificado obtenido en el ejemplo anterior (sedeElectronicaSepe.cer) para ilustrar la tarea que nos ocupa, que fue almacenado en el directorio raz de nuestro disco duro local:

  • Notas para desarrolladores

    Pgina 25 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Ilustracin 21.- Ubicacin del certificado digital en el sistema de archivos. Utilizaremos la herramienta keytool para generar el truststore y llevar a cabo el almacenamiento, en este, de la clave publica obtenida. Esta utilidad forma parte del Java SE Development Kit (JDK), debiendo estar accesible desde lnea de comandos. Al respecto de lo anterior, se recomienda la inclusin de la ruta de acceso al directorio bin, del mencionado kit de desarrollo, en la variable PATH. La sintaxis de la utilidad keytool, dependiendo de la versin de JDK utilizada, podr variar, por lo que recomienda la consulta de la documentacin de ayuda disponible pare este ltimo para hacer un adecuado uso de ella. Para explicar la descripcin de este proceso de creacin de truststore se ha utilizado la versin 1.6 del mencionado kit, cuya lnea de comandos se describe a continuacin:

    keytool -import -file -alias -keystore

    donde:

    Fichero que contendr la clave pblica del certificado digital del servidor que oferta el servicio web (*.der/*.cer/*.crt)

    Nombre lgico que permitir identificar la clave dentro del

    almacn de claves. Servir para identificar unvocamente la clave dentro del propio almacn.

    Path completo (nombre de archivo incluido) que contendr

    el almacn de claves (truststore). Generaremos un almacn nuevo.

    Por convenio, y para un almacn de tipo Java key store (JKS), la extensin del archivo sera .jks. Vase las variables y en el apartado Lnea de comandos. A modo de ejemplo, ejecutaremos la siguiente lnea de comandos, encaminada a la generacin del almacn de claves de nombre (arbitrario) truststore.jks.

  • Notas para desarrolladores

    Pgina 26 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Ilustracin 22.- Proceso de generacin del almacn de claves con la utilidad keytool (1/4)

    La utilidad nos solicitar, por duplicado, la password para el almacn de claves (este sera el valor a ser especificado para el parmetro de la lnea de comandos del kit):

    Ilustracin 23.- Proceso de generacin del almacn de claves con la utilidad keytool (2/4) A continuacin, se nos preguntar si confiamos en el certificado a incluir en el almacn de claves, a lo que contestaremos afirmativamente:

    Ilustracin 24.- Proceso de generacin del almacn de claves con la utilidad keytool (3/4)

  • Notas para desarrolladores

    Pgina 27 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Tras ello, se nos mostrar el mensaje informando de la correcta inclusin de la clave en el almacn recin creado.

    Ilustracin 25.- Proceso de generacin del almacn de claves con la utilidad keytool (4/4) La siguiente captura ilustra la creacin, en disco, del almacn truststore.jks.

    Ilustracin 26.- Fichero de almacn de claves en el sistema de archivos Tras la creacin, ya estaremos en disposicin de realizar las pruebas de nuestro servicio web bajo capa segura desde el kit de auto-evaluacin.

  • Notas para desarrolladores

    Pgina 28 de 28 20140827

    Subdireccin General de Tecnologa de la Informacin y Comunicaciones

    rea de Desarrollo - Formacin Acreditacin de centros de formacin en

    modalidad de teleformacin

    Captulo 5. Informacin de contacto

    Cualquier consulta o comentario, en relacin a lo tratado en el presente documento, podr ser dirigida al siguiente buzn de correo electrnico:

    [email protected]