Имя: Пароль:
1C
 
Раздача лицензий аппаратного ключа 1С
0 21stas
 
30.06.26
08:24
Есть сервер под Linux.
В него вставлен аппаратный ключ на 20 пользователей и ключ на сервер "1С: Предприятие 8".

Читаю интернет:
Аппаратные клиентские лицензии
- Если лицензии выдает «Сервер 1С: Предприятие», то отдельная лицензия выдается на каждый запуск программы. «Сервер 1С: Предприятие» может брать лицензии напрямую у установленного на компьютер сервера сетевого ключа HASP или получать по сети у HASP License Manager‑a.
- Если лицензии выдает HASP License Manager, то с одной лицензией можно в одной терминальной сессии или на одной рабочей станции запустить несколько информационных баз (любых — файловых, клиент‑серверных).


Как заставить сервер не брать брать клиентские лицензии с локально установленного аппаратного ключа? Пусть их раздаёт HASP License Manager, по одному на компьютер.
1 2S
 
30.06.26
08:32
Сами же написали, разверните HLM. Не обязательно есть ставить на сервере, Nethasp.ini в помощь.
2 probably
 
30.06.26
08:31
в настройках сервера 1с есть галочка, раздавать ли лицензии
3 maxab72
 
30.06.26
08:32
(2) а не в настройках конкретной базы эта галочка?
4 Winnie Buh
 
гуру
30.06.26
08:34
(0) если клиенту ключ доступен, то он и так должен сначала попытаться сам получить лицензию с него от HASP LM,
а к серверу обратится только в случае, если не сможет этого сделать

Как заставить сервер не брать брать клиентские лицензии с локально установленного аппаратного ключа?

запретить серверу раздавать лицензии
5 21stas
 
30.06.26
08:44
(3) Я такую галочку вижу только в настройках базы.
Баз у нас десятки, регулярно появляются и исчезают.

Поэтому я хотел узнать:
1. Рабочий ли способ убрать галочки во всех базах.
2. Нет ли возможности убрать галочку не в каждой базе, а где-то в одном месте.
6 Winnie Buh
 
гуру
30.06.26
10:26
(5) общей такой настройки нет, только для каждой базы

для начала сними для одной базы и попробуй её запустить - ещё не факт, что у тебя клиент сможет получить лицензию от HASP LM

P.S.
ЕМНИП раздача лицензий сервером по умолчанию отключена, т.е. кто-то вручную ее включал для каждой базы  
и главный вопрос - с какой целью
7 YFedor
 
30.06.26
09:06
(5) В общем случае никак.
Можно вынести ключ на отдельный комп и запретить к нему доступ с сервера (например брандмауером), тогда эти лицензии сервер точно не выдаст. (У меня так и сделано)
8 probably
 
30.06.26
10:43
(7) получение и дальнейшая раздача лицензий поди работают на одном порту и одном протоколе? Вопрос к тому, что запретив доступ серверу запретится еще и запуск 1с на самом сервере?
9 YFedor
 
30.06.26
11:53
(8) Так мы доступ к машине раздачи ключей запрещаем.
Причем, запрещаем доступ только серверу 1с
10 Winnie Buh
 
гуру
30.06.26
11:56
(9) как понимаю, он говорит про то, что если на сервере запретить доступ к аппаратному ключу, то на машине с сервером нельзя будет запустить клиентское приложение 1С с этого ключа, например, конфигуратор
11 YFedor
 
30.06.26
11:57
(10) Это да, а что, на сервере 1с кто-то работает?
12 21stas
 
30.06.26
13:11
(10) На сервере никто не работает.
Там СУБД и сервер "1С: Предприятие".
13 Winnie Buh
 
гуру
30.06.26
13:41
(12) 2 варината:
1. запретить раздачу лицензий сервером 1С в настройках ИБ
2. перенести ключ на другую машину и заблокировать серверу доступ к нему

но все это будет работать только при условии, если все клиенты в локальной сети и нет веб-клиентов или мобильных клиентов
для начала бы советовал для одной из баз отключить раздачу лицензий сервером и проверить, как оно будет работать, т.к. во-первых - не зря включали раздачу,
во-вторых - сейчас клиенты почему-то получают лицензии от сервера, а не от HASP LM, хотя клиент сначала должен пытаться получать лицензию от HASP LM сам и к серверу за лицензией должен обращаться только в случае, если не сможет этого сделать
14 Mamul
 
30.06.26
14:14
А если БД в клиент-северной архитектуре еще и на Веб-сервере опубликована, то разве ей не будет необходимо, чтобы 1С-Сервер выдавал лицензии сам от себя?
В противном случае Тонкий клиент на подключение по-веб протоколу настроить не получится вроде, если 1С сервер не будет выдавать лицензии.
15 Winnie Buh
 
гуру
30.06.26
14:19
(14) если тонкий клиент по сети может получить лицензию от HASP LM, то без проблем, в этом случае протокол значения не имеет
16 YFedor
 
30.06.26
14:19
(14) Не обязательно.
Главное, чтобы клиент получил лицензию, а как - уже другая история.

У него может быть локальная,
Он может получить от Менеджера Хасп по локальной сети,
Может получить от сервера 1с.
17 Mamul
 
30.06.26
14:28
(15) Ну, тогда для доступа через веб-браузер к БД выдача лицензией сервером 1с будет необходима, браузер точно не умеет получать лицензию через хасп-мененджер лицензий.
18 Winnie Buh
 
гуру
01.07.26
11:07
(17) разумеется при работе веб-браузером лицензия может быть выдана только сервером,
поэтому в (13) и написал, что отключать раздачу лицензий сервером можно только в случае, если нет веб-клиентов или мобильных клиентов
19 Эх-эх-эх
 
01.07.26
23:57
То есть Вы хотите  сказать, что
1. я взял файловую базу, опубликовал ее через апач и хожу в нее веб-клиентом через браузер. В это случае лицензию раздает веб-сервер (условно "апач").
2. я взял базу в клиент-северной архитектуре, точно так же опубликовал ее через апач и хожу в нее тем веб-клиентом через то же браузер. И вдруг в этом случае лицензии раздает не веб-сервер ("апач"), а обычный сервер 1с? так?
А логика какая? Какая разница апачу, какую базу он публикует в сеть - файловую или в клиент-северной архитектуре.
Хм... А если одновременно опубликованы две базы - одна база файловая, а другая клиент-серверная, и к обеим ходят веб-клиентом через браузер. Кто раздает лицензии? Первой и второй базам?
20 X Leshiy
 
02.07.26
00:15
(0) Если клиентский ключ воткнут в сервер, то лицензии раздавать будет сервер, без вариантов.
(5) Уберешь галку, вообще не будет видеть лицензии.

Втыкай в другой комп и HLM как сказано в (1).
Вот тогда галку и можно убирать.
Но лучше в nhsrv.ini (там где HLM поставишь) ограничить.
Как-то так

NHS_IP_LIMIT         = 172.168.0.50, 172.168.0.52-254, 172.168.3.*, 172.168.4.*, 172.168.5.*, 172.168.6.*, 172.168.7.*, 172.19.1.*;
21 Winnie Buh
 
гуру
02.07.26
01:25
(19) апач не раздаёт никаких лицензий, он о них вообще ничего не знает и не должен,
для файловых баз, опубликованных на веб-сервере, за раздачу и подсчёт лицензий отвечает специальная dll-ка от 1С (wsisapi.dll), для клиент-серверных баз это роль переходит к серверу 1С

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

именно так, как выше написал:
для файловых - wsisapi.dll,
для SQL - сервер 1С
22 Mamul
 
02.07.26
01:24
(20) Можно настроить в зависимости от задачи. У меня на линукс (дебиан) машине стоит мененджер лицензий, (HASP LM) и сетевой ключ на клиентские лицензии.

Для определенных БД включаю раздачу лицензии сервером сразу при создании через терминал RAC командой и соответственно пользователь получает лицензию от сервера. Тем кому нужно выдать лицуху на машину от HASP LM, настраиваю соответственно.
23 X Leshiy
 
02.07.26
01:30
(22) Ну тут вопрос в том, что клиентский ключ воткнут в сервер. А значит, лицензии выдает сервер (без вариантов), со всеми вытекающими.
24 Mamul
 
02.07.26
01:37
(23) почему же, не обязательно. Я могу через RAC добавить ключ для БД командой --license-distribution=allow, или галкой через гуй, либо убрать её и пользователь лицензию от сервера не получит, пока я не настрою ему выдачу через HASP LM. Ключ при этом будет воткнутым в сервер физически.
25 Эх-эх-эх
 
02.07.26
07:11
(21) "апач не раздаёт никаких лицензий, он о них вообще ничего не знает и не должен"

я сказал - условно "апач" и даже взял в кавычки, подразумевая не сам апач, а именно модуль расширения веб-сервера. просто так писать короче :))
Ладно, это название в кавычках не суть вопроса.

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

"именно так, как выше написал:
для файловых - wsisapi.dll,
для SQL - сервер 1С"

Нет. Не так. Ключ в любом случае РАЗДАЕТ модуль расширения wsisapi.dll.
Вопрос в том, откуда этот wsisapi.dll БЕРЁТ ключик для раздачи? Для раздачи он должен его откуда то взять, так?
Откуда этот wsisapi.dll знает, что в первом случае (файловый вариант) ключ необходимо брать от NetHasp LM, а во втором случае НЕЛЬЗЯ брать от NetHasp LM, а нужно брать только от сервера 1С.
Ты хочешь сказать, что в самом модуле wsisapi.dll прописано что-то типа такого: если обращение к базе идет через файловый вариант, то ищем ключик по сети, берем от NetHasp LM,
а если обращение идет через ragent, то фиг вам, от NetHasp LM брать ключи запрещено, бери только от сервера?
26 Winnie Buh
 
гуру
02.07.26
09:09
(25) внутренняя реализации системы защиты не документирована, мы видим только результат того, что скрыто под капотом,
результат таков, что при работе клиент-серверных баз функция подсчёта лицензий переходит к серверу 1С
(можно сказать, что "возвращается", т.к. исторически сервер этим занимался ещё до того, как появились УФ и возможность веб-публикаций)

если обращение к базе идет через файловый вариант, то ищем ключик по сети, берем от NetHasp LM,
а если обращение идет через ragent, то фиг вам, от NetHasp LM брать ключи запрещено, бери только от сервера?

не вижу ничего необычного в использовании "если..., то"

мое предположение - роль выдачи и подсчета лицензий до wsisapi.dll доходит только в случае, если не было обнаружено никаких других способов, т.е. он последний в списке алгоритма поиска лицензий

P.S.
глянь, как осуществляется подсчет лицензий Менеджером лицензий 1С 8.5, который заменяет софтовую часть защиты от аладдина начиная с 8.5.4 - там 1с-овцы с похожими "если, то" разгулялись - порядок подсчета лицензий "На компьютер" или "На сеанс" может зависеть от типа лицензии (программная или аппаратная), способа подключения (RDP или нет), расположения самого менеджера лицензий и пр.