Почему 1С не видит HASP лицензию в базе SQL и как решить проблему с серверным ключом

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

Ситуация, когда после апгрейда сервера или изменения конфигурации оборудования 1С перестает видеть аппаратный ключ защиты, является классической проблемой для системных администраторов. Особенно часто это проявляется при переходе с файлового режима работы на клиент-серверный (SQL). В этой статье мы подробно разберем, почему 1С может выдавать ошибку "Ключ защиты не обнаружен" или сообщение о том, что лицензия "не подходит для 1С", и как восстановить работоспособность системы в среде виртуализации.

Различия в механизме проверки лицензий: Файловая база vs SQL

Для начала проанализируем ситуацию, описанную пользователем: файловые базы запускаются успешно, а SQL-базы выдают ошибку. Это происходит потому, что механизмы лицензирования для этих режимов работы различаются:

  1. Файловый режим: Клиентскому приложению 1С достаточно найти только пользовательскую (клиентскую) лицензию. Она может быть локальной или сетевой (красный ключ HASP).
  2. Клиент-серверный режим (SQL): Для запуска базы необходимо наличие двух видов лицензий одновременно:
    • Клиентская лицензия: Дает право пользователю запустить программу (красный ключ ORGL8).
    • Серверная лицензия: Дает право самому серверу приложений 1С (процессу ragent.exe) работать с информационной базой. Это отдельный ключ, обычно зеленого цвета с маркировкой EN8SA.

Если сервер 1С не видит свой специфический серверный ключ, он не позволит войти в SQL-базу, даже если у пользователя в руках будет рабочий клиентский ключ.

Шаг 1. Идентификация аппаратных ключей

Выясним причину, изучив типы ключей HASP. Важно понимать, какой именно ключ у вас установлен:

Рассмотрим подробнее сообщение об ошибке EN8SA локальный, установлен. Неисправен или не подходит для 1С. Это прямое указание на то, что система видит некий объект, имитирующий серверную лицензию, но не может пройти проверку подлинности.

Шаг 2. Проверка на наличие эмуляторов

Одной из самых частых причин проблем с лицензиями являются "остатки" программных эмуляторов. Проанализируем ситуацию: если вы выдергиваете все физические USB-флешки, а в разделе "О программе" 1С продолжает писать Локальный HASP4 ORGL8, значит, в системе установлен эмулятор (например, UniWS, MultiKey или VUSB).

Для очистки системы от конфликтующего ПО выполним следующие действия:

  1. Откроем Диспетчер устройств.
  2. Проверим раздел "Контроллеры USB" и "Системные устройства". Ищем пункты типа Virtual USB Multikey или устройства с восклицательными знаками.
  3. Удалим подозрительные драйверы.
  4. Проверим наличие файлов vusbbus.sys или haspflt.sys в системных папках C:\Windows\System32\drivers и удалим их.

Шаг 3. Настройка проброса USB в VMware

Если ваш сервер 1С поднят на виртуальной машине VMware, как в рассматриваемом случае, аппаратный ключ должен быть "проброшен" (USB Passthrough) внутрь виртуальной машины. Рассмотрим важные нюансы:

Шаг 4. Чистая установка драйверов HASP

Если драйвер выдает ошибку Driver Install Failed, необходимо выполнить полную очистку. Разберем этот процесс по шагам:

  1. Физически извлеките все ключи HASP из сервера.
  2. Скачайте официальную утилиту командной строки haspdinst.exe.
  3. Запустите командную строку от имени администратора и выполните команду для полной очистки: haspdinst.exe -purge
  4. Перезагрузите сервер.
  5. Установите драйвер заново командой: haspdinst.exe -i
  6. Вставьте ключ обратно и проверьте его появление в ACC.

Шаг 5. Соответствие разрядности сервера и ключа

Проанализируем еще одну возможную причину. Зеленый ключ EN8SA предназначен только для 64-битной версии сервера 1С. Если после апгрейда была случайно установлена 32-битная версия сервера приложений (даже на 64-битную Windows), она не сможет работать с этим ключом. Проверьте разрядность установленного сервера 1С в консоли администрирования или через список установленных программ.

Шаг 6. Настройка файла nshasp.ini

Иногда сервер 1С пытается искать лицензию не там, где она находится. Чтобы форсировать использование локального ключа, найдите файл nshasp.ini (обычно он находится в папке C:\Program Files\1cv8\conf или в папке установки драйвера) и убедитесь, что в нем разрешено использование локального ключа:


[NH_COMMON]
NH_USE_LOCAL = Service

Если вы используете сетевой ключ для клиентов, в этом же файле стоит прописать NH_SERVER_ADDR = [IP-адрес сервера с ключом], чтобы ускорить опрос и исключить широковещательные запросы.

Итог: алгоритм действий

Подводя итог, если 1С перестала видеть HASP в SQL-базе после апгрейда, пройдите по этому списку:

  1. Убедитесь, что зеленый ключ физически подключен и светится.
  2. Проверьте, что в VMware используется USB 2.0 контроллер.
  3. Удалите любые следы эмуляторов, которые могут блокировать работу реального драйвера.
  4. Выполните -purge и чистую установку драйвера ключа.
  5. Убедитесь, что версия сервера 1С (x86/x64) соответствует вашему ключу.

Помните, что серверный ключ проверяется процессом ragent (или rmngr) в момент старта службы или обращения к базе. После любых манипуляций с ключом или драйвером обязательно перезапускайте службу "Агент сервера 1С:Предприятия".

← На главную