Ενσωμάτωση#

Το κεφάλαιο περιγράφει διαδικασίες για διάφορες εργασίες και απευθύνεται σε όλες τις ομάδες χρηστών.

PKCS#11#

Το NetHSM υποστηρίζει το πρότυπο PKCS#11. Το απαιτούμενο πρόγραμμα οδήγησης είναι διαθέσιμο από το αποθετήριο ` <https://github.com/Nitrokey/nethsm-pkcs11>` __. Το αποθετήριο περιέχει τον πηγαίο κώδικα και τις βιβλιοθήκες, για διάφορα λειτουργικά συστήματα. Ο οδηγός PKCS#11 περιγράφει λεπτομερώς τη χρήση.

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

Μια δημόσια δοκιμαστική περίπτωση NetHSM είναι διαθέσιμη στη διεύθυνση nethsmdemo.nitrokey.com. Θα επαναφέρεται κάθε οκτώ ώρες (CET 6:00, 14:00, 22:00). Χρήστης «admin», κωδικός πρόσβασης «adminadmin», κωδικός πρόσβασης ξεκλειδώματος «unlockunlock».

Εναλλακτικά, μπορείτε να εκτελέσετε το NetHSM ως δοχείο Docker τοπικά.

Το δοχείο μπορεί να εκτελεστεί ως εξής.

$ sudo docker run --rm -ti -p8443:8443 nitrokey/nethsm:testing

Αυτό θα παρέχει το REST API στη θύρα «8443» μέσω του πρωτοκόλλου HTTPS.

Σημαντικό

Ο περιέκτης χρησιμοποιεί ένα αυτο-υπογεγραμμένο πιστοποιητικό TLS. Βεβαιωθείτε ότι χρησιμοποιείτε τις σωστές ρυθμίσεις σύνδεσης για να δημιουργήσετε μια σύνδεση. Ανατρέξτε στο κεφάλαιο Εισαγωγή στο NetHSM για να μάθετε περισσότερα.

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

Για την ενσωμάτωση του NetHSM σε δικές σας προσαρμοσμένες εφαρμογές, διατίθενται βιβλιοθήκες-πελάτες για όλες σχεδόν τις γλώσσες προγραμματισμού. Εδώ υπάρχουν βιβλιοθήκες για Rust και Python. Για όλες τις άλλες γλώσσες προγραμματισμού συνιστούμε τη χρήση του 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/. Αυτός ο φάκελος περιέχει επίσης την απαραίτητη τεκμηρίωση για τον τρόπο χρήσης.

Σημαντικό

Εάν το Podman χρησιμοποιείται με την επιβολή SELinux, μπορεί να απαιτείται μια επισήμανση στην προσάρτηση τόμου. Η λειτουργία του SELinux μπορεί να ζητηθεί με την εντολή sestatus |grep "Current mode". Εάν η λειτουργία έχει οριστεί σε enforcing, απαιτείται αλλαγή στο πλαίσιο. Σε αυτή την περίπτωση, η προσάρτηση τόμου πρέπει να μεταπροσδιοριστεί με :z, με αποτέλεσμα -v "${PWD}/out:/out:z".

REST-API#

Οι προδιαγραφές API του NetHSM είναι διαθέσιμες σε μορφή OpenAPI, και μπορούν να επιθεωρηθούν και να δοκιμαστούν στο πρόγραμμα περιήγησης API.