Для использования в качестве ключевого контейнера сессии загружается : файловый контейнер в кодировке base64 в формате PKCS#12, проприетарных форматах ИИТ ("Key-6.dat", "Приватбанк jks", "Украина ZS2"). В случае успешной загрузки при выполнении операций создания ЭП, зашифрования и расшифрования будет использоваться личный ключ и, в случае наличия, сертификат (цепочка сертификатов) из загруженного
...
Путь к аппаратному носителю с поддержкой PKCS#11, который подключен к компьютеру, на котором выполняется сервис, необходимо получить посредством запроса https://docs.cipher.kiev.ua/x/GYOD.
Если в запросе одновременно присутствуют данные файлового ключевого контейнера и путь к ключевому контейнеру, то будет использован только путь.
Если отдельными запросами для сессии были загружены и данные файлового контейнера, и путь к ключевому контейнеру, то будет использован только путь.
Данные ключевого контейнера сессии находятся в оперативной памяти с момента загрузки до момента удаления сессии и выполнения виртуальной машиной Java последующей процедуры сборки мусора. Данные ключевого контейнера НИКОГДА не сохраняются сервисом в файл, базу данных или другие объекты для долгосрочного хранения информации.
...
Имя | Тип | Описание | Допустимые значения | ||||
---|---|---|---|---|---|---|---|
base64Data | String | Файловый контейнер в кодировке Base64 | Правильно закодированная Base64 строка | keyStorePath | String | Путь в специальном формате к файловому контейнеру или аппаратному носителю с поддержкой PKCS#11 | Для получения списка подключенных аппаратных носителей необходимо использовать запрос |
Ответ
Код ответа | Content-type | Допустимые параметры | Пример содержимого |
---|---|---|---|
200 | application/json | message | { |
503 | application/json | message | { |
400 | application/json | message | { "message" : "Сессия отсутствует." } |
500 | application/json | message failureCause | { |
...
Параметр | Тип данных | Описание |
---|---|---|
message | String | Описание результата проведения операции |
failureCause | String | Описание причины возникновения ошибки |
Пример кода на JavaScript + jQuery 2.2.4
...
Code Block | ||
---|---|---|
| ||
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 | ||
---|---|---|
| ||
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;
}
}) |
...
Code Block | ||
---|---|---|
| ||
var data = { base64Data: "данные файлового контейнера в кодировке base64" } $.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; } }) |
...