Устанавливает параметры операций проверки (создания) ЭЦП (МВ) и шифрования, которые используются в контексте определенной сессии.
Доступны следующие параметры, которые относятся к операциям ЭЦП и МВ:
- тип ЭЦП
- признак включения метки времени данных
- признак включения метки времени ЭЦП
- порядок включения сертификатов подписанта и издателей
- режим проверки метки времени цифровой подписи
- режим проверки метки времени данных
- описатель данных, которые необходимо подписать
- признак возможности подписания документа несколько раз одним и тем же подписантом
Доступны следующие параметры, которые относятся к операции шифрования:
- порядок включения сертификатов подписанта и издателей
URL-адрес запроса
https://local.cipher.kiev.ua:9091/api/v1/ticket/{uuid}/option
Метод
PUT
Параметры запроса
uuid | String | Идентификатор сессии |
Настраиваемые заголовки запроса
Content-Type | application/json |
Параметры JSON объекта запроса
Имя | Тип | Описание | Допустимые значения |
---|---|---|---|
signatureType | String | Тип ЭЦП | attached - встроенная ЭЦП, ЭЦП хранится вместе с подписанными данными * detached - открепленная ЭЦП, ЭЦП хранится отдельно от подписанных данных |
embedSignatureTs | String | Признак включения метки времени ЭЦП | true - встраивать метку времени ЭЦП * false - встраивать метку времени ЭЦП |
embedDataTs | String | Признак включения метки времени данных | true - встраивать метку времени даных * false - встраивать метку времени данных |
embedCertificateType | String | Порядок включения сертификатов подписанта и издателей | signerCert - добавлять только сертификат подписанта Значение, допустимые только для операции шифрования: signerCert - добавлять только сертификат подписанта |
signatureTsVerifyOption | String | Режим проверки метки времени цифровой подписи | * ignore - игнорировать метку времени |
dataTsVerifyOption | String | Режим проверки метки времени данных | * ignore - игнорировать метку времени verifyIfPresent - проверять метку времени, если она присутствует verifyOrFailIfNotPresent - проверять метку времени и возвращать ошибку, если она отсутствует |
dataToSignQualifier | String | Описатель данных, которые необходимо подписать | * notSignedBefore - данные не содержат ранее созданную подпись alreadySigned - данные уже содержат подпись, для добавления новой будет использован режим множественной подписи |
duplicateSign | String | Признак возможности подписания документа несколько раз одним и тем же подписантом | true - добавляет новую подпись, даже если документ уже был подписан подписантом |
* - значение по умолчанию
Ответ
Код ответа | Content-type | Допустимые параметры | Пример содержимого |
---|---|---|---|
200 | application/json | message | { |
503 | application/json | message | { |
400 | application/json | message | { "message" : "Сессия отсутствует." } |
Параметры JSON объекта ответа
Параметр | Тип данных | Описание |
---|---|---|
message | String | Описание результата проведения операции |
settedOptions | Object | Параметры и их значения, которые были установлены после выполнения запроса |
Пример кода на JavaScript + jQuery 2.2.4
var selectedOptions = { signatureType: "detached", embedCertificateType: "nothing", embedSignatureTs: "false", embedDataTs: "false", signatureTsVerifyOption: "ignore", dataTsVerifyOption: "ignore" }; $.ajax({ url: "https://local.cipher.kiev.ua:9091/api/v1/ticket/79343564-147f-4a2a-ac2a-182d7a55f802/option", type: "PUT", dataType: "json", contentType: "application/json", data: JSON.stringify(selectedOptions) }).done(function (jsonResponse, textStatus, xhr) { message = jsonResponse.message; settedOptions = jsonResponse.settedOptions; }).fail(function (xhr) { try { var jsonResponse = JSON.parse(xhr.responseText); message = jsonResponse.message; } catch (e) { message = (xhr.responseText == undefined) ? "Ошибка при установке настроек сессии." : xhr.responseText; } })