Ir al contenido

Integración mediante KMIP

HSM es compatible con el protocolo KMIP(Key Management Interoperability Protocol) en su versión 1.4 con los siguientes perfiles:

  • Servidor base
  • Servidor de ciclo de vida de claves simétricas
  • Servidor Symmetric Key Foundry
  • Servidor de ciclo de vida de claves asimétricas
  • Servidor criptográfico básico
  • Servidor criptográfico avanzado

El puerto utilizado es el TCP 5696.

La codificación de los mensajes debe utilizar el esquema TTLV(Tag, Type, Length, Value). Como se describe en la especificación, este esquema está diseñado para minimizar el uso de ciclos de CPU y memoria en los clientes que codifican y decodifican mensajes KMIP, así como para generar una alineación optimizada para procesadores de 32 y 64 bits. Minimizar el uso de ancho de banda en el mecanismo de transporte es una preocupación secundaria.

Para establecer una sesión KMIP sobre TLS, el usuario propietario de la partición en el HSM debe estar configurado para TFA (autenticación de dos factores) mediante certificados x.509.

Información

Los detalles de configuración del cliente KMIP con los ajustes de dirección y puerto del HSM, las rutas de los archivos de certificados y claves, las credenciales de usuario del HSM, etc., deben realizarse de acuerdo con la documentación facilitada por el fabricante o desarrollador del software cliente KMIP.

Son necesarios algunos requisitos - archivo con la clave privada del usuario (p. ej: rsa2k.pem), para uso de cliente KMIP. - con el certificado X.509 del usuario (p. ej: rsa2k_cert.pem), para uso de cliente KMIP y el HSM. - con el certificado TLS del HSM (p. ej: hsm_cert.pem), para uso de cliente KMIP.

La generación de la clave privada del usuario y de los archivos de certificados X.509 queda fuera de este ámbito.

Certificado TLS de HSM (servidor KMIP) puede obtenerse utilizando el hsmcon:

hsmcon 127.0.0.1 -g hsm_cert.pem

Información

HSM genera un nuevo certificado TLS autofirmado en cada reinicio cuando no está configurado con un par clave-certificado específico.

HSM no funciona con respuestas asíncronas (desde el punto de vista del protocolo y de la sesión). Se mantiene la misma conexión durante todo el proceso.

Para preparar el usuario HSM para que lo utilice el software KMIP, siga los pasos que se indican a continuación.

  1. Edita los atributos del usuario para usar TFA.

    Dinamo - Consola de gestión remota v. 4.7.33.52 2018 (c) Dinamo Networks
    
    HSM 127.0.0.1 e - Motor 5.0.28.0 (DCD) - TCA0000000 - ID maestro
    
    Usuarios - Atributos
    
    ID de usuario: ukmip
    
    Tipo - Operador
    Bloqueado - no
    Partición MxN auth - no
    Two Factor Auth - no
    
    Cambiar:
    1 - Tipo
    2 - Bloque
    3 - Autenticación de dos factores
    0 - Menú principal
    Opción : 3_
    
  2. Indique el archivo x.509 que se utilizará.

    El cliente KMIP también debe tener acceso a la clave privada correspondiente al certificado x.509 proporcionado.

    Dinamo - Consola de gestión remota v. 4.7.33.52 2018 (c) Dinamo Networks
    
    HSM 127.0.0.1 e - Motor 5.0.28.0 (DCD) - TCA0000000 - ID maestro
    
    Usuarios - Atributos
    
    ID de usuario: ukmip
    
    Establecer autenticación de dos factores (y/[n]): y
    
    Tipo:
    1 - OATH Evento OTP
    2 - OATH Hora OTP
    3 - X.509
    Opción : 3
    
    Archivo de entrada X.509 (local) : rsa2k_cert.pem
    
    Autenticación de dos factores para el usuario 'ukmip' configurada correctamente.
    
    Pulse la tecla ENTER para continuar...
    
  3. Pruebe el acceso del usuario al HSM utilizando TFA con el certificado.

    El archivo de clave privada del usuario debe estar disponible.

    hsmcon 127.0.0.1 ukmip -pri rsa2k.pem -pri_cer rsa2k_cert.pem -hsm_cer hsm_cert.pem
    

Operaciónpor lotes

En sección 6.4 del documento KMIP el campo ID único de lote se define como OPCIONAL y sección 7.2, Tabla 283 - Estructura de los elementos del lote de solicitudes esta partida se define como REQUERIDO cuando Recuento de lotes > 1.

Si el cliente KMIP que se comunica con el HSM no cumple este requisito de la norma, recibirá un código de error MISSING-DATA en la respuesta.

Nota: se sabe que algunas versiones de la implementación del cliente PyKMIP tienen este fallo.