You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 15 Next »

Устанавливает параметры операций проверки (создания) ЭП (ЭМВ), которые используются в контексте определенной сессии.
Доступны следующие параметры, которые относятся к операциям ЭП и ЭМВ:

  • тип ЭП
  • формат ЭП
  • признак включения электронной метки времени данных
  • признак включения электронной метки времени ЭП
  • порядок включения сертификатов подписанта и издателей
  • режим проверки электронной метки времени подписи
  • режим проверки электронной метки времени данных
  • описатель данных, которые необходимо подписать
  • признак возможности подписания документа несколько раз одним и тем же подписантом
  • признак использования отдельного потока для выполнения криптографических операций, которые требуют доступ к личному ключу
URL-адрес запроса

https://localhost:9094/api/v1/ticket/{uuid}/option

Метод

PUT

Параметры запроса
uuidStringИдентификатор сессии
Настраиваемые заголовки запроса
Content-Typeapplication/json
Параметры JSON объекта запроса
ИмяТипОписаниеДопустимые значения
signatureTypeStringТип ЭПattached - встроенная ЭП, ЭП хранится вместе с подписанными данными
* detached - открепленная ЭП, ЭП хранится отдельно от подписанных данных
embedSignatureTsStringПризнак включения электронной метки времени подписи

true - встраивать электронную метку времени ЭП
* false - не встраивать электронную метку времени ЭП

При установке параметра cadesType в значение, отличное от  "undefined", значения параметра embedSignatureTs игнорируется.

embedDataTsStringПризнак включения электронной метки времени данных

true - встраивать электронную метку времени данных
* false - не встраивать электронную метку времени данных

При установке параметра cadesType в значение, отличное от  "undefined", значения параметра embedDataTs игнорируется.

embedCertificateTypeStringПорядок включения сертификатов подписанта и издателей

signerCert - добавлять только сертификат подписанта
signerAndCaCert - добавлять сертификат подписанта и сертификаты издателей
signerCertAndCaInfo - добавлять сертификат подписанта и информацию про сертификаты издателей (сами сертификаты издателей не добавляются)
* nothing - не добавлять сертификаты

При установке параметра cadesType в значение, отличное от  "undefined", значения параметра embedCertificateType игнорируется.

signatureTsVerifyOptionStringРежим проверки электронной метки времени подписи

* ignore - игнорировать электронную метку времени
verifyIfPresent - проверять электронную метку времени, если она присутствует
verifyOrFailIfNotPresent - проверять электронную метку времени и возвращать ошибку, если она отсутствует

dataTsVerifyOptionStringРежим проверки электронной метки времени данных * ignore - игнорировать электронную метку времени
verifyIfPresent - проверять электронную метку времени, если она присутствует
verifyOrFailIfNotPresent - проверять электронную метку времени и возвращать ошибку, если она отсутствует

dataToSignQualifier

StringОписатель данных, которые необходимо подписать* notSignedBefore - данные не содержат ранее созданную подпись
alreadySigned - данные уже содержат подпись, для добавления новой будет использован режим множественной подписи

duplicateSign

StringПризнак возможности подписания документа несколько раз одним и тем же подписантом

true - добавляет новую подпись, даже если документ уже был подписан подписантом
* false - новая подпись не добавляется, если документ уже был подписан подписантом

caIdStringИдентификатор КПЭДУ/(А)ЦСК, который издал сертификат ключа из ключевого контейнера.Идентификаторы поддерживаемых Сервисом КПЭДУ/(А)ЦСК необходимо предварительно получить с помощью запроса Получение списка поддерживаемых КПЭДУ/(А)ЦСК
cadesTypeStringФормат вырабатываемой электронной подписи стандарта CAdES

undefined - параметр cadesType не учитывается при выработке электронной подписи
CAdESBES
- базовая электронная подпись.
CAdEST - электронная подпись, содержащая электронную метку времени от электронной подписи
* CAdESXLong - электронная подпись, содержащая электронную метку времени от электронной подписи и полный набор данных для проверки.

При установке параметра cadesType в значение, отличное от  "undefined", значения параметров embedSignatureTs, embedDataTs, embedCertificateType игнорируются.

nokkCompatibleStringПризнак дополнительного кодирования подписи, созданной средствами компании НОКК

true - учитывать, что подпись создана средствами НОКК и дополнительно закодирована в ASN.1 OCTET STRING
* false - кодирование подписи соответствует нормативным документам

exclusiveTaskExecutorStringПризнак использования отдельного потока для выполнения криптографических операций, которые требуют доступ к личному ключу: создание подписи, зашифрование, расшифрование.

true: 

  • для выполнения криптографических операций, которые требуют доступ к личному ключу, будет выделен отдельный поток;
  • криптоконтекст будет создан один раз и будет повторно использоваться в рамках сессии в последующих операциях, которые требуют доступ к личному ключу;
  • следует использовать в случае необходимости выполнить в рамках одной сессии больше 10 операций, которые требуют доступ к личному ключу.

* false:

  • для выполнения криптографических операций, которые требуют доступ к личному ключу, будет использоваться общий пул потоков для выполнения криптографических операций;
  • криптографический контекст будет создаваться каждый раз при необходимости выполнить  операцию, которая требует доступ к личному ключу.

* - значение по умолчанию

Ответ
Код ответаContent-typeДопустимые параметрыПример содержимого
200application/json
message
settedOptions : {
signatureType,
signatureTsVerifyOption,
dataTsVerifyOption,
embedSignatureTs,
embedDataTs,
embedCertificateType,
dataToSignQualifier,
duplicateSign
}
{
"message": "Запрос на установку настроек сессии выполнен.",
"settedOptions": {
"signatureTsVerifyOption": "IGNORE",
"embedSignatureTs": "false",
"embedCertificateType": "NOTHING",
"signatureType": "DETACHED",
"dataTsVerifyOption": "IGNORE",
"embedDataTs": "false",
"dataToSignQualifier": "ALREADY_SIGNED",
"duplicateSign": "true"
}
}
503application/jsonmessage
{
    "message" : "Сервис хранения данных не запущен."
}
400application/jsonmessage
{
    "message" : "Сессия отсутствует."
}
Параметры JSON объекта ответа
ПараметрТип данныхОписание
messageStringОписание результата проведения операции
settedOptions 
ObjectПараметры и их значения, которые были установлены после выполнения запроса
Пример кода на JavaScript + jQuery 2.2.4
var selectedOptions = {
    signatureType: "detached",
    embedCertificateType: "nothing",
    embedSignatureTs: "false",
    embedDataTs: "false",
    signatureTsVerifyOption: "ignore",
    dataTsVerifyOption: "ignore"
};
$.ajax({
    url: "https://localhost:9094/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;
    }
})



  • No labels