Инструменты пользователя

Инструменты сайта


stepbystep:protectext1c

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

stepbystep:protectext1c [2017/01/19 13:52] (текущий)
mcvet создано
Строка 1: Строка 1:
 +====== Шаг за шагом: защита расширения конфигурации 1С ======
  
 +В общем случае для защиты своей конфигурации 1С понадобится:​
 +  * создать продукт в своем личном кабинете;​
 +  * определить способ лицензирования продукта - по количеству пользователей или хостов;​
 +  * установить на свой компьютер инструмент для выполнения процедуры защиты продукта;​
 +  * добавить в продукт интерактивную форму активации продукта и вспомогательные модули системы лицензирования.
 +
 +Далее рассмотрим всю процедуру по шагам на примере простого расширения конфигурации 1С. Для выдачи лицензий на работу с ней ​ будем использовать демо-доступ к личному кабинету (адрес,​ логин и пароль высылаются на электронную почту после регистрации).
 +
 +===== Обзор демонстрационной базы =====
 +
 +Для примера будем использовать конфигурацию для учета домашних животных.
 +  - Скачайте файл демонстрационной базы "​КошкинДом.dt"​ (ссылка в электронном письме).
 +  - Создайте информационную базу из загрузите в нее копию из скаченнего файла.\\ Структура конфигурации имеет следующий вид. {{ :​stepbystep:​21-10-2016_11-23-09.png?​nolink |}} Центральным объектом конфигурации является справочник "​Котики",​ в котором содержится вся информация о животных. В примере мы будем выгружать данные этого справочника в XML-файл при помощи расширения.
 +  - Перейдите к расширению "​Экспорт котов"​. Единственный объект,​ который добавляет расширение - это форма списка "​Экспорт_ФормаСписка"​. {{ :​stepbystep:​19-01-2017_15-11-47.png?​nolink |}}
 +  - Откройте форму списка справочника. На форме расположена кнопка экспорта,​ которая вызывает диалоговое окно сохранения файла и формирует его содержимое. Код формирования файла расположен в модуле менеджера справочника:​ <​code>​Процедура ЭкспортКотов(ПолноеИмяФайла) Экспорт
 +
 + Запрос = Новый Запрос;​
 + Запрос.Текст = 
 + "​ВЫБРАТЬ
 + | Котики.Код КАК Код,
 + | Котики.Кличка КАК Кличка,​
 + | Котики.Порода КАК Порода,​
 + | Котики.Окрас КАК Окрас
 + |ИЗ
 + | Справочник.Котики КАК Котики";​
 +
 + РезультатЗапроса = Запрос.Выполнить();​
 + ТаблицаКотов = РезультатЗапроса.Выгрузить();​
 +
 + ФайлXML = Новый ЗаписьXML;​
 + ФайлXML.ОткрытьФайл(ПолноеИмяФайла);​
 + ФайлXML.ЗаписатьОбъявлениеXML();​
 +
 + ФайлXML.ЗаписатьНачалоЭлемента("​Коты"​);​
 +
 + Для Каждого СтрокаТаблицы Из ТаблицаКотов Цикл
 +
 + ФайлXML.ЗаписатьНачалоЭлемента("​Кот"​);​
 +
 + ФайлXML.ЗаписатьАтрибут("​Код", ​   СтрокаТаблицы.Код);​
 + ФайлXML.ЗаписатьАтрибут("​Порода",​ Строка(СтрокаТаблицы.Порода));​
 + ФайлXML.ЗаписатьАтрибут("​Окрас", ​ СтрокаТаблицы.Окрас);​
 +
 + ФайлXML.ЗаписатьТекст(СтрокаТаблицы.Кличка);​
 +
 + ФайлXML.ЗаписатьКонецЭлемента();​
 +
 + КонецЦикла;​
 +
 + ФайлXML.ЗаписатьКонецЭлемента();​
 + ФайлXML.Закрыть();​
 +
 +КонецПроцедуры</​code>​
 +   - Код этого модуля мы будем защищать. Установите на него произвольный пароль (например,​ 123).
 +   - Выгрузите расширение в файл с именем "​ЭкспортКотов.cfe"​.
 +
 +===== Регистрация продукта в личном кабинете =====
 +
 +<note tip>​**Фича** - это та функциональная опция программы,​ которая подлежит лицензированию. Программный модуль,​ обработка,​ а также вся конфигурация 1С в целом могут является фичей. \\
 +**Продукт** - это минимально допустимый набор функциональных опций, который мы предлагаем клиенту как готовое решение. Продукт может состоять как из одной так и из нескольких фич, в зависимости от сложности лицензируемого решения.</​note>​
 +В данном примере не будем выделять отдельные функции конфигурации,​ поэтому в продукте будет одна фича и лицензирование по количеству пользователей работающих с конфигурацией.
 +Перейдем к настройке продукта в личном кабинете разработчика.
 +  - Откройте личный кабинет и перейдите на страницу фич.
 +  - Добавьте новую фичу. В качестве названия укажите "​Экспорт котов"​. Идентификатор фичи можно указать произвольный. {{ :​stepbystep:​19-01-2017_15-15-41.png?​nolink |}} Некоторые данные (они будут выделены синим цветом) необходимо будет повторить в инструменте защиты конфигураций.
 +  - Далее перейдите к странице продуктов. Добавьте новый продукт "​Экспорт котов на 1 хост"​. В продукт добавьте созданную ранее фичу. Способ лицензирования - на хост. {{ :​stepbystep:​19-01-2017_15-20-00.png?​nolink |}} 
 +  - Сохраните продукт,​ идентификатор будет сгенерирован автоматически. {{ :​stepbystep:​19-01-2017_15-22-39.png?​nolink |}}
 +
 +===== Настройка инструмента =====
 +
 +Настроим инструмент защиты конфигураций (ссылка в электронном письме).
 +  - Заполните в настройках префикс ключ и код поставщика (vendor code). Персональные ключи разработчика указаны в настройках личного кабинета. {{ :​stepbystep:​21-10-2016_11-53-26.png?​nolink |}}{{ :​stepbystep:​dn_arrow.png?​nolink&​48 |}}{{ :​stepbystep:​21-10-2016_11-56-52.png?​nolink |}}
 +  - В списке фич добавьте новую, с тем же кодом и наименованием,​ что и в личном кабинете. {{ :​stepbystep:​19-01-2017_15-25-40.png?​nolink |}}
 +  - Перейдите к списку расширений и добавьте новое. В качестве файла расширения укажите "​ЭкспортКотов.cfe",​ созданный ранее. Дождитесь завершения анализа конфигурации расширения,​ по окончанию будет сформирован образ конфигурации.
 +  - Откройте созданный образ конфигурации. В дереве метаданных будут отображены те программные модули,​ содержание которых было скрыто,​ а также некоторые служебные. {{ :​stepbystep:​19-01-2017_15-33-47.png?​nolink |}}
 +  - Выберите модуль менеджера справочника "​Котики"​. Рядом отобразятся процедуры и функции этого модуля. ​
 +  - Установите в соответствие процедуре "​ЭкспортКотов"​ фичу "​Экспорт котов"​. {{ :​stepbystep:​19-01-2017_16-07-14.png?​nolink |}}
 +  - Сохраните изменения.
 +
 +Чтобы пользователи могли активировать ключи или использовать триальный период,​ заполним данные о продукте.
 +  - Откройте конфигурацию расширения "​Экспорт котов"​.
 +  - Заполните поле "​Основная функция (фича)",​ указав ту фичу, доступность которой будет проверятся системой при запуске расширения. В этом примере у нас одна фича, ее и укажем.
 +  - Заполните поле "​Идентификатор триального продукта",​ указав идентификатор ранее созданного в личном кабинете продукта. {{ :​stepbystep:​19-01-2017_16-12-01.png?​nolink |}}
 +  - Сохраните изменения.
 +
 +===== Защита и проверка результатов =====
 +
 +После выполнения настройки,​ можно установить защиту на расширение.
 +  - Перейдите в раздел "​Установка защиты"​.
 +  - Выберите конфигурацию и ее образ в соответствующих полях.
 +  - Укажите путь к защищаемому файлу расширения (выберем тот же файл "​ЭкспортКотов.cfe"​). {{ :​stepbystep:​19-01-2017_16-22-37.png?​nolink |}}
 +  - Нажмите кнопку "​Установить защиту"​ и дождитесь окончанию процедуры. В результате будет сформирован новый файл "​ЭкспортКотов.protect.cfe"​.
 +
 +Осталось проверить полученные результаты.
 +  - Сперва откройте полученный файл в конфигураторе 1С. Убедитесь,​ что в конфигурации расширения появились новые объекты системы лицензирования,​ а текст защищаемого модуля стал недоступен. {{ :​stepbystep:​19-01-2017_16-25-12.png?​nolink |}}
 +  - Загрузите конфигурацию расширения из файла "​ЭкспортКотов.protect.cfe"​ заменив оригинал.
 +  - Отключите безопасный режим работы расширения. {{ :​stepbystep:​19-01-2017_16-28-42.png?​nolink |}}
 +  - Запустите конфигурацию 1С в пользовательском режиме. При первом запуске появится окно регистрации продукта. {{ :​stepbystep:​19-01-2017_16-37-37.png?​nolink |}}
 +  - Нажмите кнопку "​Перейти к регистрации клиента..."​ и заполните анкету нового клиента. {{ :​stepbystep:​19-01-2017_16-41-47.png?​nolink |}}
 +  - Нажмите кнопку "​Зарегистрировать"​. Если данные введены корректно,​ то система выдаст новый лицензионный ключ. Все выданные ключи можно увидеть в соответствующем разделе личного кабинета разработчика (фильтр должен быть заполнен). {{ :​stepbystep:​19-01-2017_16-45-26.png?​nolink |}}
 +  - Проверим,​ что расширение работает. Откройте справочник "​Котики"​ и нажмите кнопку "​Экспорт..."​. Убедитесь,​ что файл сформировался. При этом будет выполнена привязка лицензионного ключа к текущему хосту, что можно проверить в разделе "​Монитор сессий"​ личного кабинета разработчика (фильтр должен быть заполнен). {{ :​stepbystep:​19-01-2017_16-47-25.png?​nolink |}}
stepbystep/protectext1c.txt · Последние изменения: 2017/01/19 13:52 — mcvet