Integracja#
Rozdział opisuje procesy dla różnych zadań i skierowany jest do wszystkich grup użytkowników.
PKCS#11#
NetHSM obsługuje standard PKCS#11. Wymagany sterownik jest dostępny w repozytorium ` <https://github.com/Nitrokey/nethsm-pkcs11>` __. Repozytorium zawiera kod źródłowy i biblioteki, dla różnych systemów operacyjnych.
Przewodnik PKCS#11 szczegółowo opisuje jak z nich korzystać.
Ważne
Ten sterownik to wciąż wczesna implementacja Proof of Concept, która implementuje tylko te funkcje, które są niezbędne do obsługi serwerów TLS.
Rozwój i testowanie#
Publiczna instancja demonstracyjna NetHSM jest dostępna pod adresem nethsmdemo.nitrokey.com.
Alternatywnie można uruchomić NetHSM jako ` kontener Docker <https://hub.docker.com/r/nitrokey/nethsm>`_ lokalnie. Kontener NetHSM wymaga zagnieżdżonej wirtualizacji dla silnej separacji z innymi kontenerami. Dlatego do uruchomienia kontenera NetHSM potrzebny jest host linuksowy z dostępnym /dev/kvm. Wykonaj to polecenie:
$ sudo docker run --rm -ti --device=/dev/net/tun:/dev/net/tun --cap-add=NET_ADMIN -p8443:8443 nitrokey/nethsm:testing
Integracja z aplikacją niestandardową#
Aby zintegrować NetHSM z własnymi aplikacjami, dostępne są biblioteki klienckie dla prawie wszystkich języków programowania. Dlatego zalecamy użycie OpenAPI Generator.
Listę wszystkich dostępnych języków można wyszukać w następujący sposób.
$ docker run --pull --rm -ti openapitools/openapi-generator-cli list -i stable
Klient NetHSM może zostać wygenerowany dla danego języka programowania w następujący sposób.
$ 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
Wygenerowany kod klienta, w tym przykładzie JavaScript, zostanie utworzony w katalogu ./out/
. Katalog ten zawiera również niezbędną dokumentację jak go używać.
REST-API#
Specyfikacja NetHSM’s API jest dostępna w formacie OpenAPI i może być sprawdzana i testowana w API browser.