Integracija

V tem poglavju je opisano, kako NetHSM integrirati v aplikacije in kako to integracijo preizkusiti. Če iščete programsko opremo, ki se že dobro povezuje z NetHSM, je tukaj seznam združljive programske opreme.

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

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.

Razvoj in preskušanje

Predstavitvena instanca

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.

Slika zabojnika

NetHSM slike vsebnikov so na voljo za testiranje in produkcijo.

Integracija v aplikacijo po meri

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.

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

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

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.