Как предотвратить кражу офлайн-приложения на базе Angular + Express? - PullRequest
1 голос
/ 16 июня 2020

В прошлом году я разработал простое приложение на основе Angular - Express -SQLite для местного склада (логистического центра), которое использовалось для отслеживания ежедневных входящих и исходящих грузовиков с такой информацией, как их вес, происхождение и т. Д. c. и я развернул приложение на автономном компьютере. Все шло хорошо, пока я не узнал, что компьютерный оператор Склада перепродал приложение другим Складам за приличную сумму.

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

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

Ответы [ 2 ]

1 голос
/ 16 июня 2020

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

При инициализации приложения зашифрованная запись в базе данных могла быть установить имя компьютера, прочитав переменную среды с помощью express / node.

process.env.COMPUTERNAME

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

0 голосов
/ 16 июня 2020

Как уже сказал Иоахим в своем комментарии, если приложение имеет доступ rnet, вы можете проверить лицензионный ключ или что-то подобное на сервере.

Возможно, вам поможет что-то вроде PKG, которое компилирует ваши исходники в один исполняемый файл. PKG на npmjs

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