Integrare#

Capitolul descrie procesele pentru diferite sarcini și se adresează tuturor grupurilor de utilizatori.

PKCS#11#

NetHSM este compatibil cu standardul PKCS#11. Driverul necesar este disponibil în depozitul ` <https://github.com/Nitrokey/nethsm-pkcs11>` __. Depozitul conține codul sursă și bibliotecile, pentru diferite sisteme de operare. Ghidul PKCS#11 descrie în detaliu modul de utilizare.

Dezvoltare și testare#

O instanță demo publică NetHSM este disponibilă la nethsmdemo.nitrokey.com. Aceasta va fi resetată la fiecare opt ore (CET 6:00, 14:00, 22:00). Utilizator „admin”, parolă „adminadmin”, parolă de deblocare „unlockunlock”.

Alternativ, puteți rula NetHSM ca un container Docker ` <https://hub.docker.com/r/nitrokey/nethsm>`_ la nivel local.

Containerul poate fi executat după cum urmează.

$ sudo docker run --rm -ti -p8443:8443 nitrokey/nethsm:testing

Aceasta va furniza API-ul REST pe portul 8443 prin intermediul protocolului HTTPS.

Important

Containerul utilizează un certificat TLS auto-semnat. Asigurați-vă că utilizați setările de conectare corecte pentru a stabili o conexiune. Vă rugăm să consultați capitolul NetHSM introducere pentru a afla mai multe.

Integrarea în aplicația personalizată#

Pentru a integra NetHSM în propriile aplicații personalizate, sunt disponibile biblioteci client pentru aproape toate limbajele de programare. Iată bibliotecile pentru Rust și Python. Pentru toate celelalte limbaje de programare vă recomandăm să utilizați OpenAPI Generator.

Lista tuturor limbilor disponibile poate fi consultată după cum urmează.

$ docker run --rm -ti openapitools/openapi-generator-cli list -i stable

Clientul NetHSM poate fi generat pentru limbajul dumneavoastră de programare după cum urmează.

$ 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

Codul generat de client, în acest exemplu JavaScript, va fi creat în directorul ./out/. Acest director conține, de asemenea, documentația necesară modului de utilizare.

Important

Dacă Podman este utilizat cu SELinux, ar putea fi necesară o etichetare a montajului volumului. Modul de SELinux poate fi solicitat cu sestatus |grep "Current mode". Dacă modul este setat la enforcing, este necesară o modificare a contextului. În acest caz, montarea volumului trebuie să fie postfixată cu :z, rezultând -v "${PWD}/out:/out:z".

REST-API#

Specificația API a NetHSM este disponibilă în formatul OpenAPI, și poate fi inspectată și testată în browserul API ` <https://nethsmdemo.nitrokey.com/api_docs/index.html>`_ .