Запрос служит для получения данных сертификата открытого ключа, который соответсвует одному из личных ключей, которые содержит SIM-карта.
URL-адрес запроса
https://localhost:9094/api/v1/mssp/{msspId}/certificate/base64
Метод
PUT
Параметры запроса
msspId | String | Идентификатор ПУМЭП. Следует получить с использованием запроса Получение списка поддерживаемых ПУМЭП |
Настраиваемые заголовки запроса
Content-Type | application/json |
Параметры JSON объекта запроса
Имя | Тип | Описание | Допустимые значения |
---|---|---|---|
phoneNumber | String | Номер телефона | Строка с номером телефона, который связан с SIM-картой, на которой содержится требуемый личный ключ |
positionId | String | Идентификатор должности владельца профиля | Следует получить с использованием запроса Получение списка профилей владельца ключей |
serviceId | String | Идентификатор сервиса, который связан с выработкой электронной подписи | Следует получить с использованием запроса Получение списка профилей владельца ключей |
Ответ
Код ответа | Content-type | Допустимые параметры | Пример содержимого |
---|---|---|---|
200 | application/json | base64Data | ownerCertificateInfo |
400 | application/json | message | { |
500 | application/json | message | { |
Параметры JSON объекта ответа
Параметр | Тип данных | Описание |
---|---|---|
message | String | Описание результата проведения операции |
failureCause | String | Дополнительная иформация об ошибке:
Наличие всех, одного или нескольких типов дополнительной информации в поле "failureCause" необязательно. |
ownerCertificateInfo | Object* | Информация о владельце |
issuerCertificateInfo | Object* | Информация об издателе |
publicKeyCertificateInfo | Object* | Информация об открытом ключе |
certificateSerialNumber | Object* | Серийный номер сертификата |
notBefore | Object* | Начало действия |
notAfter | Object* | Окончание действия |
extensionsCertificateInfo | Object* | Расширения |
Поля объекта ownerCertificateInfo.value
Поле | Тип данных | Описание |
---|---|---|
ownerSurname | Object* | Фамилия |
ownerGivenname | Object* | Имя отчество |
ownerFullName | Object* | Полное имя |
ownerCountry | Object* | Страна |
ownerRegion | Object* | Область |
ownerCity | Object* | Город |
ownerAddress | Object* | Почтовый адрес |
ownerSerialNumber | Object* | Серийный номер владельца |
ownerPosition | Object* | Должность |
Поля объекта issuerCertificateInfo.value
Поле | Тип данных | Описание |
---|---|---|
issuerOrganization | Object* | Организация |
issuerDepartment | Object* | Подразделение |
issuerFullName | Object* | Полное имя |
issuerCountry | Object* | Страна |
issuerRegion | Object* | Область |
issuerCity | Object* | Город |
issuerAddress | Object* | Почтовый адрес |
issuerSerialNumber | Object* | Серийный номер издателя |
Поля объекта publicKeyCertificateInfo.value
Поля объекта extensionsCertificateInfo.value
Поле | Тип данных | Описание |
---|---|---|
personalData | Object* | Персональные данные |
alternativeOwnerName | Object* | Альтернативное имя владельца |
subjectKeyId | Object* | Идентификатор ключа |
subjectOwnerId | Object* | Идентификатор владельца |
certificateProfile | Object* | Профиль сертификата |
keyUsage | Object* | Назначение сертификата |
isTemporary | Object* | Признак стартового сертификата |
isReinforced | Object* | Признак усиленного сертификата |
Поля объекта extensionsCertificateInfo.value.personalData.value
Поле | Тип данных | Описание |
---|---|---|
customId | Object* | Внешний идентификатор |
passport | Object* | Паспортные данные |
drfou | Object* | Регистрационный номер учетной карточки плательщика налогов |
edrpou | Object* | Код ЕДПРОУ |
eddrun | Object* | Уникальный номер записи в ЕГДР |
Поля объекта типа Object*
Поле | Тип данных | Описание |
---|---|---|
description | String | Описание поля на языке, который выбран пользователем в Сервисе |
value | [Object, String, Boolean, Number, Array, null] | Значение поля |
Пример данных сертификата
{ "ownerCertificateInfo": { "description": "Власник", "value": { "ownerSurname": {"description": "Прізвище", "value": "Тестовый"}, "ownerGivenname": {"description": "Імя по-батькові", "value": "Сертификат6 Стартовый"}, "ownerFullName": {"description": "Повне ім'я", "value": "Тестовый Сертификат 6"}, "ownerCountry": {"description": "Країна", "value": "ua"}, "ownerRegion": {"description": "Область", "value": "Харьковская"}, "ownerCity": {"description": "Місто", "value": "Харьков"}, "ownerAddress": {"description": "Поштова адреса", "value": "\"пр. Науки"}, "ownerSerialNumber": {"description": "Серійний номер власника", "value": "46 30 07 62 53 88 0D 40"}, "ownerPosition": {"description": "Посада", "value": "Разработчик"} } }, "issuerCertificateInfo": { "description": "Видавник", "value": { "issuerOrganization": {"description": "Організація", "value": "\"ТОВ \\\"Сайфер БІС\\\"\""}, "issuerDepartment": {"description": "Підрозділ", "value": "Центр сертифікації ключів"}, "issuerFullName": {"description": "Повне ім'я", "value": "\"ЦСК ТОВ \\\"Сайфер БІС\\\"\""}, "issuerCountry": {"description": "Країна", "value": "ua"}, "issuerRegion": {"description": "Область", "value": null}, "issuerCity": {"description": "Місто", "value": "Київ"}, "issuerAddress": {"description": "Поштова адреса", "value": null}, "issuerSerialNumber": {"description": "Серійний номер видавця", "value": "46 30 07 62 53 88 0D 40"} } }, "publicKeyCertificateInfo": { "description": "Інформація про відкритий ключ", "value": { "publicKey": { "description": "Відкритий ключ", "value": "8D 39 4C DA 49 7D 1D A7 46 92 FE 97 A4 1D 0B AD C3 B0 9F 1B 5C 07 8C 79 31 72 36 92 40 08 2E 13 00" }, "dsAlgorism": {"description": "Алгоритм ЕП", "value": "ДСТУ 4145-2002, ПБ, little-endian"} } }, "certificateSerialNumber": {"description": "Серійний номер сертифікату", "value": "E5 69 8B B0 4D A1 BF 2F"}, "notBefore": {"description": "Початок дії", "value": "Sat Nov 19 00:00:00 EET 2016"}, "notAfter": {"description": "Закінчення дії", "value": "Sun Nov 19 00:00:00 EET 2017"}, "extensionsCertificateInfo": { "description": "Розширення", "value": { "personalData": { "description": "Персональні дані", "value": { "customId": {"description": "Зовнішній ідентифікатор", "value": "000006"}, "passport": {"description": "Паспортні дані", "value": "КН000006"}, "drfou": {"description": "Реєстраційний номер облікової картки платника податків", "value": null}, "edrpou": {"description": "Код ЕДПРОУ", "value": null}, "eddrun": {"description": "Унікальний номер запису в ЄДДР", "value": null} } }, "alternativeOwnerName": {"description": "Альтернативне ім'я власника", "value": "test@cipher.com"}, "subjectKeyId": { "description": "Ідентифікатор ключа", "value": "B6 2F CE 32 A7 23 48 AB FB 26 F1 5A 4C 04 F9 1A 5E CF 03 D4 98 3E 86 AC 07 32 75 8D 59 37 4C A0" }, "subjectOwnerId": {"description": "Ідентифікатор власника", "value": "46 30 07 62 53 88 0D 40"}, "certificateProfile": {"description": "Профіль сертифіката", "value": "3"}, "keyUsage": {"description": "Призначеня сертифіката", "value": "Електронний підпис, Невідрікаємість"}, "isTemporary": {"description": "Стартовий", "value": "false"}, "isReinforced": {"description": "Посилений", "value": "false"} } } }
Пример кода на JavaScript + jQuery 2.2.4
$.ajax({ url: "https://localhost:9094/api/v1/mssp/IdHubTest1/certificate/info", type: "PUT", dataType: "json", contentType: "application/json", data: JSON.stringify({phoneNumber : "380934000227", positionId : "4504", serviceId : "SIGN_DSTU"}) }).done(function (jsonResponse, textStatus, xhr) { message = jsonResponse.message; }).fail(function (xhr) { try { var jsonResponse = JSON.parse(xhr.responseText); message = jsonResponse.message; failureCause = jsonResponse.failureCause; } catch (e) { message = (xhr.responseText == undefined) ? "Ошибка при получении данных сетификата." : xhr.responseText; } })