Как реализовать защиту от копирования в продукте сайта? - PullRequest
1 голос
/ 22 июня 2009

У моей компании есть продукт для веб-сайта (ASP.NET), который продается клиентам. Это означает, что мы не размещаем сайт. Они устанавливают его на свой сервер и запускают в интрасети.

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

  1. Он должен быть полностью программным (без ключей).
  2. Скрытие информации об использовании в реестре или какой-либо папке в c: \ (в основном вне виртуального каталога) не подходит для веб-сайта

Можете ли вы предложить какую-либо схему / метод?

Ответы [ 4 ]

3 голосов
/ 22 июня 2009

Одно из предложений - использовать какой-то запущенный веб-сервис, конечно, для этого вам нужен главный сервер. На этом сервере вы можете иметь данные некоторых ваших клиентских серверов (IP авторизованных серверов, идентификаторы ЦП и материнской платы и другие важные данные).

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

Конечно, я предполагаю, что эта сторона логики включена в DLL в приложении, а не в простом коде.

2 голосов
/ 22 июня 2009

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

Просто, легко сделать и работает относительно хорошо.

1 голос
/ 30 июня 2009

[заявление об отказе] Я продаю продукт, который рекомендую. [/ Заявление об отказе от ответственности]

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

  1. Аппаратная блокировка, поэтому ее можно использовать только на одном компьютере.
  2. Доменная блокировка, поэтому она привязана к определенному доменному имени.
  3. IP-блокировка для привязки к IP-адресу.
  4. Блокировка сервера лицензий для того, чтобы ваше приложение периодически регистрировалось с помощью централизованного веб-сервиса.

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

1 голос
/ 22 июня 2009

Что-то, что вы могли бы попробовать. Скомпилируйте двоичные файлы для каждого клиента, запутайте код, заблокируйте сайт для одного домена. Если это внутреннее приложение, доменом может быть что-то вроде «productname.clientname.internal». Приложение проверяет домен всех входящих запросов, отклоняет все, что не соответствует.

Как уже отмечал Джеффамафон: люди найдут способы обойти это, но этого достаточно, чтобы «замедлить» тех, кто не является сверхопределенным.

...