- Адрес службы штампов времени
- Ввод лицензии
- Загрузка скрипта и необходимых файлов
- Задание имен экземпляров сервисов вручную
- Изменение сайтапорта для веб-приложений dss
- Интеграция посредством soap
- Использование готовых сервисных сертификатов
- Конвейер
- Криптопровайдеры
- Лицензия на компоненты центра идентификации
- Лицензия на сервис подписи
- Масштабируемость и отказоустойчивость
- Настройка sms- и email-оповещений
- Настройка средств уц
- Общие сведения об администрировании компонентов криптопро dss
- Очистка данных об операциях
- Порядок работы со сценарием автоматического развертывания криптопро dss
- Примечание
- Срок действия clientsecret
Адрес службы штампов времени
DssTspServiceurl
— Адрес тестовой службы TSP. По умолчанию переменная имеет значениеfalse
, что отключает добавление тестовой службы TSP.DssTspServicename
— Отображаемое имя тестовой службы TSP.
Ввод лицензии
Скрипт поддерживает ввод следующих лицензий с возможностью указания действующей (при наличии) или Демонстрационной лицензии, активируемой по умолчанию:
- На Сервис Подписи
- На компоненты Центра Идентификации:
Загрузка скрипта и необходимых файлов
Вам понадобится:
- Установить КриптоПро CSP и настроить считыватель тестовой гаммы, развернуть необходимые компоненты веб-сервера (IIS)
и установить Microsoft .NET Framework 4.6.1. Требуется перезагрузка! - Установить SQL Server Express. Если БД развернута на другом сервере, требуются права администратора для доступа к данному серверу.
- Установить КриптоПро DSS (рекомендуется установить все компоненты для обеспечения полной работоспособности скрипта) и дополнительное ПО (из папки redist комплекта КриптоПро DSS). Требуется перезагрузка!
Распаковать содержимое скрипта в папку, из которой будет производиться последующий запуск скрипта. ВНИМАНИЕ: При запуске скрипта убедитесь, что все файлы архива
dss_quickstart.zip
находятся в одной папке.Настроить веб-сервер (IIS). Данные действия могут быть выполнены при помощи скрипта для быстрого старта.
- Создать и установить необходимые сервисные сертификаты, развернуть и настроить экземпляры компонентов КриптоПро DSS. Данные действия могут быть выполнены при помощи скрипта для быстрого старта.
Примечание
Какое-либо из действий 1-3 можно пропустить, если оно уже было выполнено ранее на рабочей станции, где
запускается скрипт.
Примечание
В случае если необходимо развернуть и настроить взаимодействие со службой штампов времени (TSP),
требуется задать в следующих параметрах файла DeployConfig.ps1
адрес и имя тестовой службы TSP:
$DssTspServiceurl
$DssTspServicename
Подробнее об установке КриптоПро DSS
Задание имен экземпляров сервисов вручную
$namemode
— Режим задания имен экземпляров создаваемых сервисов:avto
— имена сервисов и БД генерируются автоматически из ключевого имени (задается один раз в диалоговом меню скрипта);manual
— имена сервисов и БД необходимо вводить вручную.
Изменение сайтапорта для веб-приложений dss
$SiteName
— Позволяет изменить веб-сайт, на котором разворачиваются сервисы DSS. По умолчанию$SiteName = "Default Web Site"
.$sslport
— Позволяет изменить порт, по которому будут доступны сервисы DSS.
Интеграция посредством soap
- Пользователь отправляет сформированный платежный документ в систему ДБО.
- Система ДБО, используя штатные документированные механизмы КриптоПро DSS (SOAP), передает подписываемый документ и подписанный маркер доступа (SAML-токен), содержащий информацию о пользователе (имя пользователя, номер мобильного телефона и т.п.).
- Для подтверждения подписания документа КриптоПро DSS направляет пользователю SMS-сообщение, содержащее код подтверждения подписания и значимые поля документа (например, получатель, сумма и т.п.), на номер мобильного телефона полученный в маркере доступа.
- Пользователь вводит полученный код подтверждения в поле формы веб-интерфейса системы ДБО.
- Система ДБО передает полученный код подтверждения КриптоПро DSS.
- КриптоПро DSS, используя документированные функции ПАКМ «КриптоПро HSM», отправляет запрос на подписание документа с использованием закрытого ключа пользователя и получает подписанный документ.
- КриптоПро DSS передает подписанный документ в систему ДБО.
Использование готовых сервисных сертификатов
$manualcert
— Режим использования заранее подготовленных сервисных сертификатов. По умолчанию переменная имеет значениеfalse
, что означает, что сервисные сертификаты генерируются автоматически. В случае если значение переменнойtrue
, во время работы скрипта будет предложено вручную задавать отпечатки сертификатов для каждого из создаваемых сервисов.
$noaudit
— Позволяет отключить развертывание Сервиса Аудита (значениеtrue
). По умолчанию значение переменной равноfalse
.$auditreserve
— Позволяет включить резервирование аудита (значениеtrue
). По умолчанию значение переменной равноfalse
.$auditreport
— Добавляет отчеты аудита (значениеtrue
). По умолчанию значение переменной равноtrue
.
Примечание
В случае если выбрано добавление отчетов аудита, необходимо выдать права на доступ к БД ЦИ учетной
записи, из-под которой работает пул приложения Сервиса Аудита.
Конвейер
Командлеты, входящие в состав Powershell-модулей DSS, поддерживают работу через конвейер (pipeline).
Все командлеты Get- возвращают объекты. Полученные объекты могут быть через конвейер направлены в
командлеты select,
where,
foreach,
format-list,
format-table и т.д.
Ниже приведены примеры работы с командлетами DSS через конвейер.
- Проверка доступности криптопровайдеров
Get-DssCryptoProvider | Test-DssCryptoProvider
- Добавление идентификатора проверяющей стороны
Криптопровайдеры
Настройка криптопровайдеров типа GostWithMasterKey.
$ProviderType
— Тип криптопровайдера. По умолчанию имеет значение80
.$ProviderName
— Имя криптопровайдера. По умолчанию имеет значениеCrypto-Pro GOST R 34.10-2022 Cryptographic Service Provider
.
Лицензия на компоненты центра идентификации
Компоненты ЦИ, лицензия на которые может быть введена в файле DeployConfig.ps1:
- Модуль аутентификации myDSS
$SerialNumberMydssLicense
— серийный номер лицензии$CompanyNameMydssLicense
— имя компании, использующей лицензию
- Модуль аутентификации DSS Client
$SerialNumberDSSClient
— серийный номер лицензии$CompanyNameMydssLicense
— имя компании, использующей лицензию
- Модуль доступа Cloud CSP
$SerialNumberCloudLicense
— серийный номер лицензии$CompanyNameCloudLicense
— имя компании, использующей лицензию
По умолчанию конфигурационный файл DeployConfig.ps1 не содержит введенных лицензий на компоненты ЦИ,
что активирует Демонстрационную лицензию на 10 пользователей.
Лицензия на сервис подписи
$DssSignServerLicense
— Режим лицензирования Сервиса Подписи:demo
— Активация демо-лицензии на 10 Пользователей. Используется в качестве режима по умолчанию;lic
— Ввод собственной лицензии. Требует заполнения переменных$SerialNumberSignServerLicense
и$CompanyNameSignServerLicense
.
$SerialNumberSignServerLicense
— Серийный номер лицензии на Сервис Подписи.$CompanyNameSignServerLicense
— Имя компании, использующей лицензию.
По умолчанию конфигурационный файл DeployConfig.ps1 содержит значение переменной $DssSignServerLicense = «demo»,
что активирует Демонстрационную лицензию на Сервис Подписи.
Масштабируемость и отказоустойчивость
Для повышения производительности и отказоустойчивости сервиса электронной подписи на базе КриптоПро DSS может использоваться как вертикальное (увеличение производительности каждого сервера путем наращивания вычислительной мощности), так и горизонтальное (увеличение количества серверов и балансировка сетевой нагрузки) масштабирование. Поддерживается также отказоустойчивая конфигурация КриптоПро HSM.
Настройка sms- и email-оповещений
Добавление записи «SMS-сообщений» в папку C:inetpubwwwrootfakesms_$ApplicationName производится
при помощи следующей переменной в разделе «Оповещения (SMS и Email)».
$Fakesms
—true
илиfalse
. По умолчанию переменная равнаtrue
.
Расширенная настройка SMS-оповещения
Оповещения посредством электронной почты настраиваются при помощи следующих переменных.
$mail
— Включение/отключение настройки Email-оповещения. Принимает значенияtrue
илиfalse
. По умолчанию переменная равнаfalse
.$emailhost
— Адрес почтового сервера.$emailport
— Порт обращения к почтовому серверу.$emailFromAddress
— Email, с которого будут приходить оповещения.
Расширенная настройка Email-оповещения
Настройка средств уц
Скрипт позволяет настроить обработчик запросов на сертификат при помощи следующей переменной.
$Enrollmode
— принимает значенияoob
(Out-of-Band) иuc20
(КриптоПро УЦ 2.0). По умолчанию значение равноoob
.
В случае если выбрано значение параметра $Enrollmode= «uc20», необходимо задать следующие дополнительные
параметры:
Дополнительно скрипт для быстрого старта позволяет выдать права на доступ к закрытому ключу сертификата
Оператора УЦ при помощи задания следующей переменной:
$OperatorUCKeyName
— если используется обработчик УЦ 2.0, значение данной переменной должно быть равным$OperatorCertThumbprint
Подробнее об обработчиках запроса на сертификат
Общие сведения об администрировании компонентов криптопро dss
Администрирование осуществляется через консоль PowerShell с помощью командлетов, входящих в состав
PowerShell-модуля каждого из компонентов. В общем случае объекты администрирования поддерживают
следующий набор действий:
- Создать объект (Add-, New-);
- Изменить параметры объекта (Set-, Update-);
- Получить параметры объекта (Get-*);
- Удалить объект (Remove-*).
Часть объектов поддерживают дополнительные действия, такие как: включить/отключить (Enable-, Disable-),
копировать (Copy-), протестировать (Test-). Имена командлетов имеют следующую структуру: <Verb>-<Name>,
где
Список командлетов, входящих в состав PowerShell-модуля каждого из компонентов КриптоПро DSS, можно
получить, выполнив команду:
Get-Command -Module CryptoPro.DSS.PowerShell.<Компонент> -CommandType Cmdlet
PowerShell-модули компонентов КриптоПро DSS приведены ниже.
Компонент | Имя модуля |
---|---|
Центр Идентификации | CryptoPro.DSS.PowerShell.STS |
Сервис Подписи | CryptoPro.DSS.PowerShell.SignServer |
Веб-интерфейс Пользователя | CryptoPro.DSS.PowerShell.Frontend |
Сервис Аудита | CryptoPro.DSS.PowerShell.Analytics |
Модуль аутентификации myDSS | CryptoPro.DSS.PowerShell.MyDSSInternal, CryptoPro.DSS.PowerShell.MyDSSExternal |
Для получения справки по каждому из командлетов выполните команду
Get-help <имя_командлета>
Например:
Get-Help Set-DSSStsProperties
или
Get-Help Set-DSSStsProperties –Full
Очистка данных об операциях
Данные и состояние подтверждаемых пользователем операций сохраняются в базе данных
Сервиса Обработки Документов (по умолчанию имя БД OperationStoreDb).
По умолчанию данные подтверждаемых операций хранятся бессрочно.
В КриптоПро DSS реализован механизм удаления устаревших данных о подтверждаемых операций.
Настройка выполняется при помощи следующих командлетов:
Данные командлеты позволяют настроить время хранения данных об операциях и период очистки.
Параметр | Описание |
---|---|
IsEnabled | Включить/отключить очистку устаревших данных. |
Times | Точное время запуска очистки устаревших данных. Формат: hh:mm:ss. |
OperationLimitInMinutes | Время хранения данных об операциях в минутах. При очистке будут удалены все записи, созданные ранее указанного времени. |
BatchSize | Размер блока удаляемых за одну итерацию записей. По умолчанию 100. |
Время хранения записей OperationLimitInMinutes необходимо указывать не менее времени подтверждения операции и времени выполнения операции.
Время подтверждения операции задается на Центре Идентификации — параметр OtpConfirmationTimeOut командлетов Get-DssStsProperties/Set-DssStsProperties.
Если прикладная система использует API DSS для получения сведений о выполненных операциях, то время хранения данных об операция нужно задавать, исходя из требований прикладной системы.
Например, прикладной системе необходимо собирать статистику о пользовательских операциях в течении месяца, тогда необходимо задать значение -OperationLimitInMinutes равным 44640.
Если прикладной системе необходимо иметь возможность повторно выгрузить подписанные и/или исходные документы, можно использовать их идентификаторы в DSS.
Идентификаторы подписанных и исходных документов, хранимых в Сервисе Обработки Документов, хранятся
в данных операции. В данном случае в Сервисе Обработки Документов должно быть настроено соответствующее время хранения документов.
Примечание
Пул приложений Центра Идентификации должен быть активен в указанное время очистки от устаревших записей.
Активность пула поддерживается наличием запросов от пользователей (или систем мониторинга Health Check)
или настройками пула на сервере приложений IIS — режим AlwaysRunning.
Порядок работы со сценарием автоматического развертывания криптопро dss
Отредактируйте файл DeployConfig.ps1 из состава архива dss_quickstart.zip. Заполните переменные
необходимыми значениями и сохраните полученный результат.
Запустите файл DSSDeploy.ps1 в консоли PowerShell от имени администратора. После запуска становится
доступным меню скрипта. Введите номер пункта меню в зависимости от этапа, который необходимо выполнить, и
нажмите «Enter»:
Скрипт для быстрого старта DSSDeploy.ps1 позволяет выполнить следующие настройки веб-сервера.
- Добавление необходимых компонентов и ролей веб-сервера. Данное действие позволяет включить и
установить недостающие компоненты веб-сервера (IIS), необходимые для работы КриптоПро DSS. - Добавление привязки сертификата (RSA) на порт
443
. При этом соответствующий сертификат будет сгенерирован автоматически. - Добавление привязки сертификата (ГОСТ) на порт
443
. При этом соответствующий сертификат будет сгенерирован автоматически. - Добавление привязки сертификата (ГОСТ) на порт
4430
. При этом соответствующий сертификат будет сгенерирован автоматически.
Примечание
Для установления защищенного канала ГОСТ-TLS с используемым мобильным приложением на базе DSS SDK
требуется установить на выделенном порту дополнительный сертификат веб-сервера.
Подробнее о настройке веб-сервера
Скрипт для быстрого старта DSSDeploy.ps1 позволяет развернуть КриптоПро DSS по следующим основным
сценариям.
1. Выбор сценария
- «КриптоПро DSS». Включает развертывание и настройку Центра Идентификации, Сервиса Подписи, Сервиса Аудита и Веб-интерфейса Пользователя.
- «КриптоПро DSS DSS SDK». Включает развертывание всех компонентов конфигурации «КриптоПро DSS», дополнительно включает развертывание и настройку Сервиса Операций, Сервиса Обработки Документов и Сервиса Взаимодействия с DSS SDK (mDAG).
Каждая из конфигураций позволяет добавить модуль аутентификации myDSS, что требует
дополнительных настроек перед запуском скрипта.
2. Подключение к БД
После того как был выбран вариант конфигурации КриптоПро DSS, выберите расположение БД, которая
была создана ранее. Выбор расположения БД влияет на настройки строки подключения создаваемого экземпляра
к данной БД. Доступные варианты:
3. Выбор DNS-имени для сервера с DSS
На следующем этапе необходимо задать DNS-имя сервера DSS. Доступные варианты:
- Использовать имя компьютера, на котором запущен скрипт.
- Ввести произвольное имя. При выборе данного пункта скрипт предложит ввести указанные данные.
4. Выбор алгоритма подписи сервисных сертификатов
На следующем этапе необходимо выбрать алгоритм подписи служебных сертификатов. Доступные варианты:
5. Выбор способа именования экземпляров сервисов
На данном этапе необходимо ввести основное имя экземпляра (на основании него будут сформированы
остальные имена): Пример при названии test_, имя ЦИ будет test_idp, имя Сервиса Подписи будет
test_ss и т.д.
6. Результат выполнения скрипта
По завершении работы скрипта будет автоматически выполнено следующее:
- создание и настройка экземпляров сервисов КриптоПро DSS в выбранной конфигурации;
- создание необходимых сервисных сертификатов (ГОСТ на 15 месяцев или RSA на 50 лет в зависимости от выбранного пункта меню) и назначение их сервисам;
- выдача прав пулам приложений на доступ к закрытым ключам сервисных сертификатов.
Дополнительно в папке, откуда был запущен скрипт, будут созданы следующие файлы и директории:
Var.txt
— список переменных, использованных во время выполнения скрипта;Tekstovka.txt
— произведенные настройки экземпляров сервисов КриптоПро DSS;- директория
certs
— все созданные во время выполнения скрипта сертификаты.
Примечание
Последующие запуски скрипта могут перезаписывать указанные файлы, если будут выбраны команды,
влияющие на описанные выше файлы.
В данном разделе описаны дополнительные возможности скрипта для быстрого старта, позволяющие добавить
и изменить различные настройки при развертывании КриптоПро DSS. Все описанные настройки выполняются
путем редактирования описанных ниже параметров (переменных) в файле скрипта DSSDeploy.ps1.
Развертывание дополнительных компонентов, необходимых для работы модуля аутентификации myDSS, а также
выполнение других настроек выполняется после заполнения переменных в блоке «Настройка DSS myDSS».
Подробнее о myDSS
Примечание
Подключение БД Сервиса Операций к другим сервисам может выполняться в любом порядке.
Первая из выполненных команд создаёт базу данных. Вторая подключает к развёрнутой базе
данных соответствующий сервис.
Важно: В обеих командах должно быть указано одно и то же имя БД $DBNameOpStore.
Срок действия clientsecret
$SecretLifetime
— Срок действия ClientSecret в секундах при настройке аутентификации с использованием OAuth 2.0. По умолчанию имеет значение8760
. В тестовых целях значение может быть установлено равным0
, что делает данный ClientSecret бессрочным.