Как реализовать управление лицензиями для установки веб-приложений на месте (желательно кроссплатформенных)?[закрыто]

StackOverflow https://stackoverflow.com/questions/51338

  •  09-06-2019
  •  | 
  •  

Вопрос

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

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

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

  • «достаточно безопасный», а не «военный уровень»
  • очень ненавязчиво
  • запретить владельцу лицензии запускать систему на нескольких заводах, если он лицензировал только один
  • сделать количество учетных записей пользователей и емкость данных достаточно защищенными от несанкционированного доступа и легко повышать/понижать версию.
  • работать без подключения к Интернету (основным моментом при выборе решения на месте будет наличие полностью автономной системы), хотя это может быть приемлемо, если во время установки должно быть временное соединение

Для некоторых сценариев на месте потребуется какая-то конкретная ОС, обычно какая-то версия Windows Server, но различные дистрибутивы Linux также становятся все более популярными, особенно в государственном секторе.

С точки зрения пользователя, я вполне доволен управлением лицензиями в FogBugz, кажется, Джоэл Спольски доволен им с точки зрения поставщика, и оно кроссплатформенное, поэтому оно станет отличным примером того, что я стремлюсь.

Это было полезно?

Решение

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

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

Другие советы

Я видел одну компанию, которая развертывала свою локальную веб-систему, используя предварительно созданный образ виртуальной машины Linux.Клиенты запускают его под управлением VMWare, и вам не нужно беспокоиться о том, какая ОС установлена ​​на клиентских системах.Кроме того, они не предоставляют логины для реальной системы Linux, на которой работает веб-сервер, поэтому конечные пользователи не могут фактически войти и что-либо изменить.

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

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

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

Во-вторых, можно использовать веб-сервис, чтобы узнать текущий объем данных и то, за что заплатил клиент.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top