Почему не работает КОРП-функционал для USB-ключа 1С и как исправить ошибки 'binding error' и 'incorrect license type'?

Системный администратор 1С v8.3 (Управляемые формы)
← На главную

Нередко системные администраторы сталкиваются с ситуацией, когда после приобретения и активации лицензии уровня КОРП для аппаратного USB-ключа, расширенная функциональность так и не появляется. Сервер 1С или менеджер лицензий HASP LM просто «не видят» файл программной лицензии .lic, несмотря на то, что физический ключ определяется в системе. В технологическом журнале при этом появляются ошибки binding error и incorrect license type. Давайте подробно разберем, почему это происходит и как исправить ситуацию.

Как работает лицензирование КОРП для USB-ключей

Прежде чем переходить к решению, важно понять сам механизм. В отличие от лицензий ПРОФ, где достаточно просто вставить USB-ключ, для активации КОРП-функционала используется гибридная схема:

  1. Вы используете обычный аппаратный USB-ключ (физически он такой же, как и для ПРОФ).
  2. Для него приобретается обновление до уровня КОРП, которое поставляется в виде пин-кода.
  3. При активации этого пин-кода создается специальный файл программной лицензии .lic.
  4. Этот .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...'

Что означают эти ошибки:

Теперь, когда мы понимаем суть ошибок, рассмотрим основные причины их возникновения и способы устранения.

Причина 1: Конфликт с эмуляторами или остатками «ломаных» ключей

Это самая распространенная и неочевидная причина. Если на сервере когда-либо использовались эмуляторы ключей защиты (например, для тестов или из-за нелицензионного ПО), их остатки — драйверы, службы, записи в реестре — могут перехватывать обращения к лицензиям.

Как это приводит к ошибке: В момент активации пин-кода система могла "увидеть" не реальный физический USB-ключ, а фантомный ID от эмулятора, и привязала .lic файл именно к нему. После этого, когда эмулятор уже неактивен, сервер 1С пытается сопоставить .lic файл с реальным ключом, их ID не совпадают, и возникает binding error.

Что делать:

  1. Полная очистка системы. Необходимо тщательно удалить все следы эмуляторов HASP, Guardant и других. Проверьте установленные программы, службы Windows (особое внимание на службы с именами вроде multikey), а также системные драйверы (в Диспетчере устройств включите отображение скрытых устройств).
  2. Переустановка драйверов. После очистки полностью удалите и заново установите официальные драйверы ключей защиты HASP с сайта производителя (Thales/Gemalto).
  3. Получение нового пин-кода. К сожалению, если .lic файл уже был привязан к несуществующему ID эмулятора, он становится бесполезным. В этом случае единственным решением будет обращение в техподдержку фирмы "1С" с просьбой аннулировать текущую активацию и предоставить резервный пин-код для повторной активации на уже очищенной системе.
  4. Переустановка ОС. В самых запущенных случаях, когда вычистить остатки эмуляторов не удается, может потребоваться полная переустановка операционной системы на сервере.

Причина 2: Проблемы с видимостью USB-ключа по сети

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

Что делать:

  1. Проверьте HASP License Manager. Убедитесь, что на машине с ключом установлена, запущена и корректно работает служба HASP LM.
  2. Используйте утилиту мониторинга. С сервера 1С запустите утилиту Aladdin Monitor (aksmon.exe) и проверьте, виден ли в ней ваш USB-ключ по сети. Если ключ не виден, проблема в сети или настройках HASP LM.
  3. Проверьте брандмауэры. Убедитесь, что на сервере с ключом, на сервере 1С и на сетевом оборудовании между ними открыт UDP-порт 475. Он используется для обмена данными с ключами.
  4. Проведите локальный тест. В качестве временной диагностики переставьте USB-ключ непосредственно в тот сервер, где установлен сервер 1С. Если после этого ошибка исчезнет, значит, проблема однозначно в сетевом взаимодействии.

Причина 3: Особенности работы в кластере серверов 1С

При использовании кластера из нескольких рабочих серверов 1С возникают дополнительные требования к доступности лицензий.

В чем проблема: Файл лицензии .lic, полученный при активации, по умолчанию сохраняется в папке C:\ProgramData\1C\licenses только на том сервере, где производилась активация. Если клиентское подключение будет обработано другим сервером кластера, у которого нет доступа к этому файлу, пользователь не сможет получить КОРП-лицензию.

Что делать:

  1. Централизуйте лицензии. Наиболее правильный подход — поднять отдельный сервер лицензирования. На нем устанавливается HASP LM, в него вставляются все USB-ключи. Файлы .lic также размещаются на этом сервере. Все рабочие серверы кластера 1С настраиваются на получение лицензий с этого центрального сервера.
  2. Дублируйте файлы (не рекомендуется). Как временное решение, можно скопировать .lic файл в соответствующую директорию на каждом рабочем сервере кластера. Однако этот метод сложнее в администрировании и может приводить к ошибкам при обновлениях.

Причина 4: Некорректная процедура активации

Иногда ошибка кроется в мелочах, допущенных во время получения программной лицензии.

Что проверить:

Таким образом, ошибка binding error почти всегда указывает на разрыв связи между программной и аппаратной частями лицензии. Начните диагностику с проверки системы на наличие эмуляторов, затем убедитесь в стабильной видимости ключа и только после этого анализируйте настройки кластера или процедуры активации.

← На главную