Versions Compared

Key

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

Для використання в якості ключового контейнеру сесії завантажується:

  • файловий контейнер у кодуванні base64 в форматі PKCS#12, пропрієтарних форматів ІІТ

??? ????????????? ? ???????? ????????? ?????????? ?????? ???????????:

  • ???????? ????????? ? ????????? base64 ? ??????? PKCS#12, ????????????? ???????? ??? ("Key-6.dat", "?????????? Приватбанк jks", "??????? ZS2"). ? ?????? ???????? ???????? ??? ?????????? ???????? ???????? ??, ???????????? ? ????????????? ????? ?????????????? ?????? ???? ?, ? ?????? ???????, ?????????? (??????? ????????????) ?? ???????????? ????????? ??????????.
  • ???? ? ??????????? ??????? ? ????????? ?????????? ??? ??????????? ???????? ? ?????????? PKCS#11 ? ???????? (?????????) ??????.

???? ? ??????????? ???????? ? ?????????? PKCS#11, ??????? ????????? ? ??????????, ?? ??????? ??????????? ??????, ?????????? ???????? ??????????? ??????? https://docs.cipher.kiev.ua/x/GYOD.

???? ? ??????? ???????????? ???????????? ?????? ????????? ????????? ?????????? ? ???? ? ????????? ??????????, ?? ????? ??????????? ?????? ????.

???? ?????????? ????????? ??? ?????? ???? ????????? ? ?????? ????????? ??????????, ? ???? ? ????????? ??????????, ?? ????? ??????????? ?????? ????.

?????? ????????? ?????????? ?????? ????????? ? ??????????? ?????? ? ??????? ???????? ?? ??????? ???????? ?????? ? ?????????? ??????????? ??????? Java ??????????? ????????? ?????? ??????. ?????? ????????? ?????????? ??????? ?? ??????????? ???????? ? ????, ???? ?????? ??? ?????? ??????? ??? ????????????? ???????? ??????????.  

  • Україна ZS2"). У якості успішного завантаження при виконанні операції створення ЕП, зашифрування та розшифрування буде використовуватися особистий ключ, у випадку наявності, сертифікат (ланцюг сертифікатів) із завантаженого файлового контейнеру.
  • шлях у спеціальному форматі до файлового контейнеру чи захищеного носія з підтримкою PKCS#11 в активному (пасивному) режимі.

Шлях до захищеного носія з підтримкою PKCS#11, який підключено до комп'ютеру, на якому виконується сервіс, необхідно отримати за допомогою запиту.

Якщо в запиті одночасно присутні дані файлового контейнеру та шлях до ключового контейнеру, то буде використано лише шлях.

Якщо окремими запитами для сесії були завантажені та дані файлового контейнеру, то буде використано шлях.

Дані ключового контейнеру сесії в оперативній пам'яті з моменту завантаження до моменту видалення сесії та виконання віртуальною машиною Java подальшої збірки сміття. Дані ключового контейнеру НІКОЛИ не зберігаються сервісом у файлі, базу даних чи інші об'єкти для довгострокового зберігання інформації.  

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

...

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

...

Метод

PUT

...

Параметри запиту
uuidString
????????????? ??????

...

Ідентифікатор сесії
Налаштовувані заголовки запиту
Content-Typeapplication/json
????????? JSON ??????? ???????
???
???
????????
?????????? ????????
base64Data
String???????? ????????? ? ????????? Base64????????? ?????????????? Base64 ??????
keyStorePathString

???? ? ??????????? ??????? ? ????????? ?????????? ??? ??????????? ???????? ? ?????????? PKCS#11

??? ????????? ?????? ???????????? ?????????? ????????? ?????????? ???????????? ??????
?????
Параметри JSON обʼєкту запиту
Імʼя
Тип
Опис
Допустимі значення
base64Data
String

Файловий контейнер у кодуванні Base64.

Не обовʼязковий параметр, який використовується лише при роботі з файловим контейнером. 

Правильно закодований Base64 рядок
keyStorePathString

Шлях у спеціальному форматі до файлового контейнеру чи захищеного носія з підтримкою PKCS#11

Для отримання списку підключених захищених носіїв, необхідно виконати запит
Відповідь
Код відповідіContent-typeДопустимі параметриПриклад вмісту
??? ??????Content-type?????????? ??????????????? ???????????
200application/jsonmessage
{
   
    "message" :
"?????? ????????? ?????????? ??????? ?????????.
 "Дані ключового контейнеру успішно завантажено",
}
503application/jsonmessage
{
   
    "message" :
"?????? ???????? ?????? ?? ???????."
 "Сервіс зберігання даних не запущено." 
}
400application/jsonmessage
{
   
    "message" :
"?????? ???????????."
 "Сесія відсутня." 
}
500application/jsonmessage
failureCause 
{
   
    "message" : "
?????? ??? ???????? ?????? ????????? ??????????
Помилка при завантаженні даних ключового контейнеру.",
"failureCause" : ""
}
????????? JSON ??????? ??????
??????????? ??????????????
messageString???????? ?????????? ?????????? ????????
failureCause String???????? ??????? ????????????? ??????
?????? ???? ?? JavaScript + jQuery 2.2.4 ? ?????? ????????????? ??????????? ???????? ? ???????? ??????
Code Block
languagejs
var data = {
    keyStorePath: "@. Avtor SecureToken 0"
}
$.ajax({
    url: "https://local.cipher.kiev.ua:9090/api/v1/ticket/79343564-147f-4a2a-ac2a-182d7a55f802/keyStore",
    type: "POST",
    dataType: "json",
    contentType: "application/json",
    data: JSON.stringify(data)
}).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;
    }
})
?????? ???? ?? JavaScript + jQuery 2.2.4 ? ?????? ????????????? ????????? ?????????? ? ????????? ????
Code Block
languagejs
var data = {
    keyStorePath: "z:\\sharedFiles\\temp\\7\\Molyakov_overdue-DS+Arg.pfx"
}
$.ajax({
    url: "https://local.cipher.kiev.ua:9090/api/v1/ticket/79343564-147f-4a2a-ac2a-182d7a55f802/keyStore",
    type: "POST",
    dataType: "json",
    contentType: "application/json",
    data: JSON.stringify(data)
}).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;
    }
})
?????? ???? ?? JavaScript + jQuery 2.2.4 ? ?????? ????????????? ?????? ????????? ??????????

...

languagejs

...

Параметри JSON обʼєкта відповіді
ПараметрТип данихОпис
messageStringОпис результату проведення операції
failureCause StringОпис причини появи помилки

...