java - 安全 - 阻止人们未经授权使用我的程序

标签 java security user-management

我正在开发一个程序,我想与某些人共享,但是如果我改变了对这些人的想法,我希望能够“撤销”他们对该程序的访问权限。

理想情况下,这将基于每个用户,而不是仅仅阻止程序的所有实例。与用户帐户类似,但目前我实际上无法访问可以对这些帐户进行身份验证的服务器,因此可能需要更简单的方法。

我是不是太野心勃勃了?

(如果相关,我正在使用 Java。)

<小时/>

抱歉,我错过了一些相关细节:

该应用程序几乎完全在线使用。我不希望用户群远远超过 100 个(这是雄心勃勃的),如果有超过 100 个用户,我会花很多钱购买某种身份验证服务器,但是目前我拥有的最接近的东西是我可以在上面存储文件的基本 FTP 服务器。

<小时/>

感谢您的所有答案,遗憾的是只让我选择一个最佳答案。 :) 谢谢你们。

最佳答案

没有办法 100% 保证做到这一点。除了硬件解决方案(也可以解决)之外,软件是可操作的。

作为一个非常简单的示例,使用一个 Windows 程序(Java 更容易)检查日期以查看它是否可以运行(想想试用软件)。即使不向后设置时钟,您也可以击败它 - 弄清楚它正在调用什么来检查日期,然后提供一个备用 DLL 来更改该调用以始终返回有效的日期。

如果您使用客户端必须连接到的服务器,那么效果会更好,因为您可以在服务器端进行所有有效性检查。但是您不能简单地返回真/假,因为您可以在网络级别更改事物以将假更改为真。要解决这个问题,您需要使用 SSL 来加密网络流量。

“更好”(超出我的想象)是让服务器完成程序的工作,然后让程序显示结果。然后,对于无权访问的客户端,服务器将拒绝向他们返回结果。

关于java - 安全 - 阻止人们未经授权使用我的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1908980/

相关文章:

java - HashMap 和 TreeMap 有什么区别?

java - 如何判断两个字符之间是否有空格?

java - Jtable 中的删除按钮

wordpress - 更改 wp-admin 文件夹

java - 以编程方式设置 web.xml 配置

php - 使用 Symfony 将用户数据安全地存储在数据库中

javascript - 保护 AJAX 调用的 PHP 端点

c# - 如何在系统中设计两种类型的账户

java - 为多个用户永久设置环境变量

php - 交响乐 4 : Logout active user by admin