При администрировании серверных решений «1С:Предприятие 8.3» одной из наиболее запутанных задач часто становится настройка и распределение клиентских лицензий. Ситуация существенно усложняется, когда в одной локальной сети или на одном сервере смешиваются программные лицензии (пин-коды) и аппаратные ключи защиты (HASP USB). Администраторы часто сталкиваются с тем, что после успешной активации многопользовательской лицензии (например, на 10 или 50 пользователей) сервер упорно отказывается раздавать их клиентам, сообщая об отсутствии свободных лицензий, при этом продолжая без проблем раздавать аппаратные или старые программные ключи.
В этой статье мы подробно разберем причины возникновения подобных сбоев, проанализируем внутренние механизмы платформы «1С:Предприятие» по поиску лицензий и выработаем четкий пошаговый алгоритм для исправления ситуации.
Существует распространенное заблуждение (которое также упоминалось в Сообщении 25 форума), что аппаратные ключи защиты «глушат» программные лицензии и их одновременное использование невозможно. Проанализируем, так ли это на самом деле.
Начиная с версии платформы 8.2.10, разработчики «1С» реализовали полноценную поддержку одновременного использования аппаратной и программной защиты. Однако между ними возникает конфликт приоритетов на этапе опроса ключей клиентским приложением. Рассмотрим подробнее стандартный порядок (алгоритм) поиска свободной лицензии, когда пользователь запускает тонкий или толстый клиент:
.lic, затем — аппаратные ключи, подключенные к самому серверу приложений).В чем заключается конфликт: Если на рабочих местах пользователей или в сети активен аппаратный ключ и запущен HASP License Manager, клиентские компьютеры забирают лицензии на шаге 3. Они просто не доходят до шага 4 и не запрашивают у сервера «1С» новые программные лицензии (например, те самые 10 или 15 пользователей). В результате пул серверных программных лицензий остается нетронутым, а пользователи аппаратных ключей быстро исчерпывают свой лимит.
Решение проблемы: Чтобы заставить клиента игнорировать сетевые аппаратные ключи и напрямую обращаться к серверу приложений за программными лицензиями, мы можем принудительно отключить поиск HASP. Для этого в дополнительных параметрах запуска конкретной информационной базы (в окне запуска «1С») необходимо прописать специальный ключ:
/UseHwLicenses-
Обратим внимание на знак «минус» на конце параметра. Он дает платформе четкое указание: полностью пропустить шаги поиска локальных и сетевых HASP-ключей и сразу перейти к получению программной лицензии от сервера «1С».
Рассмотрим еще одну частую ошибку системных администраторов, из-за которой сервер «не видит» и не раздает свежеактивированную лицензию на 10, 20 или более пользователей. Эта проблема напрямую связана с невнимательностью при вводе пин-кодов из комплекта поставки.
Программные продукты «1С» на несколько рабочих мест комплектуются двумя принципиально разными наборами пин-кодов:
Критическая ошибка при активации: Если администратор на сервере «1С» случайно берет первый попавшийся пин-код из однопользовательского набора и активирует его, система генерирует на сервере файл лицензии .lic. Однако этот файл размечается платформой как однопользовательский. Сервер приложений принимает эту лицензию, но считает, что она предназначена только для запуска одного сеанса на самом сервере (например, для запуска Конфигуратора администратором). Раздавать эту лицензию по сети другим пользователям сервер не имеет права.
Важное ограничение Центра лицензирования: Как только вы активируете хотя бы один пин-код из однопользовательского набора, многопользовательский пин-код из этого же комплекта навсегда блокируется. И наоборот: если вы активировали многопользовательский код, все однопользовательские пин-коды становятся недействительными.
Как исправить ситуацию: Если произошла ошибочная активация, самостоятельно решить проблему не получится. Потребуется написать официальное обращение в Центр лицензирования «1С» по адресу lic@1c.ru. В письме подробно опишите ситуацию, укажите регистрационный номер программного продукта, ИНН организации и приложите сканы регистрационной карточки (желтой бумажки). Специалисты аннулируют ошибочную транзакцию и вышлют вам новый резервный пин-код для правильной многопользовательской активации на сервере.
Прежде чем приступать к сложным манипуляциям с файловой системой, проверим самую простую, но часто упускаемую настройку в консоли администрирования кластера серверов «1С».
Посмотрим на свойства нашей информационной базы:
Если там установлено значение «Нет», то сервер приложений будет полностью игнорировать любые установленные на нем файлы программных лицензий при подключении клиентов к этой конкретной базе. Сервер будет считать, что каждый клиент должен приходить со своей собственной лицензией (локальной или полученной из сети через HASP LM).
Часто после перехода с аппаратных USB-ключей на программные лицензии системные администраторы начинают получать жалобы от пользователей на внезапную нехватку лицензий. Номинально лицензий куплено столько же, сколько было раньше, но теперь их почему-то не хватает. Выясним причину этого феномена, скрытую в различиях логики подсчета сеансов:
Этот фактор необходимо обязательно учитывать при расчете необходимого количества программных лицензий, особенно если ваши сотрудники привыкли работать одновременно в нескольких базах (например, «Бухгалтерия», «Зарплата и управление персоналом» и «Управление торговлей»).
Перейдем к техническим нюансам файловой системы Windows. Начиная с версии 8.3, программные лицензии по умолчанию сохраняются в общую системную директорию:
C:\ProgramData\1C\licenses
В этой папке хранятся файлы с расширением .lic. Однако сама служба сервера приложений «1С» работает в операционной системе не от имени Администратора, а под специальной ограниченной учетной записью. Обычно это пользователь USR1CV8 или локальная системная служба SYSTEM.
Если активация лицензии производилась администратором вручную через запуск платформы «от имени Администратора», созданные файлы .lic могли унаследовать права доступа, закрывающие их чтение для других учетных записей.
Проанализируем и настроим права доступа по шагам:
C:\ProgramData\1C\.licenses и выберем пункт «Свойства».USR1CV8 или Служба)..lic.После изменения прав доступа обязательно перезапустим службу сервера «1С:Предприятие» через консоль services.msc, чтобы платформа смогла корректно перечитать файлы лицензий из каталога.
Иногда в процессе бесконечных попыток активировать систему (особенно при получении резервных пин-кодов взамен утерянных) в каталоге C:\ProgramData\1C\licenses скапливается несколько файлов лицензий, созданных для одного и того же регистрационного номера продукта.
Платформа «1С:Предприятие» крайне негативно реагирует на такие дубли. При сканировании каталога сервер обнаруживает два файла с одинаковым регистрационным номером, но разными датами активации, и в целях безопасности блокирует оба файла. В технологическом журнале или журнале регистрации при этом фиксируется ошибка о недопустимости использования более одного пин-кода для одного продукта.
Решение: Нам необходимо навести порядок в папке лицензий. Оставьте в папке C:\ProgramData\1C\licenses только один, самый последний по дате изменения файл .lic для каждого уникального регистрационного номера программы. Все остальные, более старые или дублирующиеся файлы, переместите во временную резервную папку в другом месте на диске (чтобы платформа «1С» не могла их просканировать).
Рассмотрим классический и наиболее надежный сценарий развертывания программных лицензий в связке «Сервер 1С + Терминальный сервер (RDP)», который обсуждался в сообщениях 20–24 форума.
Представим структуру: у нас есть выделенный сервер приложений «1С:Предприятие», СУБД MS SQL Server и отдельный терминальный сервер, на который пользователи заходят по RDP и запускают тонкий клиент для работы.
Как правильно выполнить активацию клиентских лицензий в такой конфигурации?
Используя предложенные методики и внимательно проверяя тип активируемых пин-кодов, права доступа и параметры запуска информационных баз, мы сможем гарантировать стабильную работу системы лицензирования «1С:Предприятие 8.3» в любой архитектурной среде.