Команда certrequests
Генерация запросов на сертификат
Команда certrequests
используется для: генерации запроса на сертификат по шаблону или экспорт запросов.
Схема взаимодействия (экспорт сертификатов):
Формат ссылки
Для выполнения команды certrequests
должна быть сформирована ссылка вида:
-
cryptoarm://
- зарегистрированный протокол -
certrequests
- выполняемая команда -
<URL>
- ссылка, на которую КриптоАРМ будет слать запросы -
id
- уникальный идентификатор транзакции
Пример:
Общее
Все запросы между КриптоАРМ и сервером ДОЛЖНЫ соответствовать спецификации протокола JSON-RPC 2.0.
В качестве транспорта используется HTTP.
Общее описание указано в разделе Формат ссылки.
Получение параметров операции
После получения команды certrequests
КриптоАРМ отправляет запрос на получение параметров операции.
Формат запроса
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
method | certrequests.parameters | Используемый метод. Всегда certrequests.parameters . |
id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. Подробнее в разделе Формат ссылки |
diagnostic | IDiagnosticInformaton | Диагностическая информация о рабочем месте |
Пример:
Формат ответа
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
result | ICertrequestsParameters | Объект со сведениями о параметрах операции |
id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. Подробнее в разделе Формат ссылки |
Пример ответа:
Отправка запроса на сертификат
После генерации запроса, он будет отправлен на сервер. Используются нотификации (уведомления), для которых не требуется ответ сервера.
Формат запроса
Ключ | Значение | Описание |
---|---|---|
jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
method | certrequests.base64 | Используемый метод. Всегда certrequests.base64 . |
params | ICertificaterequestBase64Param | Параметры, содержащие объект сертификата |
Пример:
Интерфейс ICertrequestsParameters
Объекты данного типа описывают параметры команды.
Свойство | Тип | Описание |
---|---|---|
operation | string | Тип операции: генерация запроса на сертификат. Значение типа: `CertrequestsOperation |
props | ICertrequestsOperationGenerateProps | Параметры операции |
Тип CertrequestsOperation
Возможные операции с запросами на сертификат.
Значение | Описание |
---|---|
GENERATE | Генерация запроса на сертификат |
Интерфейс ICertrequestsOperationGenerateProps
Объекты данного типа описывают дополнительные свойства операции.
Свойство | Тип | Значение | Описание |
---|---|---|---|
headerText? | string | Необязательный параметр. Используется для отображения в заголовке окна. Максимальная длина: 40 символов. | headerText? |
descriptionText? | string | Необязательный параметр. Используется для отображения в сведениях об операции. Максимальная длина: 120 символов. | descriptionText? |
templateType | string | JSONTemplate или CertificateTemplate | В качестве шаблона используется JSON типа IJSONTemplate или в качестве шаблона используется сертификат |
template | IJSONTemplate или ICertificateTemplate | Шаблон для генерации запроса на сертификат |
Интерфейс ICertificatesParameters
Объекты данного типа описывают поля для генерации запроса на сертификат.
Свойство | Тип | Описание |
---|---|---|
Description | string | Описание шаблона |
FriendlyName | string | Дружественное имя шаблона |
RDN | IRDN[] | Набор полей DN |
Extensions | IRequestExtension | Расширения |
MarkExportable | boolean | Определяет экспортируемость ключей |
Интерфейс IJSONTemplate
Свойство | Тип | Описание |
---|---|---|
Description | string | Описание шаблона |
FriendlyName | string | Дружественное имя шаблона |
RDN | IRDN[] | Набор полей DN |
Extensions | IRequestExtension | Расширения |
MarkExportable | boolean | Определяет экспортируемость ключей |
Интерфейс IRDN
Свойство | Тип | Описание |
---|---|---|
Oid | string | Описание шаблона |
Name | string | Наименование OID |
Length | number | Максимальная длина поля |
LocalizedName | string | Локализованное наименование OID |
SettingsValues | string[] | Список возможных значений |
DefaultValue | string | Значение по умолчанию |
ProhibitAnyValue | boolean | Флаг указывающий, что пользователю доступны только значения из массива SettingsValues |
ProhibitChange | boolean | Флаг указывающий, что поле не может быть изменено |
ProhibitEmpty | boolean | Флаг указывающий, что поле должно быть непустым |
Интерфейс IRequestExtension
Свойство | Тип | Описание |
---|---|---|
KeyUsage | IKeyUsage[] | Описание шаблона |
ExtendedKeyUsage | IExtendedKeyUsage[] | Наименование OID |
Интерфейс IKeyUsage
Свойство | Тип | Описание |
---|---|---|
Name | string | Наименование OID |
LocalizedName | string | Локализованное наименование OID |
DefaultValue | boolean | Значение по умолчанию |
ProhibitChange | boolean | Флаг указывающий, что поле не может быть изменено |
Интерфейс IExtendedKeyUsage
Свойство | Тип | Описание |
---|---|---|
Name | string | Наименование OID |
LocalizedName | string | Локализованное наименование OID |
DefaultValue | boolean | Значение по умолчанию |
ProhibitChange | boolean | Флаг указывающий, что поле не может быть изменено |
Интерфейс ICertificateTemplate
Объекты данного типа используются для генерации запроса на сертификат, где запрос формируется по сертификату.
Свойство | Тип | Описание |
---|---|---|
certificateBase64 | string | Сертификат в формате X.509 закодированный в Base64 |
Интерфейс ICertificaterequestBase64Params
Свойство | Тип | Описание |
---|---|---|
id | string | Идентификатор транзакции |
certificaterequestBase64 | string | Запрос в формате X.509 закодированный в Base64 |
friendlyName | string | Дружественное имя субъекта |