- Адрес службы штампов времени
- Ввод лицензии
- Загрузка скрипта и необходимых файлов
- Задание имен экземпляров сервисов вручную
- Изменение сайтапорта для веб-приложений 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 бессрочным.
