Команда certificates
Запросы на экспорт или импорт сертификатов и просмотр информации о сертификат
Команда certificates
используется для: экспорта сертификата или списка сертификатов, а импорта сертификата в локальное хранилище, просмотра информации о сертификате.
Схема взаимодействия (экспорт сертификатов):
Формат ссылки
Для выполнения команды certificates
должна быть сформирована ссылка вида:
-
cryptoarm://
- зарегистрированный протокол -
certificates
- выполняемая команда -
<URL>
- ссылка, на которую КриптоАРМ будет слать запросы -
id
- уникальный идентификатор транзакции
Пример:
Общее
Все запросы между КриптоАРМ и сервером ДОЛЖНЫ соответствовать спецификации протокола JSON-RPC 2.0.
В качестве транспорта используется HTTP.
Общее описание указано в разделе Формат ссылки.
Получение параметров операции
После получения команды certificates
КриптоАРМ отправляет запрос на получение параметров операции.
Формат запроса
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
method | certificates.parameters | Используемый метод. Всегда certificates.parameters . |
id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. Подробнее в разделе Формат ссылки |
diagnostic | IDiagnosticInformaton | Диагностическая информация о рабочем месте |
Пример:
Формат ответа
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
result | ICertificatesParameters | Объект со сведениями о параметрах операции |
id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. Подробнее в разделе Формат ссылки |
Пример ответа для экспорта сертификата:
Пример ответа для экспорта сертификата:
Отправка сертификата
При экспорте сертификатов результат отправляются на сервер. После того, как пользователь выберет нужный сертификат КриптоАРМ отправляет запрос, содержащий выбранные элементы (base64 без заголовков). Используются нотификации (уведомления), для которых не требуется ответ сервера.
Формат запроса
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
method | certificates.base64 | Используемый метод. Всегда certificates.base64 . |
params | ICertificateBase64Params | Параметры, содержащие объект сертификата |
Пример:
Отправка списка сертификатов
При экспорте сертификатов результат отправляются на сервер. Если параметры ICertRequestParameters
содержат поле «multy» со значением «true», то пользователю в КриптоАРМ будет разрешён множественный выбор сертификатов. После того, как пользователь выберет нужные сертификаты и нажмет кнопку «Готово», КриптоАРМ отправляет запрос, содержащий выбранные элементы (base64 без заголовков). Используются нотификации (уведомления), для которых не используется ответ сервера.
Формат запроса
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
method | certificates.base64 | Используемый метод. Всегда certificates.base64 . |
params | ICertificateBase64Params | Параметры, содержащие объект сертификата |
Отправка сведений о сертификате
После того, как пользователь выберет нужный сертификат КриптАРМ отправляет запрос, содержащий выбранные элементы (base64 без заголовков). Используются нотификации (уведомления), для которых не требуется ответ сервера.
Формат запроса
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
method | certificates.information | Используемый метод. Всегда certificates.information . |
params | Объект типа ICertificateInfo | Сведения о сертификате |
Интерфейс ICertificatesParameters
Объекты данного типа описывают параметры команды запроса на получение сертификат.
Свойство | Тип | Описание |
---|---|---|
operation | string | Тип операции импорт, экспорт, информация. Доступные значения: “import”, “export”, “information” |
props | ICertificatesOperationProps | Параметры операции |
Интерфейс ICertificatesOperationProps
Объекты данного типа описывают дополнительные свойства операции.
Свойство | Тип | Описание |
---|---|---|
headerText? | string | Необязательный параметр. Используется для отображения в заголовке окна. Максимальная длина - 40 символов. |
descriptionText? | string | Необязательный параметр. Используется для отображения в сведениях об операции. Максимальная длина - 120 символов. |
store? | string[] | Необязательный параметр. Массив имен хранилищ. Если не задан, то используется значение MY (личные сертификаты). |
multy? | boolean | Необязательный параметр. Разрешен ли множественный выбор. По умолчанию false. |
certificateBase64? | string | Необязательный параметр. Сертификат в формате X.509 закодированный в Base64. |
Интерфейс ICertificateBase64Params
Объекты данного типа описывают параметры запроса для метода certificates.base64
.
Свойство | Тип | Описание |
---|---|---|
id | string | Идентификатор транзакции |
certificateBase64 | string | Сертификат в формате X.509 закодированный в Base64 |
friendlyName | string | Дружественное имя сертификата |
Интерфейс ICertificateInfo
Объекты данного типа описывают объекты, содержащие свойства сертификата.
Свойство | Тип | Описание |
---|---|---|
hash | string | SHA1 отпечаток |
issuerFriendlyName | string | Дружественное имя издателя (CN) |
issuerName | string | Имя издателя |
notAfter | string | Дата окончания действия сертификата |
notBefore | string | Дата начала действия сертификата |
rootCAMinComSvyaz | boolean | Флаг, обозначающий является ли владельцем корневого сертификата цепочки “Минкомсвязь России” |
subjectFriendlyName | string | Дружественное имя субъекта (CN) |
subjectName | string | Имя субъекта |
status | boolean | Статус сертификата. Проверяется вся цепочка. |
serial | string | Серийный номер сертификата |
x509? | string | Необязательный параметр. Сертификат в формате X.509 закодированный в Base64. |
Интерфейс ICertificateIdentityInfo
Объекты данного типа описывают объекты, содержащие параметры сертификата, позволяющие только идентифицировать его.
Свойство | Тип | Описание |
---|---|---|
id | string | Идентификатор транзакции |
hash | string | SHA1 отпечаток |
rootCAMinComSvyaz | boolean | Флаг, обозначающий является ли владельцем корневого сертификата цепочки “Минкомсвязь России” |
status | boolean | Статус сертификата. Проверяется вся цепочка. |
pubKeyAlg | string | OID алгоритма открытого ключа сертификата |
Интерфейс КриптоАРМ при выборе и отправке сертификатов
При выполнении команды запроса на сертификаты, не относящийся к процедуре интерфейс блокируется. Пользователю доступны: выбор сертификатов. Доступны две кнопки: «Готово» и «Отмена». После выполнения команды, приложение будет свернуто в системный трей.