Signatures – подписи
<< Click to Display Table of Contents >> Объектная модель > Основные механизмы Signatures – подписи |
Электронная подпись (ЭП) представляет собой информацию, присоединенную к электронному документу, которая гарантирует авторство подписи и неизменность текста. ЭП ставится на конкретную версию документа. Одну версию могут подписать разные сотрудники.
Предусмотрено два вида ЭП: простая и усиленная. Для подписания электронных документов усиленной ЭП, в отличии от подписания простой ЭП, у сотрудника в системе должен быть зарегистрированный администратором сертификат ЭП.
В системе подписание документов ЭП может выполняться:
•автоматически в ходе процесса согласования документа при выполнении задания на согласование или подписание;
•вручную из карточки документа.
Сотрудник может поставить ЭП на версию документа, если подписываемая версия не редактируется и у сотрудника есть права на просмотр документа. При этом подписание ЭП возможно с результатами, которые представлены в перечислении SignatureType.
Для программной работы с подписями предназначен класс Signatures.
В стандартной поставке реализован плагин с поддержкой сертификатов подписания по алгоритмам RSA и ГОСТ. При необходимости можно создать собственный плагин подписания на основе шаблона из репозитория GitHub.
Методы
Имя |
Описание |
---|---|
Approve() |
Подписать сущность с результатом «Утверждено» |
Endorse() |
Подписать сущность с результатом «Согласовано» |
NotEndorse() |
Подписать сущность с результатом «Не согласовать» |
Get() |
Получить список подписей |
Получить информацию о подписи. Метод возвращает ISignatureInfo |
|
Вычислить хеш сущности |
|
Проверить достоверность подписи. Метод возвращает ISignatureInfo |
|
Импортировать электронную подпись |
|
Усовершенствовать подпись до формата CAdES-T |
|
Усовершенствовать подпись до формата CAdES-XL |
|
Усовершенствовать подпись до формата CAdES-A |
Свойства
Имя |
Тип |
Описание |
---|---|---|
EndorsingSignatureLocksSignedProperties |
bool |
По умолчанию последняя версия документа, подписанного с результатом «Согласовано» или «Не согласовано», остается доступной для изменения. Если необходимо, чтобы после подписания сотрудники не могли изменять содержимое документа, устанавливается признак EndorsingSignatureLocksSignedProperties. Он означает, что настроена блокировка версии от изменения |
Перечисления
Имя |
Описание |
---|---|
Результат усовершенствования подписи |
|
Типы подписей |
|
Результат проверки подписи |
Пример. Получение информации о последней подписи и проверка ее достоверности
// Получить список подписей последней версии документа.
var signatures = Signatures.Get(_obj.LastVersion)
.ToList().Where(s => s.SignCertificate != null).ToList();
// Из списка получить последнюю подпись.
var firstSignature = signatures.FirstOrDefault();
// Если подпись отсутствует, выйти из функции.
if (firstSignature == null)
return;
// Получить информацию о последней подписи.
var info1 = Signatures.GetSignatureInfo(firstSignature);
// Проверить достоверность последней подписи.
var info2 = Signatures.Verify(firstSignature);
© Компания Directum, 2024 |