Запрос служит для получения результата проверки ЭЦПЭП. Запрос является блокирующим, то есть результат будет получен только после завершения процесса проверки ЭЦПЭП, если такой был ранее запущен. Если ЭЦП ЭП действительна, будет возвращен HTTP статус код 200. Если в ЭЦП ЭП недействительна или в процессе ее непосредственной проверки возникли ошибки, будет возвращен HTTP статус код 406. При возникновении других типов ошибок, возвращаются HTTP статус коды 503 или 400.
URL-адрес запроса
https://local.cipher.kiev.ua:9090/api/v1/ticket/{uuid}/ds/verifier
Метод
GET
Параметры запроса
uuid | String | Идентификатор сессии |
Настраиваемые заголовки запроса
Отсутствует
Ответ
Код ответа | Content-type | Допустимые параметры | Пример содержимого |
---|---|---|---|
200 | application/json | message verifyResults | { |
503 | application/json | message | { |
400 | application/json | message | { |
406 | application/json | message verifyResults failureCause | { |
Параметры JSON объекта ответа
Параметр | Тип данных | Описание |
---|---|---|
message | String | Описание результата проведения операции |
failureCause | String | Описание причины возникновения ошибки, которая возникла при выполнении запроса на проверку ЭЦПЭП |
verifyResults | Array | Результаты проверки отдельно по каждой из ЭЦПЭП |
Поля элемента массива verifyResults
Поле | Тип данных | Описание |
---|---|---|
status | String | "SUCCESS" - проверка ЭЦП ЭП произведена без ошибок "FAILURE" - в процессе проверки ЭЦП ЭП возникли ошибки |
failureCause | String | Описание причины возникновения ошибки, которая возникла при непосредственной проверке ЭЦПЭП |
signerInfo | Object | Информация из сертификата владельца ЭЦПЭП |
signingDateTime | String | Время выработки ЭЦПЭП |
isValid | Boolean | true - ЭЦП ЭП действительна false - ЭЦП ЭП недействительна |
contentTimestamp | Object | Результат проверки электронной метки (ЭМВ) времени данных, для которых была выработана ЭП |
signatureTimestamps | Array | Результаты проверки электронных меток времени электронной подписи |
isUntrustedValid | Boolean | Для проверки подписи использовалось время создания подписи, которое не заверено электронной меткой времени. true - ЭП действительна false - ЭП недействительна |
...
Поле | Тип данных | Описание |
---|---|---|
Получение результата проверки ЭЦПЭП | Object* | Информация о владельце |
Получение результата проверки ЭЦПЭП | Object* | Информация об издателе |
Получение результата проверки ЭЦПЭП | Object* | Информация об открытом ключе |
certificateSerialNumber | Object* | Серийный номер сертификата |
notBefore | Object* | Начало действия |
notAfter | Object* | Окончание действия |
Получение результата проверки ЭЦПЭП | Object* | Расширения |
Поля объекта
Anchor | ||||
---|---|---|---|---|
|
...
Поля объекта
Получение результата проверки ЭЦПЭП.issuerCertificateInfo.value Anchor issuerCertificateInfo issuerCertificateInfo
...
Поля объекта
Получение результата проверки ЭЦПЭП.publicKeyCertificateInfo.value Anchor publicKeyCertificateInfo publicKeyCertificateInfo
Поля объекта
Получение результата проверки ЭЦПЭП.extensionsCertificateInfo.value Anchor extensionsCertificateInfo extensionsCertificateInfo
Поле | Тип данных | Описание |
---|---|---|
Получение результата проверки ЭЦПЭП | Object* | Персональные данные |
alternativeOwnerName | Object* | Альтернативное имя владельца |
subjectKeyId | Object* | Идентификатор ключа |
subjectOwnerId | Object* | Идентификатор владельца |
certificateProfile | Object* | Профиль сертификата |
keyUsage | Object* | Назначение сертификата |
isTemporary | Object* | Признак стартового сертификата |
isReinforced | Object* | Признак усиленного сертификата |
Поля объекта
Получение результата проверки ЭЦПЭП.Получение результата проверки ЭЦПЭП.value.personalData.value Anchor personalData personalData
...
Пример объекта signerInfo
Code Block |
---|
"message": "ЦифроваяЭлектронная подпись действительна.", "verifyResults": [{ "status": "SUCCESS", "signerInfo": { "ownerCertificateInfo": { "description": "Владелец", "value": { "ownerSurname": {"description": "Фамилия", "value": "Горобець"}, "ownerGivenname": {"description": "Имя отчество", "value": "Сергій Миколайович"}, "ownerFullName": {"description": "Полное имя", "value": "Горобець Сергій Миколайович"}, "ownerCountry": {"description": "Страна", "value": "UA"}, "ownerRegion": {"description": "Область", "value": "Київська"}, "ownerCity": {"description": "Город", "value": "Київ"}, "ownerAddress": {"description": "Почтовый адрес", "value": null}, "ownerSerialNumber": {"description": "Серийный номер владельца", "value": "00"}, "ownerPosition": {"description": "Должность", "value": "Фізична особа"} } }, "issuerCertificateInfo": { "description": "Издатель", "value": { "issuerOrganization": {"description": "Организация", "value": "\"АТ \\\"ІІТ\\\"\""}, "issuerDepartment": {"description": "Подразделение", "value": "Тестовий ЦСК"}, "issuerFullName": {"description": "Полное имя", "value": "\"Тестовий ЦСК АТ \\\"ІІТ\\\"\""}, "issuerCountry": {"description": "Страна", "value": "UA"}, "issuerRegion": {"description": "Область", "value": "Харківська"}, "issuerCity": {"description": "Город", "value": "Харків"}, "issuerAddress": {"description": "Почтовый адрес", "value": null}, "issuerSerialNumber": {"description": "Серийный номер издателя", "value": "00"} } }, "publicKeyCertificateInfo": { "description": "Информация об открытом ключе", "value": { "publicKey": { "description": "Открытый ключ", "value": "FF EF A8 08 00 31 E3 2A D7 D6 BB EF 9E D4 49 79 9D 88 F7 BB 22 23 8F 0C 8D 5E 9D A9 4A FA 24 9B 00" }, "dsAlgorism": {"description": "Алгоритм ЭЦПЭП", "value": "ДСТУ 4145-2002, ПБ, little-endian"} } }, "certificateSerialNumber": { "description": "Серийный номер сертификата", "value": "5B 63 D8 83 75 D9 20 18 04 00 00 00 25 07 00 00 77 10 00 00" }, "notBefore": {"description": "Начало действия", "value": "Fri Feb 05 00:00:00 EET 2016"}, "notAfter": {"description": "Окончание действия", "value": "Mon Feb 05 00:00:00 EET 2018"}, "extensionsCertificateInfo": { "description": "Расширения", "value": { "personalData": { "description": "Персональные данные", "value": { "customId": {"description": "Внешний идентификатор", "value": null}, "passport": {"description": "Паспортные данные", "value": null}, "drfou": { "description": "Регистрационный номер учетной карточки плательщика налогов", "value": null }, "edrpou": {"description": "Код ЕДПРОУ", "value": null}, "eddrun": {"description": "Уникального номера записи в ЕГДР", "value": null} } }, "alternativeOwnerName": { "description": "Альтернативное имя владельца", "value": "sergey.gorobets@unity-bars.com" }, "subjectKeyId": { "description": "Идентификатор ключа", "value": "EF E5 01 81 59 F6 F3 D2 FE E9 7B A7 42 77 69 93 87 20 D6 31 99 C8 59 D9 7C 28 7B D1 B5 D0 F4 0B" }, "subjectOwnerId": {"description": "Идентификатор владельца", "value": "00"}, "certificateProfile": {"description": "Профиль сертификата", "value": null}, "keyUsage": {"description": "Назначение сертификата", "value": "ЦифроваяЭлектронная подпись, Неотрекаемость"}, "isTemporary": {"description": "Стартовый", "value": "false"}, "isReinforced": {"description": "Усиленный", "value": "true"} } } }, "signingDateTime": "Wed Dec 21 12:28:24 EET 2016", "isValid": true }] |
Пример кода на JavaScript + jQuery 2.2.4
Code Block | ||
---|---|---|
| ||
$.ajax({ url: "https://local.cipher.kiev.ua:9090/api/v1/ticket/79343564-147f-4a2a-ac2a-182d7a55f802/ds/verifier", type: "GET", dataType: "json", cache: false }).done(function (jsonResponse, textStatus, xhr) { message = jsonResponse.message; verifyResults = jsonResponse.verifyResults; }).fail(function (xhr) { try { var jsonResponse = JSON.parse(xhr.responseText); message = jsonResponse.message; failureCause = jsonResponse.failureCause; verifyResults = jsonResponse.verifyResults; } catch (e) { message = (xhr.responseText == undefined) ? "Ошибка при получении результата проверки ЭЦПЭП." : xhr.responseText; } }) |
...