----------------------------------------------------------------------------------------------
转自:http://www.diybl.com/course/webjsh/osgl/20071118/86487.html
----------------------------------------------------------------------------------------------
我使用的版本:
|
Tomcat 5.5 和 6.0 |
JDK 1.5 |
配置步骤如下:
1. 生成server key:
keytool -genkey -alias tomcat -keyalg RSA -validity 365 -keypass changeit -storepass changeit -keystore server.keystore
随后会出现提示输入组织、地区等信息,按情况输入即可。
2. 将证书导入JDK的证书信任库中:
keytool -export -trustcacerts -alias tomcat -file server.cer -keystore server.keystore -storepass changeit
keytool -import -trustcacerts -alias tomcat -file server.cer -keystore %JAVA_HOME%/jre/lib/security/cacerts -storepass changeit
注1) keypass、storepass 似乎都只能用changeit,试过用其他密码,结果在启动tomcat时出现如下异常:
java.io.IOException: Cannot recover key
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.init。
注2) 由此产生的证书,默认是属于非信任网站之列的。
3. copy server.keystore 、server.cer 、cacerts 文件到tomcat根目录;
4. 配置tomcat :
修改%TOMCAT_HOME%\conf\server.xml, 找到
<!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
<!-- <Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" /> -->
去掉注释,并在最后加上2个属性:
<!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="server.keystore"
keystorePass="changeit" />
注1) 如不要保留http访问,则可以将 <Connector port="8080" ... 那段注释掉。
注2) https默认端口为443,将端口配置改为443,则URL无需端口号,如 https://localhost/ (类似http的80端口)。
分享到:
相关推荐
6. **SSL握手过程**:在SSL双向认证中,握手过程比单向认证复杂,包括了服务器发送其证书,客户端验证服务器证书并发送自己的证书,服务器验证客户端证书等步骤。 7. **安全性提升**:双向认证能有效防止中间人攻击...
#### 三、统一认证配置实现 ##### 基础套件 - CAS Server 3.4.11 - Spring 3 - Hibernate 3 (可选) - DBCP (数据库连接池,可选) - SLF4J (LOG4J) ##### 概念解释 1. **通道安全性**:分为非SSL(HTTP)和SSL...
使用方法见:https://blog.csdn.net/upset_ming/article/details/89048916 1. 支持国密SSL单向认证和双向认证 2. 获取服务端的国密数字证书 3. 适用于Android 7.0(API 24)及以上
使用方法见:... 1. Android使用HTTPCLIENT访问国密SSL协议的HTTPS服务 2. 示例代码为单向认证,可支持双向认证 3. 获取服务端的国密数字证书 4. 适用于Android 7.0(API 24)及以上
接下来,我们将使用这个自定义的`SSLSocketFactory`来创建一个HttpClient实例,并配置它以接受任何证书: ```java import org.apache.http.conn.ssl.SSLSocketFactory; import org.apache....
为了让服务器支持HTTPS,你需要生成SSL证书,然后在Tomcat的`conf/server.xml`中配置`<Connector>`元素,设置`scheme="https"`,`port`为你想要的HTTPS端口,以及`keystoreFile`和`keystorePass`,分别指向SSL证书...
3. **编写WebSocket服务端**:创建一个继承自`javax.websocket.Endpoint`的类,覆盖其生命周期方法,如`onOpen`、`onClose`、`onMessage`等,处理客户端连接、关闭和消息接收。 4. **编写WebSocket客户端**:在...
9. **安全与认证**: JAX-WS可以通过SSL/TLS加密、WS-Security、WS-Trust等标准实现Web服务的安全性,确保数据传输的机密性和完整性。 10. **工具支持**: 开发者可以使用诸如Apache CXF、Metro等JAX-WS实现工具,...
开发者需要设置开发环境,包括安装Java SDK和Flex SDK,配置Tomcat服务器,并将BlazeDS库添加到项目中。接着,创建服务适配器以连接后端数据源,编写客户端Flex或AJAX代码以调用这些服务。最后,部署BlazeDS配置文件...
- **启动Axis服务器**:通常通过`wsdd2java`和`java2wsdd`工具进行配置,或使用Tomcat等应用服务器集成。 - **创建Web服务**:编写Java服务类,然后使用 Axis 的 wsdl2java 工具从Java类生成WSDL。 - **部署Web...
但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地...