<< Click to Display Table of Contents >> Разработка > Элементы разработки > Разработка документов Ограничение на работу с документами вне системы |
В системе Directum RX для защиты конфиденциальной информации сотрудники могут шифровать документы и включать для них строгий доступ. Кроме этого, с помощью среды разработки можно дополнительно ограничить действия на работу с документом вне системы: открытие в локальном редакторе, экспорт из системы, отправка электронной почтой и на печать.
После включения ограничения сотрудники работают с документами только в системе, не получая локальной копии. Для этого с последней или определенной версией документа:
•ограничиваются действия: экспорт из системы (ExportVersion и ExportLastVersion), отправка по почте (SendByMail и SendVersionByMail), отправка на печать (SendToPrint и SendVersionToPrint);
•переопределяется логика в действиях: открытие (OpenDocument), открытие на чтение (OpenDocumentRead и ReadVersion) и открытие на изменение (OpenDocumentEdit и EditVersion). Документы принудительно открываются на чтение в окне предпросмотра, а на изменение – в онлайн-редакторе. Для этого должны быть развернуты сервис предпросмотра и онлайн-редактирования. Иначе при открытии документов возникает ошибка.
Чтобы ограничить работу с документами вне системы:
1.Перекройте нужный тип документа.
2.Переопределите клиентскую функцию GetDocumentPrivacyOptions(). По умолчанию она вызывается в событии Возможность выполнения (CanExecute).
ВАЖНО. В обработчике события Возможность выполнения не рекомендуется вызывать серверные функции (с атрибутом Remote) и использовать логику, которая будет долго обрабатываться. Это влияет на быстродействие системы, так как обработчик выполняется часто.
3.В функции создайте ограничение с помощью метода ElectronicDocumentPrivacyOptions.Create(), указав в нем значение true:
public override ElectronicDocumentPrivacyOptions GetDocumentPrivacyOptions()
{
// Создать ограничения на работу с документами вне системы
return ElectronicDocumentPrivacyOptions.Create(true);
}
Функция возвращает значение ElectronicDocumentPrivacyOptions – класс, в котором определены признаки ограничения работы с документом. Класс имеет свойство IsConfidential – признак того, что нужно ограничить работу с документом вне системы, так как он содержит конфиденциальные данные. По умолчанию свойство имеет значение false.
Не используйте функцию GetDocumentPrivacyOptions(), если:
•нужно ограничить не все перечисленные выше действия с документом;
•написан код для выгрузки содержимого документа и для этого не используются стандартные методы. Например, если содержимое документа Body запаковывается в архив и выгружается на компьютер пользователя.
В таких случаях, чтобы ограничить действия с документом, в своем программном коде доработайте нужные действия: в перекрытом типе документа скройте их или переопределите логику.
© Компания Directum, 2024 |