Система лицензирования и защиты конфигураций: как устроена и как её настроить

· 9 мин

Содержание

СЛК — это «Система лицензирования и защиты конфигураций» фирмы 1С. Она нужна не для запуска самой платформы, а для защиты отраслевых и партнёрских решений: разработчик шифрует часть кода своей конфигурации, а работает этот код только при наличии лицензии на сервере СЛК.

Если в базе стоит такое решение, вам нужны две лицензии одновременно: обычная лицензия платформы 1С:Предприятие 8.3 и лицензия СЛК от разработчика конфигурации. Одна другую не заменяет.

Зачем нужна СЛК и чем она отличается от HASP

Типовые конфигурации фирмы 1С (Бухгалтерия, ЗУП, УТ) открыты: код можно смотреть в Конфигураторе, а законность использования обеспечивает лицензия платформы. Разработчику отраслевого решения этого мало. Ему нужно, чтобы его продукт не копировали из базы в базу и не разбирали по модулям.

СЛК решает две задачи:

  • 🔒 Защита кода. Часть модулей конфигурации хранится в зашифрованном виде. Без лицензии эти модули не выполняются, а в Конфигураторе вместо текста видна заглушка.
  • 🧾 Учёт лицензий. Разработчик сам решает, что именно лицензируется: число рабочих мест, отдельные модули, срок действия.

С HASP часто путаются, потому что у обоих бывают USB-ключи. Разница в назначении:

Что сравниваемКлючи платформы (HASP, программные лицензии)СЛК
Что защищаетПраво запускать платформу 1С:ПредприятиеКод и функции конкретной конфигурации
Кто выдаётФирма 1С через продажу платформыРазработчик отраслевого решения
Сетевая службаHASP License Manager или менеджер лицензий на сервере 1ССервер СЛК
Без лицензииБаза не запускаетсяБаза открывается, но защищённые функции недоступны

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

Архитектура: как конфигурация получает лицензию от сервера СЛК

Схема работы состоит из трёх частей:

  1. Защищённая конфигурация. В неё встроена внешняя компонента СЛК. Именно она расшифровывает защищённый код и запрашивает лицензию.
  2. Сервер СЛК. Отдельная служба Windows или демон Linux. Хранит лицензии, выдаёт их по запросу и считает занятые.
  3. Носитель лицензии. Аппаратный USB-ключ, вставленный в компьютер с сервером СЛК, или программная лицензия, привязанная к оборудованию этого компьютера.

Кто именно обращается к серверу СЛК

Этот момент определяет почти все сетевые настройки.

  • 💻 Файловая база. Компонента работает на компьютере пользователя. Каждый клиент должен видеть сервер СЛК по сети.
  • 🖥 Клиент-серверная база . Защищённый код выполняется в рабочем процессе сервера 1С. К серверу СЛК обращается сервер 1С, а не рабочие станции. Клиентам доступ к серверу СЛК не нужен.

Частая ошибка в клиент-серверном варианте: сервер СЛК доступен с компьютера администратора, но закрыт файрволом для сервера 1С. Проверять связь нужно именно с той машины, где работают рабочие процессы.

Как компонента находит сервер

Обычно поиск идёт двумя путями: широковещательным запросом в локальной сети и по явно заданному адресу. В разных сегментах сети, через VPN и в облаке широковещательный поиск не работает . Там адрес сервера СЛК указывают вручную в настройках защиты конфигурации. Где эта форма в интерфейсе, задаёт разработчик решения. Как правило, она открывается сама при первой неудачной попытке получить лицензию или лежит в разделе администрирования конфигурации.

Какие бывают лицензии СЛК: аппаратные, программные, сетевые

Лицензии различаются по носителю и по тому, как их делят между пользователями.

По носителю

ТипКак выглядитПлюсыМинусы
Аппаратный ключUSB-ключ, вставленный в компьютер с сервером СЛКПереносится на другой сервер без участия разработчикаМожно потерять, сломать; в виртуальной машине нужен проброс USB
Программная лицензияФайл лицензии, активированный пин-кодом и привязанный к оборудованиюНичего не нужно вставлять, удобна для серверовСлетает при замене железа или переносе виртуальной машины

По способу использования

  • 🌐 Сетевая. Лицензия лежит на сервере СЛК и выдаётся любому подключившемуся сеансу, пока есть свободные места. Ключ на 10 пользователей значит 10 одновременных сеансов, а не 10 конкретных людей.
  • 📍 Локальная. Работает только на том компьютере, где активирована. Подходит для одного рабочего места с файловой базой.

Что именно считается «местом» — сеанс, пользователь или база, — решает разработчик. Это записано в его лицензионных условиях, их стоит прочитать до покупки.

Пин-коды и активация программной лицензии

Программную лицензию активируют пин-кодом. Есть два способа:

  1. Онлайн. Сервер СЛК сам связывается с центром лицензирования и получает файл лицензии.
  2. Через файл. Если на сервере нет интернета, формируют файл запроса, переносят его на компьютер с доступом в сеть, получают файл ответа и загружают обратно.

Лицензия привязывается к параметрам оборудования. Замена материнской платы, системного диска или сетевой карты может сделать её недействительной. Тогда нужна повторная активация резервным пин-кодом. Если резервных кодов нет или они кончились, вопрос решается только через разработчика конфигурации.

Сохраните конверт или письмо с пин-кодами и регистрационными данными в надёжном месте. Без них восстановление лицензии превращается в переписку на несколько дней.

Настройка сервера СЛК и управление лицензиями

Дистрибутив сервера СЛК поставляется вместе с защищённой конфигурацией или выдаётся разработчиком. Ставить его лучше на постоянно включённую машину: обычно это сервер 1С или отдельная виртуальная машина.

Порядок настройки

  1. Установите сервер СЛК из дистрибутива разработчика. Под Windows он регистрируется как служба, под Linux — как демон.
  2. Откройте консоль администрирования. В СЛК 3.0 это веб-интерфейс, по умолчанию он доступен по адресу http://localhost:9099.
  3. Задайте пароль администратора консоли. Без пароля любой в сети сможет удалить лицензию .
  4. Добавьте лицензию: вставьте аппаратный ключ или активируйте программную лицензию пин-кодом.
  5. Откройте порт в файрволе для тех машин, которые обращаются к серверу: сервера 1С в клиент-серверном варианте или клиентов в файловом.
  6. Пропишите адрес сервера в настройках защиты конфигурации, если серверу 1С и серверу СЛК не хватает широковещательного поиска.

Что смотреть в консоли

В консоли сервера СЛК видны:

  • 📦 список лицензий и ключей с количеством мест;
  • 👥 занятые лицензии: с какого компьютера и каким процессом;
  • 📅 срок действия, если лицензия временная;
  • 📝 журнал событий: выдача, отказ, ошибки подключения.

HASP License Manager — это не про СЛК

Утилиту HASP License Manager (служба hasplm) ставят для сетевых HASP-ключей платформы 1С:Предприятие. К лицензиям отраслевой конфигурации она отношения не имеет. Если в базе есть и HASP-ключ платформы, и ключ СЛК, на сервере будут работать обе службы, каждая со своим ключом.

Ошибки СЛК: как найти причину

Начните с вопроса: на какой стадии отказ. Компонента не загрузилась, сервер не найден или сервер найден, но лицензий нет. Это три разных ветки диагностики.

Диагностика: выберите симптом

Зависшие сеансы и конфликт лицензий

Если пользователь закрыл 1С некорректно (выдернули сеть, «убили» процесс), сеанс на сервере 1С может держать лицензию ещё какое-то время. Посмотреть сеансы с занятыми лицензиями в клиент-серверном варианте можно через консоль кластера или командой:

rac session list --cluster=<id-кластера> --licenses

Идентификатор кластера покажет rac cluster list.

Завершение сеанса обрывает работу пользователя без сохранения. Перед этим убедитесь, что сеанс действительно брошенный, а не принадлежит человеку, который сейчас проводит документы.

Не перезапускайте службу сервера СЛК в рабочее время: все защищённые функции у всех пользователей перестанут работать до её запуска. То же относится к перезапуску сервера 1С. Делайте это вечером или после предупреждения пользователей.

Конфликт двух серверов СЛК

Если в сети два сервера СЛК (например, старый не удалили после переезда), компонента может обратиться не к тому, где лежит лицензия. Решение — задать адрес нужного сервера явно и остановить лишний.

Терминальный сервер, виртуализация и облако

Терминальный режим

На терминальном сервере все пользователи работают на одной машине. Для СЛК это удобно:

  • в файловой базе компонента работает на терминальном сервере, сервер СЛК и ключ можно разместить там же;
  • в клиент-серверной базе к серверу СЛК обращается сервер 1С, расположение терминала не важно.

Учитывайте условия разработчика: часть лицензий выдаётся на сеанс, и десять открытых окон одного пользователя могут занять десять мест.

Виртуальные машины

Программная лицензия привязывается к виртуальному оборудованию. Её сбивают:

  • 🔄 перенос машины на другой хост, если меняются параметры виртуального оборудования;
  • 🧬 клонирование виртуальной машины;
  • 🆕 смена MAC-адреса виртуального сетевого адаптера.

Закрепите MAC-адрес в настройках гипервизора и согласуйте миграции с тем, кто отвечает за лицензии. Для аппаратного ключа настройте проброс USB в гостевую систему или используйте USB-over-IP.

Облако и аренда сервера

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

Перед переносом базы с СЛК на новый сервер
Выполнено: 0 / 6

Законность использования и аудит лицензий

Защита СЛК — это техническое средство защиты авторских прав в смысле ст. 1299 ГК РФ. Обходить её, удалять или подменять компоненту запрещено. Использование «вскрытой» конфигурации — нарушение исключительного права. По ст. 1301 ГК РФ правообладатель может требовать компенсацию от 10 тыс. до 5 млн рублей либо двукратную стоимость права использования. Кроме гражданской, возможна административная и уголовная ответственность.

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

Как провести внутренний аудит

Раз в квартал полезно сверять:

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

Если в пике мест хватает впритык, пользователи будут регулярно получать отказ. Лучше докупить лицензии заранее, чем разбираться с «утренним» наплывом входов.

Частые вопросы

Можно ли открыть конфигурацию с СЛК без лицензии?
База откроется, если есть лицензия платформы. Но защищённые модули не выполнятся: соответствующие функции будут недоступны или выдадут сообщение об отсутствии лицензии.
Можно ли поставить сервер СЛК на тот же компьютер, что и сервер 1С?
Да, это самый распространённый вариант. Сервер 1С обращается к СЛК локально, проблем с сетью меньше.
Нужно ли покупать СЛК отдельно?
Нет. Сервер СЛК и лицензии к нему поставляет разработчик защищённой конфигурации вместе со своим продуктом.
Работает ли СЛК с базами на PostgreSQL и Linux?
Сервер СЛК 3.0 есть под Linux, СУБД значения не имеет. Нужна компонента под ОС сервера 1С: её выдаёт разработчик конфигурации.
Сколько лицензий СЛК занимает один пользователь?
Зависит от условий разработчика: обычно одно место на сеанс. Два открытых окна 1С у одного человека могут занять два места.

Источники

  • Гражданский кодекс РФ, часть четвёртая, ст. 1299 «Технические средства защиты авторских прав»
  • Гражданский кодекс РФ, часть четвёртая, ст. 1301 «Ответственность за нарушение исключительного права на произведение»