Integración#
El capítulo describe procesos para diversas tareas y se dirige a todos los grupos de usuarios.
PKCS#11#
El NetHSM soporta el estándar PKCS#11. El controlador necesario está disponible en el repositorio ` <https://github.com/Nitrokey/nethsm-pkcs11>` __. El repositorio contiene el código fuente y las bibliotecas, para diferentes sistemas operativos.
La guía PKCS#11 describe en detalle cómo utilizarlos.
Importante
Este controlador es todavía una implementación de prueba de concepto temprana que sólo implementa las funciones necesarias para operar servidores TLS.
Desarrollo y pruebas#
Una instancia pública de demostración de NetHSM está disponible en nethsmdemo.nitrokey.com.
Como alternativa, puede ejecutar el contenedor Docker NetHSM localmente. El contenedor NetHSM requiere una virtualización anidada para una fuerte separación con otros contenedores. Por lo tanto, para iniciar un contenedor NetHSM necesita un host Linux con /dev/kvm disponible. Ejecute este comando:
$ sudo docker run --rm -ti --device=/dev/net/tun:/dev/net/tun --cap-add=NET_ADMIN -p8443:8443 nitrokey/nethsm:testing
Integración en la aplicación personalizada#
Para integrar el NetHSM en las propias aplicaciones personalizadas, hay bibliotecas de clientes disponibles para casi todos los lenguajes de programación. Por lo tanto, recomendamos utilizar OpenAPI Generator.
La lista de todos los idiomas disponibles se puede recuperar de la siguiente manera.
$ docker run --pull --rm -ti openapitools/openapi-generator-cli list -i stable
El cliente NetHSM puede ser generado para su lenguaje de programación de la siguiente manera.
$ docker run --rm -ti -v "${PWD}/out:/out" openapitools/openapi-generator-cli generate -i=https://nethsmdemo.nitrokey.com/api_docs/nethsm-api.yaml -o out -g javascript
El código cliente generado, en este ejemplo JavaScript, se creará en el directorio ./out/
. Esta carpeta también contiene la documentación necesaria para su uso.
REST-API#
La especificación de la API de NetHSM’está disponible en formato OpenAPI, y puede ser inspeccionada y probada en el Buscador de API.