Integrācija¶
Šajā nodaļā ir aprakstīti dažādu uzdevumu izpildes procesi, un tā ir paredzēta visām lietotāju grupām.
REST-API¶
NetHSM primārais interfeiss ir mūsdienīgs REST-API, kas garantē vislabāko veiktspēju un funkcionalitāti. API specifikācija ir pieejama OpenAPI formātā, un to var pārbaudīt un testēt API pārlūkā.
PKCS#11¶
NetHSM atbalsta PKCS#11 standartu. Nepieciešamais draiveris ir pieejams repozitorijā. Repozitorijs satur pirmkodu un bibliotēkas dažādām operētājsistēmām. ` PKCS#11 rokasgrāmatā <pkcs11-setup.html>`_ ir sīki aprakstīta lietošana.
Izstrāde un testēšana¶
Demo gadījums¶
Publiska NetHSM demo instance ir pieejama vietnē nethsmdemo.nitrokey.com. Tā tiks atiestatīta ik pēc astoņām stundām (CET 6:00, 14:00, 22:00). Lietotājs „admin“, parole „adminadmin“, atbloķēšanas parole „unlockunlock“.
Konteinera attēls¶
NetHSM konteineru attēli ir pieejami testēšanai un ražošanai.
Integrācija pielāgotā lietojumprogrammā¶
Lai integrētu NetHSM savās pielāgotās lietojumprogrammās, ir pieejamas klientu bibliotēkas gandrīz visām programmēšanas valodām. Šeit ir bibliotēkas Python un Rust, kā arī šim trešās puses Rust crate. Visām citām programmēšanas valodām iesakām izmantot OpenAPI Generator.
Visu pieejamo valodu sarakstu var iegūt šādi.
$ docker run --rm -ti openapitools/openapi-generator-cli list -i stable
$ podman run --rm -ti openapitools/openapi-generator-cli list -i stable
NetHSM klientu jūsu programmēšanas valodai var izveidot šādi.
$ 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
Ģenerētais klienta kods, šajā piemērā JavaScript, tiks izveidots direktorijā ./out/
. Šajā mapē ir arī nepieciešamā dokumentācija, kā to izmantot.
Svarīgi
Ja Podman tiek izmantots ar SELinux ieviešanu, var būt nepieciešams veikt apjoma montāžas marķēšanu. SELinux režīmu var pieprasīt ar sestatus |grep "Current mode"
. Ja režīms ir iestatīts uz enforcing
, ir nepieciešama konteksta maiņa. Šādā gadījumā sējuma pievienošana jānoformulē ar :z
, iegūstot -v "${PWD}/out:/out:z"
.
Komandrindas saskarne¶
Lietotāji var administrēt un izmantot NetHSM, izmantojot īpašu komandrindas saskarni (CLI). Nitrokey piedāvā nitropy
, kas tiek izplatīts Python vidē balstītā pynitrokey. Izmantojot nethsm
, pastāv alternatīva trešās puses lietojumprogramma, kas ir izstrādāta Rust kretē nethsm-cli.