Как справиться с аутентификацией пользователя и неправомерными изменениями в языках сценариев?

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

Вопрос

Я строю централизованное настольное приложение с помощью Python/wxpython. Одним из требований является аутентификация пользователя, которую я пытаюсь реализовать с помощью LDAP (хотя это не обязательно).

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

Проблема в том, что при каждом пути я могу думать, чтобы реализовать систему аутентификации, открытость Python заставляет меня думать, по крайней мере, один способ обхода/получения разумной информации из системы, потому что «компиляция» с py2exe это ближе всего, я могу получить запутывание кода в Windows.

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

Один из способов избежать этого - это сделать C Модуль для аутентификации, но я бы не должен был этого делать.

Конечно, этот вопрос сейчас меняется и не просто «может ли кто -нибудь указать мне правильное направление относительно того, как создать безопасную систему аутентификации, работающая на Python? (Python) против неправомерной модификации? "

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

Решение

Насколько вредны ваши пользователи? Действительно.

Насколько злонамеренно?

Если ваши пользователи являются злыми социопатами и нельзя доверять настольном решении, то тогда Не строить настольное решение. Анкет Создайте веб -сайт.

Если ваши пользователи являются обычными пользователями, они будут облагаться окружающей средой, установив вирусы, вредоносные программы и клавишеры с порно -сайтов, прежде чем они попытаются (а) изучить Python (b) Узнайте, как работает ваша безопасность, и (c) приложить искренние усилия в сломать это.

Если у вас действительно есть проблемы безопасности настольных компьютеров (т.е. общественная безопасность, военные и т. Д.), То переосмыслите, используя настольный компьютер.

В противном случае расслабьтесь, поступите правильно и не беспокойтесь о «сценариях».

Программы C ++ легче взломать, потому что люди ленивы и разрешают инъекцию SQL.

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

Возможно:

  1. Пользователь вводит свои учетные данные в настольный клиент.
  2. Клиент говорит на сервере: «Привет, имя пользователя, и мой пароль - пароль».
  3. Сервер проверяет это.
  4. Сервер говорит клиенту: «Привет, имя пользователя. Вот ваш секретный токен: ...»
  5. Впоследствии клиент использует секретный токен вместе с именем пользователя, чтобы «подписать» связь с сервером.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top