融合¶
该章描述了各种任务的流程,并针对所有用户群体。
REST-API¶
NetHSM 的主要接口是一个现代 RESTAPI,可确保最佳性能和功能。API 规范以`OpenAPI 格式提供<https://nethsmdemo.nitrokey.com/api_docs/nethsm-api.yaml>`_ ,可在`API 浏览器<https://nethsmdemo.nitrokey.com/api_docs/index.html>`_ 中检查和测试。
PKCS#11¶
NetHSM 支持 PKCS#11 标准。所需驱动程序可从`存储库<https://github.com/Nitrokey/nethsm-pkcs11>`__中获取。该资源库包含适用于不同操作系统的源代码和库。`PKCS#11 指南<pkcs11-setup.html>`_ 详细介绍了使用方法。
开发和测试¶
演示实例¶
公共 NetHSM 演示实例可在`nethsmdemo.nitrokey.com<https://nethsmdemo.nitrokey.com/api/v1/info>`_ 上获得。它将每八小时重置一次(欧洲中部时间 6:00、14:00、22:00)。用户名 "admin",密码 "adminadmin",解锁密码 "unlockunlock"。
集装箱图像¶
NetHSM`容器镜像<container/index.html>`__ 可用于测试和生产。
集成到自定义应用程序中¶
要将 NetHSM 集成到自己的定制应用程序中,几乎所有编程语言都有客户端库。以下是`Python<https://github.com/Nitrokey/nethsm-sdk-py>`_ 和`Rust<https://github.com/Nitrokey/nethsm-sdk-rs>`_ 以及`这个第三方 Rust crate<https://crates.io/crates/nethsm>`_ 的库。对于所有其他编程语言,我们建议使用`OpenAPI Generator<https://github.com/OpenAPITools/openapi-generator>`_ 。
所有可用语言的列表可按如下方式检索。
$ docker run --rm -ti openapitools/openapi-generator-cli list -i stable
$ podman 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
$ 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
生成的客户端代码,在本例中为JavaScript,将在``./out/``目录下创建。这个文件夹也包含了如何使用它的必要文档。
命令行界面¶
用户可使用专用命令行界面 (CLI) 管理和使用 NetHSM。Nitrokey 提供``nitropy``,它发布在基于 Python 的`pynitrokey<https://pypi.org/project/pynitrokey/>`_ 中。nethsm
还有一个第三方应用程序,它是在 Rust crate`nethsm-cli<https://crates.io/crates/nethsm-cli/>`_ 中开发的。