Главная Материалы Защита конфигураций 1С, отчетов и обработок. Как защитить программный код 1с?

Защита конфигураций 1С, отчетов и обработок. Как защитить программный код 1с?


Очень часто у программистов 1С возникает желание каким – то образом защитить свою конфигурацию 1С, обработку или отчет от редактирования и плагиата. Для  решения такой задачи существует несколько способов, отличающихся как по степени защиты, так и по трудоемкости. И сегодня мы с вами рассмотрим наиболее популярные, а заодно поговорим про защиту программного кода 1с в целом.


1 способ. Защита кода 1с с помощью пароля (штатный способ)


Это самый простой способ защиты программного кода 1С. С его помощью можно защитить только модули объектов,  так как для модулей форм такой опции нет. Подробно про виды программных модулей я рассказывал в этой статье

Для защиты выбранного модуля объекта необходимо его открыть, а затем в меню выбрать Текст – Установить пароль.

Для повышения эффективности данного способа рекомендуется перенести (или сразу размещать) большую часть программного кода из модулей форм в модули объектов. Не забудьте протестировать работоспособность объекта после переноса кода.

 

2 способ. Исключение текстов модулей объектов из поставки конфигурации (штатный способ)


С помощью данного штатного способа можно добиться, чтобы модули объектов вообще не содержали никакого программного кода. Как и в предыдущем случае, данным методом нельзя скрыть  программный код модулей форм. Поэтому, настоятельно рекомендуется переносить большую часть программного кода из модулей форм в модули объектов.

Для работы с поставкой конфигурации выполняем следующие действия:

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

Для этого переходим в меню Конфигурация – Поставка конфигурации – Настройка поставки.

В открывшемся окне правил поставки мы для каждого объекта конфигурации можем разрешить или запретить изменения, а также скрыть текст программных модулей (снять галку «Включать поставку исходный текст модулей объектов»).

2) В свойствах конфигурации необходимо указать версию и Поставщика. Затем сохранить все изменения с помощью кнопки «Обновить конфигурацию» или горячей клавишей F7.

3) Создаем файл поставки Конфигурация – Поставка конфигурации – Создать файл поставки и обновления конфигурации. В результате мы получим .cf-файл нашей конфигурации без текстов программных модулей.

4) Создаем новую конфигурацию и с помощью меню Конфигурация – Загрузить конфигурацию из файла загружаем полученный в 3 шаге наш .cf-файл. В результате мы получим конфигурацию без текстов программных модулей.

3 способ. Запутывание (обфускация) программного кода 1с

 

Суть данного способа заключается в том, чтобы сделать программный код плохо читаемым. Для этого можно:

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

В результате другому программисту будет проще переписать код «с нуля», чем копировать куски из вашей авторской разработке.

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

 

Выводы по защите программного кода в 1С

 

К сожалению, программа 1С слишком популярна, чтобы защиту программного кода, созданного с её помощью, можно было бы считать абсолютно надежной. На сегодняшний день ни один из имеющихся способов защиты, в том числе коммерческие, не дают 100 % защиты. Тем не менее, применение рассмотренных 3 способов в различных комбинациях могут обеспечить приемлемый уровень защиты ваших авторских прав.

С другой стороны самая сильная сторона конфигураций 1С – это их открытость и возможность доработки. И не стоит главное достоинство системы переводить в её недостаток.

Количество просмотров: 8277

Комментарии

Комментариев нет