过去几周我一直在学习 Java,我想为我的脚本添加更好的安全性。基本上我想要完成的是让用户使用一些论坛凭据登录。登录后,他们可以访问一些在线托管的 java .classes,他们可以运行但不能下载。
我不是要代码或片段,只是要更好地了解如何实现这一点。IE。我需要的一些有用的 Java 文档的链接。
我一直在搜索 Stackoverflow,但几乎已经迷失/混淆了不同的主题。
感谢所有帮助。
谢谢你。
如果您只是在过去几周内这样做,那么甚至不要尝试完成此操作。建立一个真正安全的环境需要大量的经验。如果你真的想尝试,你应该看看网络服务。
正如 Karthik Ramachandran 在他对这个问题的回答中所说,您应该始终牢记:
首先使用 SSL 保护传输。如果您同时控制客户端和服务器,那么您可以要求 2-way SSL,这将确保只有受信任的客户端才能连接。
其次,您可以实现 WS 安全协议。Web 服务安全标准倾向于处理三件事:身份验证、数字签名和加密/解密(来自 Spring-WS 文档):
验证。这是确定委托人是否是他们自称的人的过程。在这种情况下,“主体”通常是指可以在您的应用程序中执行操作的用户、设备或其他一些系统。
数字签名。消息的数字签名是基于文档和签名者私钥的一条信息。它是通过使用散列函数和私有签名函数(使用签名者的私钥加密)创建的。
加密和解密。加密是将数据转换为没有适当密钥就无法读取的形式的过程。它主要用于将信息隐藏起来,不让任何人知道。解密是加密的逆过程;它是将加密数据转换回可读形式的过程。
这些功能中的每一个都有许多协议/标准,并且有许多 Java OSS 项目以合理、可用的方式实现各种安全协议/标准。
我会特别关注 Sun 的 XWSS 和 APACHE WSS4J。Spring WS 实现了这两个 API,它们也很好地描述了各种组件: http ://static.springsource.org/spring-ws/sites/2.0/reference/html/security.html