Integrare#

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

REST-API#

Interfața principală a NetHSM este o interfață REST-API modernă care garantează cea mai bună performanță și funcționalitate. Specificația API este disponibilă în formatul OpenAPI, și poate fi inspectată și testată în browserul API ` <https://nethsmdemo.nitrokey.com/api_docs/index.html>`_ .

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#

Instanță demo#

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”.

Imaginea containerului#

NetHSM container images are available for testing and production.

Integrarea în aplicația personalizată#

Pentru a integra NetHSM în propriile aplicații personalizate, sunt disponibile biblioteci client pentru aproape toate limbajele de programare. Aici sunt biblioteci pentru Python și Rust, precum și acest crate Rust de la o terță parte. 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".

Interfața liniei de comandă#

Utilizatorii pot administra și utiliza un NetHSM utilizând o interfață de linie de comandă (CLI) dedicată. Nitrokey oferă nitropy, care este distribuită în baza Python pynitrokey. Cu nethsm există o aplicație terță alternativă, care este dezvoltată în crate-ul Rust nethsm-cli.