Команда certificates#
Команда импортирует сертификат X.509 в локальное хранилище, экспортирует выбранные сертификаты либо показывает сведения о переданном сертификате.
Содержание:
- Общая информация
- Формат ссылки
- Параметры
- Импорт сертификата
- Экспорт сертификатов
- Просмотр сведений о сертификате
- Справочник полей результата
- Смотрите также
Общая информация#
Все три операции требуют действия пользователя: приложение открывает соответствующий экран, и без подтверждения хранилище не изменяется и сертификаты не выдаются.
Закрытые ключи через эту команду не передаются.
Формат ссылки#
Формат локального вызова описан в разделе Формат ссылки для локального вызова.
Параметры#
Параметры содержат поле operation и объект props:
| Поле | Значение |
|---|---|
operation | import, export или information |
props.headerText | Необязательный заголовок; длиннее 40 символов сокращается |
props.descriptionText | Необязательное описание; длиннее 120 символов сокращается |
props.store | Массив хранилищ |
props.multy | Разрешить выбор нескольких сертификатов при экспорте; по умолчанию false |
props.certificateBase64 | Сертификат в формате DER, закодированном в Base64 — для import и information |
localResultParams.savePath | Каталог результата локального вызова; без него результат в файл не записывается |
Хранилища:
| Значение | Раздел приложения |
|---|---|
MY | Личные сертификаты |
AddressBook | Сертификаты других пользователей |
CA | Промежуточные удостоверяющие центры |
ROOT | Корневые удостоверяющие центры |
CA_OR_ROOT | Удостоверяющие центры — без разделения на промежуточные и корневые |
MyAll принимается как MY, CaAndRoot — как CA_OR_ROOT. Повторяющиеся значения store отбрасываются. Неизвестное хранилище — ошибка: список не расширяется до всех сертификатов.
Импорт сертификата#
{
"jsonrpc": "2.0",
"id": "tx-import",
"result": {
"operation": "import",
"props": {
"store": ["MY"],
"certificateBase64": "<DER Base64>"
}
}
}
Приложение показывает сертификат и хранилища, допустимые для него: пользовательский сертификат — Личные и Другие пользователи, самоподписанный сертификат УЦ — Корневые удостоверяющие центры, остальные сертификаты УЦ — Промежуточные удостоверяющие центры; для сертификата УЦ доступно также хранилище Удостоверяющие центры. Значение props.store[0] подставляется как предварительный выбор, но окончательное хранилище выбирает пользователь. Если props.store[0] недопустимо для сертификата, импорт отклоняется без окна.
Результат:
{
"jsonrpc": "2.0",
"method": "certificates.import",
"params": {
"id": "tx-import",
"status": "Completed"
}
}
Экспорт сертификатов#
{
"jsonrpc": "2.0",
"id": "tx-export",
"result": {
"operation": "export",
"props": {
"store": ["MY", "AddressBook"],
"multy": true
}
}
}
Если props.store не задан, предлагаются личные сертификаты. Пользователь выбирает один или несколько сертификатов, и приложение отправляет их в формате DER, закодированном в Base64, вместе со сведениями о владельце:
{
"jsonrpc": "2.0",
"method": "certificates.base64",
"params": {
"id": "tx-export",
"certificates": [
{
"certificateBase64": "<DER Base64>",
"hash": "b0a1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9",
"issuerFriendlyName": "Example CA",
"issuerName": "CN=Example CA",
"notAfter": "2027-07-13T10:00:00.000Z",
"notBefore": "2026-07-13T10:00:00.000Z",
"rootCAMinComSvyaz": false,
"subjectFriendlyName": "Example User",
"subjectName": "CN=Example User",
"status": true,
"serial": "01AB",
"x509": "<DER Base64>"
}
]
}
}
Просмотр сведений о сертификате#
{
"jsonrpc": "2.0",
"id": "tx-information",
"result": {
"operation": "information",
"props": {
"certificateBase64": "<DER Base64>"
}
}
}
Приложение открывает карточку сертификата в отдельной вкладке и отправляет:
{
"jsonrpc": "2.0",
"method": "certificates.information",
"params": {
"id": "tx-information",
"status": "Completed"
}
}
Для сетевого вызова результат уходит на адрес исходного вызова; локальный вызов сохраняет тот же конверт в файл certificates-<id>.json в каталоге localResultParams.savePath.
Справочник полей результата#
| Поле | Тип | Описание |
|---|---|---|
certificateBase64 | string | Сертификат в формате DER, закодированном в Base64 |
hash | string | Отпечаток сертификата SHA-1 |
issuerName | string | Издатель |
issuerFriendlyName | string | Издатель в удобочитаемом виде |
subjectName | string | Владелец |
subjectFriendlyName | string | Владелец в удобочитаемом виде |
serial | string | Серийный номер |
notBefore | string | Начало срока действия |
notAfter | string | Окончание срока действия |
status | boolean | Результат проверки цепочки сертификата |
rootCAMinComSvyaz | boolean | Цепочка завершается корневым сертификатом Минцифры |
Смотрите также#
- Описание и возможности API — общий формат вызова.
- Команда certrequests — создание запроса на сертификат.
- Управление сертификатами — те же операции в интерфейсе.