我正在使用 Python/wxPython 构建一个集中式桌面应用程序。其中一项要求是用户身份验证,我正在尝试使用 LDAP 来实现(尽管这不是强制性的)。

该系统的用户将是制定预算的机械和电气工程师,最大的问题将是工业间谍活动。这是一个常见的问题,泄漏通常是通过非正式的方式从底层发生的,这可能会带来问题。该系统的设置方式使得每个用户都可以访问所有且仅其需要的信息,因此除了最高层的人之外没有人拥有整个项目的货币信息。

问题是,对于我能想到的实现身份验证系统的每一种方法,Python 的开放性让我想到至少一种绕过/从系统获取合理信息的方法,因为“编译”使用 py2exe 这是我能在 Windows 上最接近地混淆代码的方法。

我并不是真的想 隐藏 代码,而是使身份验证例程本身安全,使其访问代码并不意味着能够访问应用程序。我想添加的一件事是对访问例程进行某种代码签名,以便用户可以确定他没有运行修改后的客户端应用程序。

我认为避免这种情况的方法之一是制作 C 用于身份验证的模块,但我宁愿不必这样做。

当然,这个问题现在正在发生变化,而不仅仅是“有人能给我指明如何构建在 Python 上运行的安全身份验证系统的正确方向吗?这样的东西已经存在了吗?”,但是“如何强化脚本(Python)以防止错误修改?”

有帮助吗?

解决方案

如何恶意用户是谁?真。

究竟如何恶意?

如果你的用户是邪恶的反社会并不能以桌面解决方案被信任,然后点击不建立一个桌面解决方案。建一个网站。

如果您的用户是普通用户,他们会从色情网站上安装病毒,恶意软件和键盘记录器,他们试图(一)学习Python(二)学习之前,你的安全工作及(c)如何使一个螺丝环境了在打破它真诚的努力。

如果你确实有台式机的安全问题(即,公共安全,军事等),然后重新考虑使用桌面。

否则,放松,做正确的事情,而不必担心“脚本”。

因为人是懒惰的,并允许SQL注入

C ++程序更易于破解。

其他提示

可能:

  1. 用户将其凭据输入桌面客户端。
  2. 客户端对服务器说:“嗨,我的名字是用户名,我的密码是密码”。
  3. 服务器检查这些。
  4. 服务器对客户端说:“嗨,用户名。这是您的秘密令牌:……”
  5. 随后,客户端使用秘密令牌和用户名来“签署”与服务器的通信。
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top