Як захистити окремі частини документів від редагування # електронний документ # СЕД #ecmj

У пропонованій статті наведено огляд декількох способів захисту частини офісних документів від редагування.

Дана можливість є затребуваною у користувачів, про що говорить велика кількість відповідних питань. І це абсолютно справедливо, адже можливість захисту частини документа дозволяє спростити підготовку документів, знизити трудомісткість на стадії їх перевірки і мінімізувати ризик допущення помилок.

Насправді, рішення даного завдання знаходиться не на рівні системи документообігу (зазвичай СЕД даними функціоналом не мають), а на рівні самого документа, точніше його формату. Отже, розглянемо кілька способів.

Спосіб 1. Образотворчий

Просто вставляємо абзаци тексту, які повинні бути незмінними у вигляді зображення.

Мінуси такого способу:

# 9679; Відсутність реального захисту вмісту від навмисного редагування, так як малюнок можна досить легко підмінити.

# 9679; Трудомістке підтримка актуальності шаблонів документів.

# 9679; Збиток гнучкості форматування тексту.

Спосіб 2. Табличний

Даний спосіб передбачає створення шаблонів документів у форматі Excel, який, як відомо, дозволяє захистити лист від змін з можливістю редагування окремих осередків.

Перевагою цього способу є реальний захист від зміни захищених осередків. При цьому існує можливість більш-менш гнучко розмежовувати права на дії з діапазонами комірок для різних користувачів і груп.

Мінусами цього способу є незвичність роботи з великими текстовими документами в форматі Excel і відсутність функціоналу MS Word для редагування і рецензування тексту.

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

Спосіб 3. Практичний

Як захистити окремі частини документів від редагування # електронний документ # СЕД #ecmj

Включенням захисту документа можна:

  1. Обмежити форматування документа тільки списком дозволених стилів.
  2. Обмежити редагування документа тільки:

# 9679; Внесенням виправлень. При цьому всі зміни, що вносяться до документ, будуть відображатися як виправлення без можливості прийняти їх.

# 9679; Внесенням приміток. Сам текст при цьому змінити не можна.

# 9679; Введенням даних в поля форм. Що передбачає додавання в шаблон документа відповідних форм.

# 9679; Тільки читанням. При цьому можна вказати винятки для окремих частин документа і користувачів.

Можливість включення \ відключення захисту документа можна обмежити за допомогою пароля.

Порядок настройки захисту документів трохи відрізняється в різних версіях MS Office, тому не буду розписувати його детально, а запропоную Вам, дорогі Новомосковсктелі, скористатися вбудованою довідкою.

Так само, буду вдячний, якщо ви поділитеся своїм досвідом в налаштуванні захисту частин документів.

Треба тільки розуміти для якої мети ми використовуємо захист. Якщо для того, щоб виключити випадкове редагування одним з користувачів, який взагалі-то має на це право, то це одне. Якщо нам потрібен захист від свідомої підміни - це зовсім інше.

Якщо говорити про перший варіант, то способи другий і третій цілком працездатні.

Якщо ж говорити, про захист від свідомої підміни, то, на жаль, ці способи не викликають поваги. Зокрема, зняти захист від редагування з документа (мається на увазі простий випадок захисту відразу всього документа) в форматі docx можна просто видаливши тег з компонента (part) \ word \ settings.xml (на всю операцію потрібно приблизно 30 секунд - тільки що перевірив). Так, те, що зростає кожної знята буде відразу видно, але це вже інше питання (приблизно те ж саме, як видалення вбудованої ЕЦП - помітно, але справі вже не зарадиш: підтвердити незмінність документа таким чином не вийде).

Якщо все-таки говорити про необхідність захисту окремих частин документа, на сьогодні я бачу тільки 3 способу:

Перший спосіб досить трудомісткий, але найбільш загальний. У деяких випадках, якщо є можливість використання надійних засобів автоматичного порівняння вихідного і зміненого документа, завдання можна автоматизувати до рівня "перевірка незмінності частин документа в момент збереження в базі СЕД". У разі знаходження неприпустимих правок - не давати зберегти документ.

Другий спосіб можливий, якщо система підготовки текстів підтримує механізми складання кінцевого документа з декількох частин. Якщо говорити про документи Word, то у останнього є механізм складових документів. Правда, на жаль, він не дуже добре працює з нелокальними документами (навіть з докуменатамі доступними через WebDAV з вузла SharePoint).

Дивно, що про це не згадується в статті.

Або я сильно помиляюсь з приводу IRM?


Або я сильно помиляюсь з приводу IRM?


На додаток до статті Андрія підкинемо можу сказати (у нього це проскакує, але не явно). Технологія RMS, в тому вигляді як пропонує її Microsoft вирішує завдання захищеного зберігання документа поза основним сховища (тієї ж СЕД). Тобто за цією технологією документ залишає периметр системи тільки зашифрованим, а ключі для його розшифрування клієнт може отримати тільки централізовано - у сервера RMS.


Крім шифрування, служба RMS може також аутентифицировать користувача і (якщо нічого не плутаю) зберегти додаткові атрибути захисту (наприклад, заборона друку).


Але (!) Служба RMS нічого не знає про:

  • структурі захищається документа
  • клієнтському додатку, яке буде працювати з зашифрованим документом.

Звідси виходить, що:

  • захист частин документа віддається на відкуп самим клієнтським застосуванням
  • якщо користувач має права на редагування документа, то з точки зору RMS він має права на редагування всього документа.

Тобто як вірно сказав Андрій, написати клієнта, який для користувача з дозволеним редагуванням обійде весь захист - не складно.

Звичайно, згадати RMS коштувало хоча б тому, що її використання дозволяє позбавиться від парольного захисту (аутентифікацію бере на себе RMS) - що і простіше для користувача, і надійніше.


P.S. Все написане відноситься лише до рішень від Microsoft. Що крім перерахованого позволяеют робити RMI від Oracle, Documentum, OpenText і інших постачальників, я не знаю - не працював і не вивчав.