Вопросы лицензирования в экосистеме «1С:Предприятие» традиционно вызывают множество споров и сложностей у системных администраторов и специалистов по автоматизации. Одним из ключевых вопросов является правильный выбор между аппаратной защитой (USB-ключи HASP) и программными лицензиями (файлы с расширением .lic). В этой статье мы подробно проанализируем, как именно платформа «1С» учитывает клиентские лицензии в различных режимах работы, разберем разницу между сеансовым подсчетом и расходом лицензий по рабочим местам, а также рассмотрим технические нюансы привязки лицензий, особенности виртуализации и алгоритмы поиска ключей платформой.
Для понимания логики списания лицензий необходимо четко разделять два понятия: «рабочее место» (компьютер пользователя) и «сеанс» (запущенный экземпляр программы). Выбор метода подсчета зависит исключительно от того, как именно и откуда раздаются лицензии пользователям.
Рассмотрим две базовые ситуации на примере многопользовательского ключа на 10 пользователей:
Выясним, как архитектурный вариант работы с базой данных влияет на распределение лицензий:
Файловый вариант работы:
В файловом режиме запуск баз и подсчет лицензий происходят на стороне клиента. Если вы используете сетевой многопользовательский USB-ключ, доступный в локальной сети через службу HASP License Manager, или если на клиентских компьютерах локально активированы программные лицензии (поштучно), то лицензирование всегда происходит по рабочим местам. На одном компьютере можно запустить произвольное количество экземпляров системы, и расходоваться будет только 1 лицензия.
Клиент-серверный вариант работы (SQL):
В клиент-серверной архитектуре ключевое значение имеет настройка информационной базы в консоли администрирования кластера сервера «1С:Предприятия» — параметр Разрешить выдачу лицензий сервером 1С:Предприятия (значения «Да» или «Нет»):
Программная лицензия «1С» представляет собой зашифрованный файл-лицензию с расширением .lic, который жестко привязывается к ключевым техническим характеристикам компьютера. Давайте разберем по шагам, изменение каких параметров приведет к аннулированию лицензии и потребует активации нового резервного пин-кода:
Важно: Любая модернизация сервера или клиентского ПК (например, добавление планки оперативной памяти или замена сетевой карты) приведет к тому, что программная лицензия перестанет работать («слетит»). Для восстановления работы администратору придется активировать лицензию заново, используя резервный пин-код из комплекта поставки. Если резервные пин-коды закончатся, потребуется отправлять официальный запрос в Центр лицензирования фирмы «1С» (lic@1c.ru) для получения дополнительных кодов.
Использование виртуализации вносит свои коррективы в процесс администрирования лицензий:
Программные лицензии в виртуальных машинах (VM): Виртуальные среды крайне чувствительны к динамическому изменению ресурсов. Например, если в настройках виртуальной машины включено динамическое выделение оперативной памяти (Dynamic Memory), то при автоматическом изменении объема ОЗУ лицензия «1С» мгновенно заблокируется, посчитав, что конфигурация компьютера изменилась. Также программные лицензии могут деактивироваться при «живой» миграции виртуальной машины между физическими хостами (например, через vMotion в VMware), если при этом изменятся идентификаторы виртуального процессора или UUID машины.
USB-ключи в виртуальных машинах (VM): Физический USB-ключ нельзя напрямую вставить в виртуальную машину. Системным администраторам приходится использовать механизмы проброса USB-портов (USB Passthrough) средствами гипервизора либо применять специализированные аппаратные концентраторы USB-over-IP (например, устройства линейки DIGI AnywhereUSB). Огромным плюсом использования аппаратных USB-ключей в виртуальных средах является их полная нечувствительность к изменению любых параметров виртуальной машины.
В современных версиях платформы «1С:Предприятие 8.3» реализован эффективный механизм — выделенный сервер лицензирования. Проанализируем, как это решение помогает застраховать программные лицензии от «слётов» при модернизации серверов.
Мы можем развернуть в кластере отдельную небольшую виртуальную машину с жестко зафиксированными параметрами (без динамического ОЗУ и миграций) и активировать все имеющиеся программные лицензии предприятия именно на ней. Основной рабочий сервер приложений «1С», на котором крутятся базы данных, теперь можно свободно модернизировать: менять процессоры, добавлять диски и память. Лицензии при этом не пострадают, так как физически они привязаны к неизменяемому серверу лицензирования. Настройка такого узла выполняется через требования назначения функциональности в консоли кластера «1С», при этом отдельную серверную лицензию для самого сервера лицензирования приобретать не требуется.
Для оптимизации расхода лицензий важно четко понимать алгоритм, по которому платформа «1С» осуществляет поиск доступных ключей при запуске клиентского приложения. Поиск происходит в строго определенной последовательности:
Полезный совет: Если на вашем предприятии используются исключительно программные лицензии, поиск аппаратных USB-ключей можно принудительно отключить на рабочих станциях. Это заметно ускорит запуск клиентского приложения «1С». Для этого в файле конфигурации 1CEStart.cfg (который обычно находится в каталоге %APPDATA%\1C\1CEStart\) необходимо прописать строку:
UseHwLicenses=0
При организации удаленной работы пользователей через веб-клиент (запуск программы через интернет-браузер) необходимо учитывать важное техническое ограничение: веб-клиент не умеет использовать локальные лицензии пользователя. Браузер физически не имеет доступа ни к локальным файлам программных лицензий на ПК пользователя, ни к локально подключенному USB-ключу. В случае работы через браузер выдачу лицензий всегда берет на себя либо веб-сервер (Apache, IIS), либо сервер приложений «1С». Это означает, что для всех веб-клиентов всегда будет действовать только сеансовая схема лицензирования: один сеанс — одна лицензия.
Подводя итог сравнению, выделим сильные и слабые стороны обоих вариантов защиты: