При развертывании клиент-серверного варианта работы «1С:Предприятия» (например, при установке комплектов для обучения или многопользовательских программных лицензий) системные администраторы часто сталкиваются с ошибкой: «Не найдена лицензия. Не обнаружен ключ защиты программы или полученная программная лицензия!». При этом на самом сервере информационная база успешно запускается, а клиентские машины сообщают о неудачных попытках чтения файлов конфигурации защиты и отсутствии аппаратных ключей.
Разберем причины возникновения этой ситуации, выясним, почему правка конфигурационных файлов не дает результата, и пошагово настроим раздачу программных лицензий через сервер приложений «1С:Предприятия».
Проанализируем текст диагностического сообщения, которое выдает платформа при сбое поиска лицензии. В отчете фигурируют строки вида nethasp.ini: сетевой HASP не используется, ORGL8 Локальный, не установлен и другие упоминания HASP-ключей. Это стандартный механизм платформы: если лицензия не получена от сервера, клиент поочередно проверяет все возможные способы авторизации — сначала программные файлы, затем локальные USB-ключи HASP, а после — сетевые ключи через протокол NetBIOS или TCP/IP.
Важно помнить: файл nethasp.ini предназначен исключительно для работы с аппаратными USB-ключами защиты HASP. В нем действительно можно задавать широковещательные адреса или конкретный IP-адрес сетевого менеджера лицензий (Hasp License Manager). Однако для программных лицензий (файлы с расширением .lic) этот файл абсолютно бесполезен. Прописывать в нем IP-адреса сервера бессмысленно, так как программная лицензия работает по принципиально другой логике.
В случае с многопользовательскими программными лицензиями (например, комплектом на 50 рабочих мест) пин-коды активируются непосредственно на сервере 1С. Клиентские ПК в этом случае не должны самостоятельно искать лицензию в локальной сети или на своих дисках — лицензию каждому клиентскому подключению должен выделять и передавать сервер «1С:Предприятия» при установлении сеанса.
Для того чтобы сервер начал выдавать клиентские лицензии из своего пула, необходимо выполнить соответствующую настройку в консоли управления кластером.
Разберем по шагам, как включить выдачу лицензий для конкретной информационной базы:
Имя сервера → Кластеры → Локальный кластер → Информационные базы.После включения этой опции при подключении тонкого или толстого клиента к серверу 1С служба кластера автоматически выделит клиенту лицензию из установленного на сервере комплекта.
Нередко в процессе первоначальной настройки кластера и создания информационной базы администраторы сталкиваются с ошибками авторизации на стороне СУБД (например, Microsoft SQL Server): Cannot open database или Login failed for user.
Выясним причину этой проблемы. При создании базы данных через консоль кластера 1С сервер приложений сам обращается к SQL-серверу для создания структуры таблиц. Для этого ему необходима учетная запись СУБД с достаточными правами.
Разберем правильный порядок действий:
sa. Если при установке SQL Server использовалась смешанная аутентификация (SQL Server and Windows Authentication mode), можно указать пользователя sa и пароль, заданный при установке.db_owner на данную базу данных.Рассмотрим дополнительные факторы, которые могут влиять на доступность лицензий в сети:
.lic сохраняется в каталоге C:\ProgramData\1C\licenses. Служба сервера 1С (по умолчанию запускаемая от пользователя USR1CV8) должна иметь полные права на чтение файлов в этом каталоге. Если лицензия была случайно активирована в личный профиль администратора, служба сервера не сможет ее прочесть.1C:Enterprise 8 Server Agent через оснастку служб Windows, чтобы процессы кластера перечитали файлы лицензий.