Windows KSP и PKCS#11 с помощью PKI Proxy¶
Этот документ объясняет использование PKI Proxy с NetHSM. PKI Proxy позволяет использовать NetHSM через собственные API Microsoft Windows. Для этого PKI Proxy включает в себя KSP (Key Storage Provider), который позволяет использовать его через интерфейс CNG (Cryptography API: Next Generation). Кроме того, он предоставляет доступ PKCS#11 к NetHSM, но это следует использовать только в том случае, если это необходимо, например, если вам нужны дополнительные функции аутентификации PKI Proxy, или вы хотите использовать PKI Proxy в качестве шлюза, чтобы не открывать NetHSM клиентам напрямую. Во всех остальных случаях используйте драйвер NetHSM PKCS#11 напрямую.
Развертывание NetHSM с PKI Proxy выглядит следующим образом.
NetHSM предоставляет REST API, который используется драйвером NetHSM PKCS#11. PKI Proxy использует этот драйвер для подключения к NetHSM и доступа к его ключам и сертификатам. Клиенты PKI Proxy используют REST API сервера PKI Proxy для доступа к ключам и сертификатам. Приложения на клиенте могут использовать либо собственный Windows API, либо драйвер PKCS#11. Связь между NetHSM и сервером PKI Proxy и клиентами PKI Proxy зашифрована. Сервер и клиент PKI Proxy могут быть выполнены на одном компьютере.
Возможные варианты использования этой установки:
Code signing
Document signing
Совет
Также обратитесь к официальной документации PKI Proxy для получения дополнительной информации.
Prerequisits¶
NetHSM (аппаратный или контейнерный) - Предоставлен - IP-адрес NetHSM должен быть известен, а порт HTTPS должен быть доступен.
Машина Windows - установлен и настроен драйвер NetHSM PKCS#11 от Nitrokey (требуется только для PKI Proxy Server).
Важно
На некоторых машинах PKI Proxy Server может упасть во время процедуры выгрузки модуля NetHSM PKCS#11. Это ошибка в зависимости модуля и отслеживается в этой проблеме на GitHub. Если вы столкнулись с этой ошибкой, пожалуйста, установите disable_thread_pool конфигурационный параметр на true в вашем конфигурационном файле NetHSM PKCS#11. Пожалуйста, обратитесь к примеру конфигурационного файла, чтобы лучше понять, как его настроить.
PKI Proxy - сервер¶
Сервер PKI Proxy совместно использует ключи и сертификаты NetHSM для разных пользователей.
Установка¶
Download the PKI Proxy 2024 installer from the /n software website.
Откройте программу установки и следуйте указаниям мастера установки.
Откройте PKI Proxy из меню Пуск. Если вы установили его в местоположение по умолчанию, вы также можете запустить его следующей командой из диалогового окна Run или PowerShell.
C:\Program Files\PKI Proxy 2024\PKIProxy.exeПримечание
PKI Proxy будет сворачиваться в системный трей, даже если главное окно закрыто.
Service Configuration¶
Ниже приведены инструкции по настройке PKI Proxy.
Open the PKI Proxy main window.
Change to the Settings tab.
Убедитесь, что флажок Enable TLS установлен и используется соответствующий сертификат.
Change to the Users tab.
Создайте нового пользователя, нажав на кнопку New…. Выберите тип аутентификации, который поддерживается всеми клиентами.
В строке меню главного окна нажмите кнопку Start, чтобы запустить службу PKI Proxy.
Publish Certificates from the NetHSM¶
Далее мы настроим, какие сертификаты из NetHSM будут доступны через PKI Proxy.
Убедитесь, что главное окно PKI Proxy открыто.
Change to the Certificates tab.
Нажмите на кнопку New…. Откроется окно Сертификат акций.
Нажмите на кнопку Выбрать сертификат или ключ… в рамке Сертификат окна. Откроется окно Select a Private Key.
Перейдите на вкладку Ключ безопасности.
Нажмите кнопку Browse… и выберите файл библиотеки драйвера NetHSM PKCS#11. В текстовом поле Библиотека PKCS#11 теперь отображается путь к файлу библиотеки.
В раскрывающемся меню Ключ безопасности (PKCS#11) выберите слот, в котором находится сертификат. Перечисленные слоты зависят от конфигурации модуля PKCS#11.
Click the Open button.
В текстовом списке под Certificates теперь отображается список доступных сертификатов и общих ключей на NetHSM. Выберите сертификат или общий ключ, который вы хотите предоставить PKI Proxy.
Нажмите на кнопку OK, чтобы подтвердить выбор. В результате вы вернетесь в окно Сертификат акций. Теперь в окне будут отображаться сведения о выбранном сертификате.
Нажмите на кнопку Добавить… в рамке Доступ и разрешения окна. Откроется окно Выбор пользователя.
Выберите существующего пользователя из выпадающего меню или создайте нового, выбрав Create New User…. Нажмите на кнопку OK, чтобы подтвердить выбор. Если вы решили создать нового пользователя, после этого появится окно New User.
Вернитесь в окно Share Certificate и убедитесь, что разрешены только необходимые операции для сертификата или общего ключа. Это можно изменить с помощью флажков в нижней части рамки Access and Permissions.
Нажмите на кнопку OK, чтобы опубликовать сертификат. Это вернет вас в главное окно PKI Proxy.
В текстовом списке ниже Certificate Management теперь отображается опубликованный сертификат.
Важно
Убедитесь, что механизмы общего ключа на NetHSM позволяют использовать его в PKI Proxy.
Прокси-сервер PKI - клиент¶
Клиентские инструменты PKI Proxy предоставляют различные способы доступа к общим ключам и сертификатам с сервера PKI Proxy.
Совет
Сервер PKI Proxy содержит клиентские инструменты. Таким образом, машина, на которой работает сервер, также может быть клиентом для себя.
Установка¶
Загрузите PKI Proxy 2024 - Client Tools с веб-сайта /n software.
Откройте программу установки и следуйте указаниям мастера установки.
KSP (Key Storage Provider)¶
PKI Proxy предоставляет KSP для взаимодействия с сервером PKI Proxy. KSP позволяет использовать собственные API Windows в приложениях через интерфейс CNG (Cryptography API: Next Generation). За дополнительной информацией обращайтесь к документации PKI Proxy.
PKCS#11¶
PKI Proxy предоставляет модуль PKCS#11 для взаимодействия с сервером PKI Proxy. За дополнительной информацией обращайтесь к документации PKI Proxy.