Нередко системные администраторы сталкиваются с ситуацией, когда после приобретения и активации лицензии уровня КОРП для аппаратного USB-ключа, расширенная функциональность так и не появляется. Сервер 1С или менеджер лицензий HASP LM просто «не видят» файл программной лицензии .lic, несмотря на то, что физический ключ определяется в системе. В технологическом журнале при этом появляются ошибки binding error и incorrect license type. Давайте подробно разберем, почему это происходит и как исправить ситуацию.
Прежде чем переходить к решению, важно понять сам механизм. В отличие от лицензий ПРОФ, где достаточно просто вставить USB-ключ, для активации КОРП-функционала используется гибридная схема:
.lic..lic файл жестко привязывается к уникальному ID вашего физического USB-ключа.Таким образом, для успешной работы КОРП-функционала серверу 1С необходимо одновременно «видеть» и физический USB-ключ, и соответствующий ему, правильно активированный .lic файл. Если одна из этих двух составляющих недоступна или не соответствует другой — система не сможет предоставить расширенные возможности.
Первый шаг в решении проблемы — сбор точной информации. Лучший инструмент для этого — технологический журнал 1С. Чтобы отследить проблемы с лицензированием, необходимо включить в файле настройки ТЖ (logcfg.xml) событие LIC.
Проанализируем типовой лог, который возникает при такой проблеме:
22:35.929003-358999,LIC,3,process=rmngr,...,Func=getLicense,res=seize,txt='...
... file://C:/ProgramData/1C/licenses/20200213082732.lic, <strong>binding error</strong>, long, 8***2G0, 0***0, client, full functionality...;
... file://C:/ProgramData/1C/licenses/20200213093127.lic, <strong>incorrect license type</strong>, long, 8***0G0, 0***8, server 64, full functionality...;
hard, net, client 300...'
Что означают эти ошибки:
<strong>binding error</strong> (ошибка привязки): Это ключевая ошибка. Она говорит о том, что сервер 1С нашел файл программной лицензии .lic, но не смог найти аппаратный USB-ключ, к которому этот файл был привязан при активации. "Рукопожатие" между программной и аппаратной частью лицензии не состоялось.<strong>incorrect license type</strong> (неверный тип лицензии): Эта ошибка часто является следствием первой. Система видит файл-обновление до КОРП, но не видит базовый ключ, который это обновление должно расширять. Без базового ключа файл обновления считается лицензией «неверного типа».Теперь, когда мы понимаем суть ошибок, рассмотрим основные причины их возникновения и способы устранения.
Это самая распространенная и неочевидная причина. Если на сервере когда-либо использовались эмуляторы ключей защиты (например, для тестов или из-за нелицензионного ПО), их остатки — драйверы, службы, записи в реестре — могут перехватывать обращения к лицензиям.
Как это приводит к ошибке: В момент активации пин-кода система могла "увидеть" не реальный физический USB-ключ, а фантомный ID от эмулятора, и привязала .lic файл именно к нему. После этого, когда эмулятор уже неактивен, сервер 1С пытается сопоставить .lic файл с реальным ключом, их ID не совпадают, и возникает binding error.
Что делать:
multikey), а также системные драйверы (в Диспетчере устройств включите отображение скрытых устройств)..lic файл уже был привязан к несуществующему ID эмулятора, он становится бесполезным. В этом случае единственным решением будет обращение в техподдержку фирмы "1С" с просьбой аннулировать текущую активацию и предоставить резервный пин-код для повторной активации на уже очищенной системе.Если USB-ключ установлен на одной машине, а сервер 1С работает на другой, для их взаимодействия используется менеджер лицензий (HASP License Manager).
Что делать:
aksmon.exe) и проверьте, виден ли в ней ваш USB-ключ по сети. Если ключ не виден, проблема в сети или настройках HASP LM.При использовании кластера из нескольких рабочих серверов 1С возникают дополнительные требования к доступности лицензий.
В чем проблема: Файл лицензии .lic, полученный при активации, по умолчанию сохраняется в папке C:\ProgramData\1C\licenses только на том сервере, где производилась активация. Если клиентское подключение будет обработано другим сервером кластера, у которого нет доступа к этому файлу, пользователь не сможет получить КОРП-лицензию.
Что делать:
.lic также размещаются на этом сервере. Все рабочие серверы кластера 1С настраиваются на получение лицензий с этого центрального сервера..lic файл в соответствующую директорию на каждом рабочем сервере кластера. Однако этот метод сложнее в администрировании и может приводить к ошибкам при обновлениях.Иногда ошибка кроется в мелочах, допущенных во время получения программной лицензии.
Что проверить:
Таким образом, ошибка binding error почти всегда указывает на разрыв связи между программной и аппаратной частями лицензии. Начните диагностику с проверки системы на наличие эмуляторов, затем убедитесь в стабильной видимости ключа и только после этого анализируйте настройки кластера или процедуры активации.