Ενσωμάτωση

Αυτό το κεφάλαιο περιγράφει τον τρόπο ενσωμάτωσης του NetHSM σε εφαρμογές και τον τρόπο δοκιμής αυτής της ενσωμάτωσης. Αν ψάχνετε για λογισμικό, το οποίο ήδη ενσωματώνεται καλά με το NetHSM, εδώ είναι μια λίστα συμβατών λογισμικών .

REST-API

Η κύρια διεπαφή του NetHSM είναι ένα σύγχρονο REST-API που εγγυάται τις καλύτερες επιδόσεις και λειτουργίες. Η προδιαγραφή του API είναι διαθέσιμη σε μορφή OpenAPI, και μπορεί να ελεγχθεί και να δοκιμαστεί στο πρόγραμμα περιήγησης API.

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.

Ανάπτυξη και δοκιμή

Παράσταση επίδειξης

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.

Εικόνα εμπορευματοκιβωτίου

NetHSM εικόνες εμπορευματοκιβωτίων είναι διαθέσιμες για δοκιμές και παραγωγή.

Ενσωμάτωση σε προσαρμοσμένη εφαρμογή

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.

Ο κατάλογος όλων των διαθέσιμων γλωσσών μπορεί να ανακτηθεί ως εξής.

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

Ο πελάτης NetHSM μπορεί να δημιουργηθεί για τη γλώσσα προγραμματισμού σας ως εξής.

$ 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

Ο παραγόμενος κώδικας πελάτη, σε αυτό το παράδειγμα JavaScript, θα δημιουργηθεί στον κατάλογο ./out/. Αυτός ο φάκελος περιέχει επίσης την απαραίτητη τεκμηρίωση για τον τρόπο χρήσης.

Σημαντικό

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

Διεπαφή γραμμής εντολών

Οι χρήστες μπορούν να διαχειρίζονται και να χρησιμοποιούν ένα NetHSM χρησιμοποιώντας μια ειδική διεπαφή γραμμής εντολών (CLI). Το Nitrokey προσφέρει nitropy, το οποίο διανέμεται στο βασισμένο στην Python pynitrokey. Με το nethsm υπάρχει μια εναλλακτική εφαρμογή τρίτου μέρους, η οποία αναπτύσσεται στο Rust crate nethsm-cli.