В чем разница между программной и аппаратной лицензией 1С при работе с файловой базой через веб-клиент?

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

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

Для начала давайте определим контекст. Нас интересует ситуация, когда информационная база 1С является файловой (т.е. хранится в одном или нескольких файлах на диске, обычно .1CD), и доступ к ней осуществляется через веб-сервер (например, IIS или Apache), на котором опубликован модуль расширения "1С:Предприятия". Пользователи при этом могут использовать два основных типа клиентов:

  1. Веб-клиент: Работа напрямую через любой современный веб-браузер (Chrome, Firefox, Edge и т.д.).
  2. Тонкий клиент: Специальное приложение "1С:Предприятие", устанавливаемое на компьютер пользователя, которое подключается к базе также через веб-сервер по HTTP/HTTPS протоколу.

Теперь рассмотрим, как происходит подсчет и использование лицензий в данной архитектуре.

Основные принципы подсчета лицензий в файловом варианте через веб-сервер

Критически важно понимать, что в файловом варианте информационной базы, опубликованной на веб-сервере,

подсчетом лицензий занимается модуль расширения веб-сервера. Это ключевое отличие от клиент-серверного варианта, где подсчет осуществляет сервер "1С:Предприятия".

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

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

Различия между веб-клиентом и тонким клиентом в контексте лицензирования

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

Веб-клиент (работа через браузер)

Когда пользователи работают через веб-клиент (браузер), механизм получения лицензий довольно прост и однозначен:

  1. Веб-клиент всегда использует только клиентские лицензии, установленные на сервере, где размещен модуль расширения веб-сервера.
  2. Он не может использовать локальные лицензии, установленные на клиентском компьютере пользователя.
  3. Он не может использовать сетевые лицензии, доступные напрямую клиенту через HASP License Manager.

Таким образом, для веб-клиента весь процесс лицензирования полностью делегируется веб-серверу, и лицензии должны быть доступны именно на нем или через него.

Тонкий клиент

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

  1. Локальный ключ: Лицензия (аппаратная или программная), активированная непосредственно на компьютере, где запущен тонкий клиент.
  2. Многопользовательский ключ, доступный по сети через HASP License Manager: Если на компьютере пользователя установлен драйвер HASP и есть сетевой доступ к серверу с HASP License Manager, тонкий клиент может получить лицензию из этой общей "пулы" по сети.
  3. Модуль расширения веб-сервера: Если локальные или сетевые лицензии не найдены или не применимы, тонкий клиент запросит лицензию у веб-сервера.

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

Разница между программными и аппаратными лицензиями

Итак, вернемся к исходному вопросу: есть ли разница между программной и аппаратной лицензией в нашей архитектуре?

На функциональном уровне для работы с файловой базой через веб-сервер принципиальной разницы между аппаратными (USB-ключи HASP) и программными лицензиями нет. И те, и другие могут использоваться для одновременной работы пользователей как в локальной сети, так и через веб-клиенты или тонкие клиенты. Обеспечивают они одинаковый набор функциональности и прав.

Однако существуют эксплуатационные и административные различия:

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

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

Если клиентские лицензии (любого типа – аппаратные или программные) активированы на веб-сервере, где размещена файловая база, то, как мы уже говорили, подсчет лицензий осуществляется на каждый запуск/сеанс, независимо от типа клиента (тонкий или веб-клиент) и вида лицензии (аппаратная или программная).

Размещение и приоритет лицензий

Давайте разберем, где могут располагаться лицензии и каков порядок их поиска:

  1. Многопользовательские лицензии могут размещаться на веб-сервере (в нашем случае) или на терминальном сервере, если пользователи работают в терминальном режиме.
  2. Однопользовательские лицензии могут располагаться на клиентских компьютерах (для тонкого клиента), на веб-сервере или терминальном сервере.

Порядок поиска лицензии клиентом:

Когда клиентское приложение 1С запускается, оно следует определенному алгоритму для получения лицензии:

  1. Клиент сначала пытается получить ту лицензию, которая была использована при предыдущем успешном запуске.
  2. Затем клиент пытается получить лицензию самостоятельно. Для тонкого клиента это означает поиск локальной лицензии или сетевой лицензии через HASP License Manager (порт 475) на доступных сетевых ресурсах.
  3. Только если клиент не смог найти лицензию самостоятельно, он запрашивает ее у веб-сервера (для файловой базы).

Важный аспект, который обсуждался на форуме: если на стороне сервера (веб-сервера) и на стороне клиента есть доступные лицензии, то возможны разные сценарии. Некоторые пользователи отмечают, что сервер может сначала выгребать свои свободные лицензии, пока они не закончатся, и только после этого клиенты будут использовать свои локальные. Другие утверждают, что тонкий клиент при наличии локальной лицензии использует именно ее. Официальная документация (сообщение 15) указывает, что клиент сначала пытается найти лицензию сам, и лишь затем обращается к веб-серверу.

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

Веб-клиент, в отличие от тонкого, не может использовать локальные или доступные по сети клиентские лицензии. Он полагается исключительно на лицензии, предоставляемые веб-сервером.

Особенности многопользовательских лицензий

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

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

Сервер лицензирования 1С

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

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

Практические рекомендации и сценарии использования

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

Сценарий 1: Жесткий HASP-ключ на 5 лицензий, раздача по сети

Предположим, у нас есть аппаратный ключ HASP на 5 клиентских лицензий, который установлен на одном из компьютеров в сети (или на веб-сервере), и настроен HASP License Manager для их раздачи. Веб-сервер также настроен на использование этих лицензий.

В этом случае, если пользователи подключаются веб-клиентом (через браузер), веб-сервер будет использовать этот HASP-ключ для выдачи лицензий. Будет запущено столько сеансов 1С, сколько доступно лицензий (т.е. 5 сеансов одновременно). Каждое новое окно или вкладка браузера, открывающая сеанс 1С, будет занимать одну лицензию.

Если пользователи подключаются тонким клиентом и имеют прямой сетевой доступ к HASP License Manager, они могут получить лицензию напрямую. В этом случае один пользователь с одной такой лицензией может открыть множество баз или окон 1С на своем ПК, используя только одну лицензию. Однако, если тонкий клиент не может найти лицензию напрямую, он обратится к веб-серверу, и тогда подсчет будет идти по сеансам, как для веб-клиента.

Сценарий 2: Программные лицензии на 5 пользователей, активированные на конкретных ПК

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

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

Сценарий 3: Многопользовательская программная лицензия на 5 пользователей, установленная на веб-сервере

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

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

Сценарий 4: Однопользовательская лицензия, установленная на клиенте (тонкий клиент)

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

  1. Тонкий клиент попытается использовать свою локальную лицензию.
  2. Если это удается, пользователь сможет запустить любое количество экземпляров 1С на этом ПК, используя всего одну лицензию.

Однако, если этот же пользователь пытается подключиться веб-клиентом (браузером), его локальная лицензия не будет задействована. Веб-клиент обратится к веб-серверу за лицензией, и подсчет будет идти по сеансам.

Итоги и выводы

Итак, давайте подведем итоги нашего анализа:

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

    всегда получает лицензии только от веб-сервера и не может использовать локальные или сетевые лицензии, доступные напрямую клиентскому ПК.
  4. Тонкий клиент

    более гибок: он может использовать локальные лицензии (программные или аппаратные) или сетевые HASP-лицензии, доступные ему напрямую. В этом случае одна лицензия позволяет запустить любое количество сеансов на одном ПК. Если такие лицензии не найдены, тонкий клиент обращается к веб-серверу и подпадает под правило "один сеанс — одна лицензия".
  5. Функциональной разницы между программными и аппаратными лицензиями в данном сценарии нет, но есть различия в их администрировании и "мобильности".
  6. Приоритет поиска лицензий: клиент сначала ищет свою (локальную/сетевую), затем обращается к серверу. Однако для файловых баз возможно, что веб-сервер будет активно раздавать свои лицензии, если клиенты не имеют прямой доступ к своим.

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

← На главную