Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Запит служить для отримання даних сертифікату ключа, який знаходиться в ключовому контейнері сесії. Якщо ключ вказаного типу відсутній, будет повернено порожній JSON обʼєкт. 

URL-адреса запиту

https://local.cipher.kiev.ua:9090/api/v1/ticket/{uuid}/keyStore/certificate/info/{keyType}

Метод

PUT

Параметри запиту
uuidStringІдентифікатор сесії
keyTypeString

Тип ключа

Допустимі значення:
signature - електронний підпис
keyAgreement - шифрування

Налаштовувані заголовки запиту
Content-Typeapplication/json
Параметри JSON обʼєкта запиту
Імʼя
Тип
Опис
Допустимі значення

keyStorePassword

StringПароль до ключового контейнеру сесіїРядок, який являє собою пароль для доступу до ключового контейнеру оль для доступа сесії. Ключовий контейнер сесії має бути раніше завантажений за допомогою спеціального запиту.
Відповідь
Код відповідіContent-typeДопустимі параметриПриклад вмісту
200application/jsonownerCertificateInfo
issuerCertificateInfo

publicKeyCertificateInfo
certificateSerialNumber
notBefore
notAfter
extensionsCertificateInfo

503application/jsonmessage
{
   "message" : "Сервіс зберігання даних не запущено."
}
500application/jsonmessage
failureCause

{
   "message" : "Помилка при отриманні інформації про сертифікат.",
"failureCause" : ""
}
Параметри JSON обʼєкта відповіді
ПараметрТип данихОпис
messageStringОпис результату проведення операції
failureCause StringРозширений опис Опис причини виникнення помилки
Отримання даних сертифікатуownerCertificateInfoObject*Інформація про власника
Отримання даних сертифікатуissuerCertificateInfoObject*Інформація про видавця
Отримання даних сертифікатуpublicKeyCertificateInfoObject*Інформація про відкритий ключ
certificateSerialNumberObject*Серійний номер сертифікату
notBeforeObject*Початок дії
notAfterObject*Завершення строку дії
Отримання даних сертифікатуextensionsCertificateInfoObject*Розширення

Поля обʼєкта 

Anchor
ownerCertificateInfo
ownerCertificateInfo
ownerCertificateInfo.value

ПолеТип данихОпис
ownerSurnameObject*Прізвище
ownerGivennameObject*Імʼя по батькові
ownerFullNameObject*Повне імʼя
ownerCountryObject*Країна
ownerRegionObject*Область
ownerCityObject*Населений пункт
ownerAddressObject*Поштова адреса
ownerSerialNumberObject*Серійний номер власника
ownerPositionObject*Посада

Поля обʼєкта 

Anchor
issuerCertificateInfo
issuerCertificateInfo
issuerCertificateInfo.value

ПолеТип данихОпис
issuerOrganizationObject*Організація
issuerDepartmentObject*Підрозділ
issuerFullNameObject*Повне імʼя
issuerCountryObject*Країна
issuerRegionObject*Область
issuerCityObject*Населений пункт
issuerAddressObject*Поштова адреса
issuerSerialNumberObject*Серійний номер власника

Поля обʼєкта 

Anchor
publicKeyCertificateInfo
publicKeyCertificateInfo
publicKeyCertificateInfo.value

ПолеТип данихОпис
publicKeyObject*Відкритий ключ
dsAlgorismObject*Алгоритм ЕП

Поля обʼєкта 

Anchor
extensionsCertificateInfo
extensionsCertificateInfo
extensionsCertificateInfo.value

ПолеТип данихОпис
Отримання даних сертифікатуpersonalDataObject*Персональні дані
alternativeOwnerNameObject*Альтернативне імʼя власника
subjectKeyIdObject*Ідентифікатор ключа
subjectOwnerIdObject*Ідентифікатор власника
certificateProfileObject*Профіль сертифікату
keyUsageObject*Призначення сертифікату
isTemporaryObject*Ознака стартового сертифікату
isReinforcedObject*Ознака посиленого сертифікату
isQualifiedObject*Ознака кваліфікованого сертифікату
isPrivateKeyOnQSCDObject*Ознака засобу КЕП
qscdTypeNameObject*Тип засобу КЕП
isElectronicStampObject*Ознака електронної печатки

Поля обʼєкта 

Anchor
personalData
personalData
Отримання даних сертифікату extensionsCertificateInfo.value.personalData.value   

ПолеТип данихОпис
customIdObject*Зовнішній ідентифікатор
passportObject*Паспортні дані
drfouObject*Реєстраційний номер облікової картки платників податків

edrpou

Object*Код ЄДРПОУ

eddrun

Object*

Унікальний номер запису в ЄДДР

...

Code Block
{
    "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"},
			"isQualified": {"description": "Кваліфікований", "value": "false"},
            "isPrivateKeyOnQSCD": {"description": "Засіб КЕП", "value": "false"},
            "qscdTypeName": {"description": "Тип засобу КЕП", "value": null},
            "isElectronicStamp" : {"description": "Електронна печатка", "value": "false"}
        }
    }
}
Приклад коду на JavaScript + jQuery 2.2.4
Code Block
languagejs
$.ajax({
    url: "https://local.cipher.kiev.ua:9090/api/v1/ticket/{uuid}/keyStore/certificateInfo/signature",
    type: "PUT",
    dataType: "json",
	contentType: "application/json",
    data: JSON.stringify({keyStorePassword : "12345678"})
    cache: false
}).done(function (jsonResponse, textStatus, xhr) {
    certInfo = jsonResponse;
}).fail(function (xhr) {
    try {
        var jsonResponse = JSON.parse(xhr.responseText);
        message = jsonResponse.message;
        failureCause = jsonResponse.failureCause; 
    } catch (e) {
        message = (xhr.responseText == undefined) ? "Помилка при отриманні даних сертифікату." : xhr.responseText;
    }
})

...