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 imagini container sunt disponibile pentru testare și producție.
Integrarea în aplicația personalizată¶
To integrate the NetHSM into own custom applications, client libraries are available for almost all programming languages. Here are our libraries for Python and Rust as well as 3rd party Rust crate and Go library. For all other programming languages we recommend using OpenAPI Generator.
Lista tuturor limbilor disponibile poate fi consultată după cum urmează.
$ docker run --rm -ti openapitools/openapi-generator-cli list -i stable
$ podman 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
$ podman 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.