Servlet和TLS

问题描述:

我正在开发一个简单的使用Java EE Servlets的Web服务。Servlet和TLS

我的客户是一个简单的java应用程序(没有浏览器),所以我需要使用TLS(或SSL v3)来保护我的通信。关于应用程序服务器,我正在使用Glassfish v3。例如,我需要将HTTP POST请求中的一些数据从客户端传输到服务器,然后转换为安全连接。 我可以使用一些外部库,服务器配置或教程吗?

在服务器端,您必须以某种方式通过HTTPS公开您的servlet。如果您使用,请查看SSL Configuration HOW-TO。如果您有前面的Apache Web服务器,请参阅:Apache SSL/TLS Encryption

在客户端支持内置于JDK,只需拨打任何https://...地址使用URLConnection。但请记住,您的服务器使用的证书必须是可信的 - 可以由某个权威机构确认或在客户端手动添加。默认情况下自签名证书不会被接受。

+0

嗨,谢谢你的回答。我不明白“通过HTTPS公开servlet”的含义。有一些注释要使用?我正在使用Glassfish 3.1。 – CeccoCQ 2012-07-08 08:25:31

+0

@Cecco:对于Glassfish(对不起,我错过了)请查看:https://blogs.oracle.com/theaquarium/entry/using_ssl_in_glassfish和http://javadude.wordpress.com/2010/04/06/getting-开始与 - 与GlassFish v3的和SSL /。不,SSL只是一个配置问题,servlet不支持它。您的servlet/web容器需要支持它。 – 2012-07-08 08:28:35

+0

好的谢谢。我已经通过asadmin命令了解了SSL配置,以允许浏览器保护连接。因此,如果我想“保护”我的POST数据,我应该在服务器(servlet)和客户端(java应用程序)端手动实现密码机制? – CeccoCQ 2012-07-08 08:32:56