При переходе с базовой версии конфигурации «1С:Бухгалтерия» на версию ПРОФ или после проведения очередного обновления пользователи и администраторы иногда сталкиваются с крайне неожиданным поведением системы. В окне «О программе» в разделе лицензирования внезапно появляется надпись «Сетевой HASP4 ORG8A 300». При этом никаких физических многопользовательских ключей защиты на предприятии никогда не приобреталось.
Давайте подробно разберем, откуда берется эта запись, чем грозит ее появление, и как полностью очистить систему и базу данных от следов нелегальных лицензий.
Для начала проанализируем, что скрывается за этой аббревиатурой. Это реально существующий тип аппаратного USB-ключа защиты, выпускаемый компанией Aladdin (ныне Thales/Gemalto) для защиты программных продуктов «1С»:
ORGL8. Серия ORG8A выпускается исключительно для маркировки ключей на 300 пользователей (а серия ORG8B — на 500 пользователей).Учитывая высокую розничную стоимость оригинального физического ключа такого номинала (которая исчисляется семизначными цифрами в рублях), появление такой записи на обычном компьютере выглядит крайне подозрительно и сразу наводит на мысль об использовании эмулятора.
Прежде чем приступать к активным действиям, нам необходимо выяснить первопричину. Откроем в 1С окно «О программе» (кнопка с буквой «i» или через меню «Справка») и внимательно изучим раздел «Лицензия». Нам нужно понять, в какой именно строке отображается злополучный ключ.
Выясним разницу между этими строками:
Рассмотрим подробнее каждый сценарий и способы решения.
Если система использует эмулятор прямо сейчас, обычное удаление и повторная установка платформы 1С через «Панель управления» не помогут. Эмуляторы (такие как MultiKey, vUSB и другие) работают как виртуальные драйверы устройств на уровне ядра Windows и остаются в системе даже после удаления 1С.
Выполним очистку операционной системы по шагам:
Virtual USB MultiKey, SafeNet HASP, Sentinel HASP, vUSB.regedit и выполним поиск по ключевым словам MultiKey, HASP. Особое внимание уделим ветке:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Emulator (или созвучным названиям виртуальных служб). Удалим эти ветки реестра.Этот сценарий наиболее распространен при обновлении программ. Почему так происходит? При обновлении конфигурации (особенно если использовался файл конфигурации .cf, скачанный со сторонних ресурсов, или если обновление выполнял приходящий специалист со своего ноутбука) в базу импортируется история лицензий того компьютера, на котором этот файл .cf собирался или тестировался. Если у разработчика обновления стоял эмулятор, эта запись навсегда записывается в вашу базу данных.
Вся история прошлых лицензий сохраняется в служебных настройках конфигурации. Конкретно она записывается в файл с уникальным идентификатором: c01b78f6-1525-41b1-9cc1-69e3da58d2ac.pfl.
Рассмотрим, как очистить эту «грязную» историю для разных вариантов работы базы данных.
Если ваша база данных развернута на сервере под управлением MS SQL Server или PostgreSQL, удалить старые записи очень просто. Нам нужно очистить содержимое служебного файла в системной таблице Files.
Выполним SQL-запрос в зависимости от используемой СУБД:
Для СУБД Microsoft SQL Server:
UPDATE Files
SET BinaryData = CONVERT(varbinary(max),''), datasize = 0
WHERE FileName = 'c01b78f6-1525-41b1-9cc1-69e3da58d2ac.pfl'
Для СУБД PostgreSQL:
UPDATE files
SET binarydata = ''::bytea, datasize = 0
WHERE filename = 'c01b78f6-1525-41b1-9cc1-69e3da58d2ac.pfl';
После успешного выполнения запроса обязательно перезапустим службу Агента сервера 1С:Предприятие, чтобы очистить серверный кэш. После перезапуска и входа в базу запись о старых лицензиях в окне «О программе» пропадет. Для этой задачи можно использовать скрипт для автоматической очистки серверного кэша 1С.
В файловой базе напрямую выполнить SQL-запрос к таблице невозможно. Здесь мы можем применить один из следующих подходов:
1Cv8.1CD в монопольном режиме на низком уровне и вычищать запись о файле настроек c01b78f6-1525-41b1-9cc1-69e3da58d2ac.pfl. Перед запуском таких утилит обязательно создайте резервную копию базы!Проанализировав ситуацию, мы видим, что само по себе наличие надписи в «Информационной базе» при чистой строке «Текущая» не означает, что на вашем компьютере установлен пиратский софт. Тем не менее, во избежание лишних вопросов со стороны проверяющих органов, настоятельно рекомендуется очищать эту историю.
Чтобы не допускать появления чужих лицензий в будущем, соблюдайте простые правила:
.cf, полученные из сомнительных источников или переданные сторонними специалистами без проверки.