Integráció¶
Ez a fejezet leírja, hogyan lehet a NetHSM-et integrálni az alkalmazásokba, és hogyan lehet az integrációt tesztelni. Ha olyan szoftvert keres, amely már jól integrálható a NetHSM-mel, itt találja a kompatibilis szoftverek listáját: .
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¶
The NetHSM supports the PKCS#11 standard. The required driver is available from the repository. The repository contains the source code and libraries, for different operating systems. The PKCS#11 guide describes the usage in detail.
Fejlesztés és tesztelés¶
Demo példány¶
A public NetHSM demo instance is available at nethsmdemo.nitrokey.com.
It will be reset every eight hours (CET 6:00, 14:00, 22:00). User admin, password adminadmin, unlock password 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
$ podman 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
$ 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
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
If Podman is used with enforcing SELinux, a labeling to the volume mount might be required.
The mode of SELinux can be requested with sestatus |grep "Current mode".
If the mode is set to enforcing, a change to the context is required.
In this case the volume mount must be suffixed with :z, resulting in -v "${PWD}/out:/out:z".
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.