Integração¶
O capítulo descreve processos para várias tarefas e dirige-se a todos os grupos de utilizadores.
REST-API¶
NetHSM’s primary interface is a modern REST-API that guarantees best performance and functionality. The API specification is available in OpenAPI format, and can be inspected and tested in the API browser.
PKCS#11¶
<x id=»0»></x>Q:<x id=»4»></x> Porque é que também oferecemos a remoção do giroscópio?
Desenvolvimento e Teste¶
Instância de demonstração¶
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».
Container Image¶
NetHSM imagens de contentores estão disponíveis para teste e produção.
Integration Into Custom Application¶
Para integrar o NetHSM nas suas próprias aplicações personalizadas, estão disponíveis bibliotecas de clientes para quase todas as linguagens de programação. Aqui estão as bibliotecas para Python e Rust, bem como este crate Rust de terceiros. Para todas as outras linguagens de programação, recomendamos a utilização de OpenAPI Generator.
A lista de todas as línguas disponíveis pode ser recuperada da seguinte forma.
$ docker run --rm -ti openapitools/openapi-generator-cli list -i stable
$ podman run --rm -ti openapitools/openapi-generator-cli list -i stable
O cliente NetHSM pode ser gerado para a sua linguagem de programação como se segue.
$ 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
O código do cliente gerado, neste exemplo JavaScript, será criado no diretório ./out/
. Esta pasta também contém a documentação necessária para a sua utilização.
Importante
Se o Podman for utilizado com a aplicação do SELinux, pode ser necessária uma etiquetagem para a montagem do volume. O modo do SELinux pode ser solicitado com sestatus |grep "Current mode"
. Se o modo é definido como enforcing
, uma mudança no contexto é necessária. Neste caso, a montagem do volume deve ser pós-fixada com :z
, resultando em -v "${PWD}/out:/out:z"
.
Interface da linha de comando¶
Os utilizadores podem administrar e utilizar um NetHSM utilizando uma interface de linha de comandos (CLI) dedicada. A Nitrokey oferece nitropy
, que é distribuído na aplicação baseada em Python pynitrokey. Com nethsm
existe uma aplicação alternativa de terceiros, que é desenvolvida no Rust crate nethsm-cli.