Integracija

Šiame skyriuje aprašoma, kaip integruoti NetHSM į programas ir kaip šią integraciją išbandyti. Jei ieškote programinės įrangos, kuri jau gerai integruojasi su NetHSM, čia pateikiamas suderinamos programinės įrangos sąrašas.

REST-API

Pagrindinė NetHSM sąsaja yra moderni REST API, kuri užtikrina geriausią našumą ir funkcionalumą. API specifikacija pateikiama OpenAPI formatu, ją galima patikrinti ir išbandyti API naršyklėje.

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.

Kūrimas ir testavimas

Demonstracinė versija

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.

Konteinerio vaizdas

NetHSM konteinerių atvaizdus galima naudoti bandymams ir gamybai.

Integravimas į pasirinktinę programą

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.

Visų galimų kalbų sąrašą galima rasti taip.

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

NetHSM klientas gali būti sukurtas jūsų programavimo kalbai taip.

$ 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

Sukurtas kliento kodas, šiame pavyzdyje „JavaScript“, bus sukurtas ./out/ kataloge. Šiame aplanke taip pat yra reikalingi dokumentai, kaip juo naudotis.

Svarbu

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

Komandinės eilutės sąsaja

Vartotojai gali administruoti ir naudoti NetHSM naudodami specialią komandinės eilutės sąsają (CLI). Nitrokey siūlo nitropy, kuri platinama Python pagrindu sukurtoje pynitrokey. Su nethsm yra alternatyvi trečiosios šalies programa, sukurta Rust crate nethsm-cli.