Алгоритм поиска лицензий при запуске «1С:Предприятие» 8

При запуске клиент «1С:Предприятие» выполняет поиск клиентской лицензии. Алгоритм поиска лицензии не столь тривиален. Ниже приведен данный алгоритм для различных режимов запуска «1С:Предприятие», а также алгоритм поиска лицензии при запуске сервера «1С:Предприятие», для версий «1С:Предприятие» 8.2 и 8.3.

0. Оглавление

Алгоритм поиска лицензии отдельно представлен для следующих ситуаций:

  1. Толстый и тонкий клиенты, файловый вариант ИБ
  2. Толстый и тонкий клиенты, клиент-серверный вариант ИБ
  3. Веб-клиент, файловый вариант ИБ
  4. Веб-клиент, клиент-серверный вариант ИБ
  5. Запуск сервера «1С:Предприятия»
  6. Web-сервисы
  7. Заключение

 

1. Толстый и тонкий клиенты, файловый вариант ИБ

При запуске толстого или тонкого клиента, «1С:Предприятие», в случае подключения к файловой информационной базе, выполняет возможность запуска (поиск лицензии) по следующему алгоритму (если на каком-либо шаге обнаруживается необходимая лицензия, дальнейший поиск прекращается):

 

* Поиск ключа защиты HASP может быть выключен, если в конфигурационный файл 1CEStart.cfg добавлен параметр UseHwLicenses=0.

 

2. Толстый и тонкий клиенты, клиент-серверный вариант ИБ

При запуске толстого или тонкого клиента, «1С:Предприятие», в случае подключения к клиент-серверной информационной базе, выполняет возможность запуска (поиск лицензии) по следующему алгоритму (если на каком-либо шаге обнаруживается необходимая лицензия, дальнейший поиск прекращается):

Для версии 8.2:

 

Для версии 8.3:

Algoritm_poiska_locenzii_1C_83_02

* Поиск ключа защиты HASP может быть выключен, если в конфигурационный файл 1CEStart.cfg добавлен параметр UseHwLicenses=0.

 

3. Веб-клиент, файловый вариант ИБ

При запуске веб-клиента (браузера), «1С:Предприятие», в случае подключения к файловой информационной базе, выполняет возможность запуска (поиск лицензии) по следующему алгоритму (если на каком-либо шаге обнаруживается необходимая лицензия, дальнейший поиск прекращается):

 

4. Веб-клиент, клиент-серверный вариант ИБ

При запуске веб-клиента (браузера), «1С:Предприятие», в случае подключения к клиент-серверной информационной базе, выполняет возможность запуска (поиск лицензии) по следующему алгоритму (если на каком-либо шаге обнаруживается необходимая лицензия, дальнейший поиск прекращается):

Для версии 8.2:

 

Для версии 8.3:

Algoritm_poiska_locenzii_1C_83_04

 

 

5. Запуск сервера «1С:Предприятие»

При установке соединения клиентского приложения с сервером «1С:Предприятия», выполняется проверка наличия серверной лицензии по следующему алгоритму (если на каком-либо шаге обнаруживается необходимая лицензия, дальнейший поиск прекращается):

Для версии 8.2:

 

Для версии 8.3:

Algoritm_poiska_locenzii_1C_83_05

 

6. Web-сервисы

Для работы Web-сервисов не требуется клиентских лицензий. Однако если информационная база, которая предоставляет Web-сервисы, работает в клиент-серверном варианте, необходимо наличие серверной лицензии для работы сервера «1С:Предприятия».

 

7. Заключение

Файл программной лицензии считается доступным для использования, если:

  • Не содержится в черном списке.
  • Имеет корректный формат.
  • Привязан к текущему компьютеру.
  • Содержит свободную лицензию.
  • В сети не используются другие файлы лицензий, полученных для того же пинкода и серийного номера программы. Если обнаруживается такая ситуация, то файл лицензии делается непригодным для использования и помещается в черный список.

Как видно из схемы, лицензии, предоставляемые с помощью ключей защиты HASP4 Net и с помощью файлов программных лицензий, могут складываться и использоваться одновременно. В случае совместного использования вначале будут использоваться программные лицензии, а затем лицензии из ключей HASP.

 

 

50 Comments

  1. asved.ru

    Вариант запуска «Веб-клиент» следует поставить в начало схемы.

    Reply
  2. qwinter

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

    Reply
  3. Gureev

    Вот что мне ответили специалисты поддержки 1С:

    Последовательность поиска лицензии в 1С:Предприятии 8.2 описана в документации на диске ИТС — Руководство администратора — глава 9 — п.9.3:

    1. На компьютере с клиентским приложением:

    — выполняется попытка получения лицензии из того файла программной лицензии или ключа защиты HASP, откуда лицензия была получена при последнем успешном подключении;

    — выполняется поиск программных лицензий на локальном компьютере;

    — выполняется поиск локального ключа HASP или многопользовательского ключа HASP, доступного с помощью программы HASP License Manager.

    2. На компьютере с сервером «1С:Предприятия» (в случае клиент-серверного варианта):

    — выполняется попытка получения лицензии из того файла программной лицензии или многопользовательского ключа защиты HASP (установленного на компьютер с сервером «1С:Предприятия»), откуда лицензия была получена при последнем успешном подключении (см. здесь);

    — выполняется поиск программных лицензий на сервере «1С:Предприятия»;

    — выполняется поиск многопользовательских ключей HASP, установленных на сервере «1С:Предприятия» или многопользовательского ключа HASP, доступного с помощью программы HASP License Manager.

    3. Если лицензия не обнаружена и конфигурация базовая, клиентское приложение выполняет поиск лицензии базовой версии на локальном компьютере.
    Reply
  4. qwinter

    (3) Gureev, интересно. Но почему то, сколько я сталкивался, юсбишный ключ вроде использовал сначала, а только потом ищет программную лицензию. Даже если вспомнить диалог: «бла бла бла поиск лицензии выполнен без использования аппаратной защиты, вы хотите отключить использование аппаратной защиты»? В чем его смысл, если программная защита ищется раньше?

    Reply
  5. Tavalik

    (3) Gureev,

    Именно по этой инструкции я и делал блок-схему.

    Reply
  6. Tavalik

    (1) asved.ru,

    Не понимаю, зачем?

    (2) qwinter,

    Не понимаю, почему?

    Reply
  7. Gureev

    (4) qwinter, наверное в том чтобы отключить галку поиска аппаратного ключа, когда нашлась программная лицензия.

    (5) у вас первым пунктом поиск программной лицензии на локальной машине. Это не так. Вначале 1С пытается получить последнюю использовавшуюся.

    Reply
  8. qwinter

    (7) Gureev, так там в этом сообщении говориться, что поиск аппаратной лицензии происходил более 3 секунд.

    Reply
  9. Tavalik

    (7) Gureev,

    Нет, все же сперва ищется программная локальная лицензия, а уже потом последняя из HASP ключа.

    См. «Руководство администратора» 2-е издание глава 9 — п.9.3, стр. 201.

    Reply
  10. Ramonchik

    Вчера как раз многократно проверял какой ключ подтягивается первым: аппаратный (сетевой на 10 мест) или программный (сетевой на 5 мест) на сервере в терминальном режиме (без использования 1С Сервера). Вначале подтягивается аппаратный ключ.

    Reply
  11. Ramonchik

    столкнулся со след. проблемой при совместном использовании ключей:

    Общее количество работающих лицензий: 16 шт.

    Состоят из : ключ 10 аппаратных лицензий + программный ключ на 1 лицензию + программный ключ на 5 лицензий.

    Иногда 1 терминальный сеанс захватывает 2 ключа (например программный и аппаратный), т.е. получается что 1 пользователь берет на себя 2 лицензии. При моделировании проблемы мне удалось сделать это только следующим образом: Запускаю 1С (когда все 10 аппаратных лицензий заняты) и 1С берет (2-ая по приоритету) программную лицензию. Затем освобождаю 1 аппаратную лицензию и запускаю 1С в этом же сеансе и 1С берет освободившуюся аппаратную лицензию (1-у по приоритету).

    Reply
  12. qwinter

    (11) Ramonchik, вот и я о том же, на практике аппаратный ключ первым подтягивается, что бы 1С в своих руководствах не писало. И при клиент-сервере если не ошибаюсь, если стоит выдавать лицензии сервером, то сначала будут искаться лицензии на сервере и будет попытка выдать их сервером, и только потом на локальном компьютере.

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

    Reply
  13. Tavalik

    (12) qwinter,

    Насколько я понимаю — не так.

    Если лицензии раздает HASP License Manager, или используется программный сетевой ключ, при работе в терминальном режиме, одна терминальная сессия — одна лицензия. В не зависимости от количества запущенных экземпляров программы.

    Если лицензии раздает сервер 1С, то одно подключение — одна лицензия.

    Это говорит и мой личный опыт и «Руководство администратора», глава 9, п. 9.1.3.8 стр. 181.

    Reply
  14. Tavalik

    (11) Ramonchik,

    Да, выходит официальная документация в этом пункте врет. Жаль самому негде проверить. 🙁

    А у вас какая версия клиента?

    Reply
  15. Yashazz

    По итогам чтения комментариев, у меня сложилось нехорошее подозрение, что собственно в статье описана либо полная лажа, либо некий единичный случай, но никаких общих выводов делать нельзя. Это так?

    Reply
  16. Tavalik

    (15) Yashazz,

    В статье дана блок-схема, которую я нарисовал основываясь на ОФИЦИАЛЬНОЙ ДОКУМЕНТАЦИИ 1С. Как я уже говорил, это книга «Руководство администратора» 2-е издание, глава 9, п.9.3.

    Reply
  17. asved.ru

    (6) апатамушта браузер.

    Reply
  18. Tavalik

    (17) asved.ru,

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

    Reply
  19. zels

    (10) Ramonchik,

    Но согласно схеме первым должен «подтягиваться» программный ключ.

    Reply
  20. zels

    (18)

    На сайте ИТС сказано, что сначала делается попытка получить лицензию, как получили последний раз. Получается, что Вы пишете «по инструкции» переставляя пункты, т.е. изменяя последовательность поиска?

    Reply
  21. Yashazz

    (16) Т.е., называя вещи своими именами, вы передрали часть штатного мануала и даже не удосужились проверить граничные условия, другие ситуации и варианты. Браво, такая публикация действительно заслуживает подобного рейтинга.

    Reply
  22. @lexandr

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

    Reply
  23. AllexSoft

    (18) интересное дело.. то есть если у меня скажем 3 ключа аппаратных, 10+10+5.. стоят они на разных машинках в одной сети, в каждой машинке есть лиценз менеджер и тд.. а подключаются у меня все через тонкий клиент+апач.. то клиенты не будут видеть ключи кроме того что стоит в самом сервере (где апач) ?) то есть максимум я смогу юзать 10 лицензий ?

    Reply
  24. asved.ru

    (23) AllexSoft, именно. Точнее, кроме одного HASP, не обязательно локального. Ибо при неудаче получения лицензии на первом работающем HASP, на других ключах той же серии лицензия не ищется. Я, кстати, про эту ситуацию писал.

    Впрочем, это можно решить через nginx в качестве фронтэнда и три экземпляра апача, каждый со своим 1С/nethasp.ini 🙂

    Reply
  25. AllexSoft

    (24) asved.ru, очень интересно.. спасип, а я то думаю чего мне пользователь частенько говорит что у него лицензий не хватает, хотя там лицензий дофига

    три экземпляра апача, каждый со своим 1С/nethasp.ini 🙂

    эмс, я что то не понял, как конкретному экземпляру апача прикрутить свой nethasp.ini .. у меня в каталогах апача и публикации нет nethasp.ini

    Reply
  26. asved.ru

    (25) AllexSoft, на каждый экземпляр апача — свой конфиг и свой экземпляр 1с, к примеру, в виртуалках. Но извращение редкостное.

    Reply
  27. AllexSoft

    (26) asved.ru, ужс) ну только 3 виртуалки разве что )) неужель 1С не может решить проблему поиска свободных ключей одинаковой серии.. ну не верю я что это не решаемая проблема, помоему они просто не хотят ничего делать с этим, а проблема древнейшая

    Reply
  28. Tavalik

    (10) Ramonchik, (20) zels, (22) @lexandr,

    Спасибо за комментарии, вы были правы, сначала ищется ключ, который был использован при последнем удачном подключении.

    Ссылка на сайт ИТС

    В статье поправил.

    Reply
  29. Tavalik

    Полностью обновил публикацию.

    Reply
  30. asved.ru

    (27) AllexSoft, пользуйте программные ключи 🙂

    Reply
  31. AllexSoft

    (30) asved.ru, придется менять аппаратный на программные… да и что то какое то недоверие к программным, они на самом деле не выгодно работают.. допустим у бухгалтера стоит ЗУП+БУХ+самописка-управленка.. сколько будет использовано лицензий на сетевом ключе при программной и при аппаратной защите?

    Насколько я понимаю

    при аппаратной 1 лицензия (на 1 компьютер)

    При программной по 1ой лицензии на каждую то есть итого 3 лицензии

    верно?

    ПС: если конфигурация компа (сервера) частенько меняется, а физического доступа к серверу нет (как в моем случае) то становится весьма проблемным каждый раз чего то там активировать, а порой вообще не активируется по каким то внутренним ошибкам 1Са… кароче был у меня неприятный опыт с программными лицензиями

    Reply
  32. asved.ru

    (31) AllexSoft, это верно только для случая веб-клиента.

    Reply
  33. asved.ru

    (31) AllexSoft,

    ПС: если конфигурация компа (сервера) частенько меняется

    Кластер серверов 1С 8.3 позволяет создать отдельный сервер лицензирования, причем не требующий собственной серверной лицензии.

    Reply
  34. AllexSoft

    (32) asved.ru, то есть ты хочешь сказать что на программной лицензии от БП я смогу работать с ЗУПом? у меня не получилось… требовал и ту и другую лицензию (пробовал на файловой в толстом клиенте по сети и в тонкий клиент+апач)

    (33) asved.ru, в моем случае к сожалению 8.2 (( Варианта перейти на 8.3 пока что нету… хотя может подумать о режиме совместимости. Да и толку все равно отдельный сервер лицензирования мне никто не купит )

    Reply
  35. wunderland

    А у меня WEB клиент не находит сетевого USB ключа, а тонкий и толстый клиент — находят, на одной и той же базе…

    Хотя по Вашим схемам должно работать.

    Reply
  36. AllexSoft

    (35) wunderland, прочитай каменты выше, обсуждали же как раз что WEB-клиент будет искать только тот ключ что вставлен на сервер физически.. на остальные ключи в сети ему плевать

    Reply
  37. ovelix

    Уважаемые господа !

    Прошу помочь понять следующую ситуацию

    1. Сервер приложений 1С (сетевое имя SRV-APP-1) — 1шт.

    2. Сервер СУБД MS SQL (сетевое имя SRV-SQL-1) — 1шт.

    3. Веб-сервер Apache 2.2 (сетевое имя SRV-WEB-1) — 1шт.

    Все приложения располагаются на отдельных железках. В кластере 1С зарегистрирована информационная база BUH_1C, которая опубликована на веб-сервере SRV-WEB-1.

    На веб-сервер SRV-WEB-1 установлена клиентская часть 1С с опциями «Модули расширения веб-сервера» и «Администрирование сервера 1С:Предприятия». Заходим через http://srv-web-1/buh_1c.

    Вопрос — как поиск лицензии происходит?

    а. Если на Веб-сервер ключ USB только на данный комп.

    б. Если на Сервер приложений 1С ключ USB и HASP4

    Благодарю !

    Reply
  38. AllexSoft

    (37) ovelix, видется только ключ вставленный на SRV-WEB-1 и все

    Reply
  39. ovelix

    спс AllexSoft, это в обоих случаях ищется только локальный ключ?

    Reply
  40. wildskiff

    Хорошая статейка! Спасибо! Еще бы к ней прикрутить в начало какие ключи бывают, и куда и как их правильно подключать было бы шикарно!

    Reply
  41. AllexSoft

    (39) ovelix, все кто через публикацию на апаче ходит — ищется только локальный ключ где этот апач и стоит (

    если обычный тонкий клиент с коннектом в 1С:Серверу то ищется лицензия по всей сети, как обычно

    Reply
  42. ovelix

    (41) AllexSoft, спс ! у меня возник такой вопрос:

    В описанном случае, если на апаче стоит USB локальный, все кто через публикацию на апаче ходит будут пользоваться только этим локальным ключом, получается сколько угодно пользователей может работать через веб-клиент таким образом? 🙂

    Reply
  43. AllexSoft

    (42) ovelix, не правильно, сколько в локальном ключе лицензий — столько и сможет

    Reply
  44. ovelix

    (43) AllexSoft, насколько я понял из описаний, локальный USB ключ позволяет запускать сколько угодно конфигураций на данном компе, веб-клиенты по сути запускают конфигурации на компе где стоит апач, не одинаково?

    Reply
  45. AllexSoft

    (44) ovelix, в локальном ключе — 1 лицензия.. считайте это сетевой ключ на 1 лицензию.. то есть вы сможете запустить 1 экземпляр приложения на веб-клиенте

    Reply
  46. Romany

    Ребята, а как быть с Linux серверами, если 10 подключений не требуют лицензий, а через web, требует???

    Reply
  47. AllexSoft

    (46) Romany,

    если 10 подключений не требуют лицензий

    требуют, это просто возможность для тестирования оставленная разработчиками.. ключевое слово ДЛЯ ТЕСТИРОВАНИЯ

    Reply
  48. Tavalik

    (40) wildskiff,

    Пожалуйста, вот здесь есть такая статья:

    Reply
  49. Els11

    Здравствуйте. Нигде явно не указано, поэтому спрашиваю. Клиент-серверный вариант. Веб сервер на отдельной машине. Если на веб-сервере воткнуть физически ключ на n клиентских лицензий, но на сервере 1с предприятия указать, что лицензии сервером не выдаются. Будет ли найдена лицензия для вебклиента? Что- то не получается так сделать.

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

    Reply
  50. alexfps79

    Доброго дня, коллеги!

    Какая-то черная магия с лицензиями, а именно с утра у пользователей стали появляться сообщения, что не обнаружено свободной лицензии. А в программе если копировать информацию о ключах выходит следующее:

    Текущая:

    Сетевой HASP4 ORGL8 50, получило клиентское приложение

    Информационная база:

    Сетевой HASP4 ORGL8 10

    8100300520 клиент

    800403124 клиент

    Конфигурация:

    Локальный HASP4 ORGL8 1

    В обед ситуация повторилась. Процессов 1с на терминальном сервере 33, а мест более 60.

    В Чем может быть проблема?

    ЗАранее спасибо

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *