Integráció

A fejezet a különböző feladatokhoz szükséges folyamatokat írja le, és minden felhasználói csoportot megcéloz.

REST-API

A NetHSM elsődleges interfésze egy modern REST-API, amely garantálja a legjobb teljesítményt és funkcionalitást. Az API specifikáció elérhető a OpenAPI formátumban, és megtekinthető és tesztelhető a API böngészőben.

PKCS#11

A NetHSM támogatja a PKCS#11 szabványt. A szükséges illesztőprogram elérhető a repositoryból. Az adattár tartalmazza a forráskódot és a könyvtárakat, különböző operációs rendszerekhez. A PKCS#11 útmutató részletesen leírja a használatot.

Fejlesztés és tesztelés

Demo példány

Egy nyilvános NetHSM demópéldány elérhető a nethsmdemo.nitrokey.com címen. Nyolc óránként (CET 6:00, 14:00, 22:00) újraindul. Felhasználó „admin”, jelszó „adminadmin”, feloldási jelszó „unlockunlock”.

Konténer kép

A NetHSM konténerképek elérhetőek tesztelésre és gyártásra.

Egyedi alkalmazásba való integráció

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.

A rendelkezésre álló nyelvek listája a következőképpen hívható le.

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

A NetHSM kliens a következőképpen generálható a programozási nyelvhez.

$ 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

A generált ügyfélkód, ebben a példában a JavaScript, a ./out/ könyvtárban lesz létrehozva. Ez a mappa tartalmazza a használatához szükséges dokumentációt is.

Fontos

Ha a Podman a SELinux érvényesítésével együtt használatos, akkor szükség lehet a kötetcsatolás címkézésére. A SELinux módját a sestatus |grep "Current mode" címmel lehet lekérdezni. Ha a mód a enforcing, akkor a kontextus módosítása szükséges. Ebben az esetben a kötetcsatlakoztatást a :z utólagos rögzítéssel kell elvégezni, ami a -v "${PWD}/out:/out:z" eredményezi.

Parancssori interfész

A felhasználók a NetHSM-et egy dedikált parancssori felület (CLI) segítségével adminisztrálhatják és használhatják. A Nitrokey a nitropy kínálja, amely a Python alapú pynitrokey pynitrokey-ban kerül terjesztésre. A nethsm mellett létezik egy alternatív, harmadik féltől származó alkalmazás, amelyet a nethsm-cli Rust crate-ben fejlesztettek ki.