Integracija

Poglavje opisuje postopke za različna opravila in je namenjeno vsem skupinam uporabnikov.

REST-API

Primarni vmesnik NetHSM je sodoben vmesnik REST-API, ki zagotavlja najboljšo zmogljivost in funkcionalnost. Specifikacija API je na voljo v formatu OpenAPI, pregledati in preizkusiti pa jo je mogoče v brskalniku API ` <https://nethsmdemo.nitrokey.com/api_docs/index.html>`_ .

PKCS#11

NetHSM podpira standard PKCS#11. Potrebni gonilnik je na voljo v skladišču ` <https://github.com/Nitrokey/nethsm-pkcs11>`__. Repozitorij vsebuje izvorno kodo in knjižnice za različne operacijske sisteme. V vodniku PKCS#11 je podrobno opisana uporaba.

Razvoj in preskušanje

Predstavitvena instanca

Javni demo primerek NetHSM je na voljo na naslovu nethsmdemo.nitrokey.com. Ponastavljena bo vsakih osem ur (6:00, 14:00, 22:00 po srednjeevropskem času). Uporabnik „admin“, geslo „adminadmin“, geslo za odklepanje „unlockunlock“.

Slika zabojnika

NetHSM slike vsebnikov so na voljo za testiranje in produkcijo.

Integracija v aplikacijo po meri

Za vključitev sistema NetHSM v lastne aplikacije po meri so na voljo odjemalske knjižnice za skoraj vse programske jezike. Tukaj so knjižnice za Python in Rust ter ta tretja stran Rust crate. Za vse druge programske jezike priporočamo uporabo OpenAPI Generator.

Seznam vseh razpoložljivih jezikov lahko dobite na naslednji način.

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

Odjemalec NetHSM se lahko ustvari za vaš programski jezik na naslednji način.

$ 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

Ustvarjena odjemalčeva koda, v tem primeru JavaScript, bo ustvarjena v imeniku ./out/. Ta mapa vsebuje tudi potrebno dokumentacijo, kako jo uporabljati.

Pomembno

Če se Podman uporablja z uveljavljanjem SELinuxa, bo morda potrebna oznaka za priklop zvezka. Način SELinuxa lahko zahtevate s sestatus |grep "Current mode". Če je način nastavljen na enforcing, je potrebna sprememba konteksta. V tem primeru je treba priklop zvezka naknadno označiti z :z, kar povzroči -v "${PWD}/out:/out:z".

Vmesnik ukazne vrstice

Uporabniki lahko upravljajo in uporabljajo NetHSM z namenskim vmesnikom ukazne vrstice (CLI). Nitrokey ponuja nitropy, ki se distribuira v programskem okolju pynitrokey, ki temelji na Pythonu. Z nethsm obstaja alternativna aplikacija tretje osebe, ki je razvita v gruči Rust nethsm-cli.