Команда diagnostics
Запросы на диагностику рабочего места
Команда diagnostics
используется для диагностики рабочего места пользователя. Схема взаимодействия:ката или списка сертификатов, а импорта сертификата в локальное хранилище, просмотра информации о сертификате.
Формат ссылки
Для выполнения команды diagnostics
должна быть сформирована ссылка вида:
-
cryptoarm://
- зарегистрированный протокол -
diagnostics
- выполняемая команда -
<URL>
- ссылка, на которую КриптоАРМ будет слать запросы -
id
- уникальный идентификатор транзакции
Пример:
Общее
Все запросы между КриптоАРМ и сервером ДОЛЖНЫ соответствовать спецификации протокола JSON-RPC 2.0.
В качестве транспорта используется HTTP.
Общее описание указано в разделе Формат ссылки.
Получение параметров операции
После получения команды diagnostics
КриптоАРМ отправляет запрос на получение параметров операции.
Формат запроса
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
method | diagnostics.parameters | Используемый метод. Всегда diagnostics.parameters . |
id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. Подробнее в разделе Формат ссылки |
diagnostic | IDiagnosticInformaton | Диагностическая информация о рабочем месте |
Пример:
Формат ответа
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
result | IDiagnosticsParameters | Объект со сведениями о параметрах операции |
id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. Подробнее в разделе Формат ссылки |
Пример ответа:
Отправка сведений о рабочем месте
Полученные сведения отправляется POST запросом. Используются нотификации (уведомления), для которых не требуется ответ сервера.
Формат запроса
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
method | diagnostics.information | Используемый метод. Всегда diagnostics.information . |
params | IDiagnosticsInformation | Сведения о рабочем месте |
Пример:
Интерфейс IDiagnosticsParameters
Объекты данного типа описывают вид операции и её параметры.
Свойство | Тип | Описание |
---|---|---|
operation | string | Тип операции. Доступные значения типа: `IDiagnosticOperation |
props | IDiagnosticsOperationProps | Параметры операции |
Тип IDiagnosticOperation
Возможные операции.
Значение | Описание |
---|---|
SYSTEMINFORMATION | Сведения о системе |
CSP_ENABLED | Наличие КриптоПро CSP |
CADES_ENABLED | Доступность CADES |
VERSIONS | Версии используемых компонентов (КриптоАРМ, КриптоПро) |
PROVIDERS | Список криптопровайдеров |
LICENSES | Статус лицензий |
PERSONALCERTIFICATES | Наличие личных сертификатов |
Интерфейс IDiagnosticsOperationProps
Интерфейс IDiagnosticsOperationProps
описывает параметры операции.
Свойство | Тип | Описание |
---|---|---|
headerText? | string | Необязательный параметр. Используется для отображения в заголовке окна. Максимальная длина - 40 символов. |
descriptionText? | string | Необязательный параметр. Используется для отображения в сведениях об операции. Максимальная длина - 120 символов. |
Интерфейс IDiagnosticsInformation
Объекты данного типа описывают объекты, содержащие сведения о рабочем месте.
Свойство | Тип | Описание |
---|---|---|
id | string | Идентификатор транзакции |
API_VERSION | string | Версия поддерживаемого КриптоАРМ API |
SYSTEMINFORMATION | ISystemInformation | Сведения о системе |
CSP_ENABLED | boolean | Установлен или нет КриптоПро CSP |
CADES_ENABLED | boolean | Доступность CADES |
VERSIONS | IVersions | Версии компонентов |
PROVIDERS | IProviders | Сведения о провайдерах |
LICENSES | ILicenses | Сведения о лицензиях |
PERSONALCERTIFICATES | ICertificateIdentityInfo[] | Сведения о личных сертификатах (только идентификаторы) |
Интерфейс ISystemInformation
Объекты данного типа содержат сведения о системе пользователя.
Свойство | Тип | Описание |
---|---|---|
type | string | Тип системы. Возможные значения: 'Linux', 'Darwin' и 'Windows_NT' |
arch | string | Архитектура операционной системы. Возможные значения: 'arm', 'arm64', 'ia32', 'mips', 'mipsel', 'ppc', 'ppc64', 's390', 's390x', 'x32', и 'x64' |
platform | string | Имя платформы. Возможные значения: 'aix', 'darwin', 'freebsd', 'linux', 'openbsd', 'sunos', и 'win32' |
packageType? | string | Необязательный параметр. Тип поддерживаемого пакета (инсталлятора). Возможные значения: ‘msi’, ‘pkg’, ‘rpm’ или ‘deb’ |
Интерфейс IVersions"
Объекты данного типа содержат сведения о версиях.
Свойство | Тип | Описание |
---|---|---|
csp | string | Версия КриптоПро CSP |
cryptoarm | string | Версия КриптоАРМ |
Интерфейс IProviders
Объекты данного типа описывают доступность ГОСТ-провайдеров.
Свойство | Тип | Описание |
---|---|---|
GOST2012_256 | boolean | ГОСТ 2012-256 |
GOST2012_512 | boolean | ГОСТ 2012-512 |
Интерфейс ILicenses
Объекты данного типа описывают статусы лицензии КриптоАРМ и КритпоПро CSP.
Свойство | Тип | Описание |
---|---|---|
csp | ILicenseInfo | Сведения о лицензии на КриптоПро CSP |
cryptoarm | ILicenseInfo | Сведения о лицензии на КриптоАРМ |
Интерфейс ILicenseInfo
Объекты данного типа описывают сведения о лицензии компонента.
Свойство | Тип | Описание |
---|---|---|
status | boolean | Действительна или нет лицензия |
type | LicenseType | Тип лицензии |
expiration? | string | Необязательный параметр. Дата истечения лицензии для трилальных лицензий или подписок (в формате UTC). |
LicenseType Enum
Данное перечисление описывает возможные типы лицензий.
Значение | Описание |
---|---|
Permanent | Постоянная |
Subscription | Подписка |
Daily | Дневная |
Trial | Триальная |