tomcat 的 SSL 配置

本文介绍了在项目中配置tomcat以支持HTTPS的方法。首先,需要获取SSL证书文件,然后在tomcat的server.xml中配置keystoreFile、keystorePass等属性。接着,在web.xml中设置需要HTTPS保护的URL。最后,通过访问https://localhost:8443进行测试,确认HTTPS配置成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在做项目的过程中遇到这样一个需求:项目中的部分请求需要用到HTTPS。由于我之前没有接触过HTTPS,所以先对HTTPS进行了一番了解。后来发现,配置tomcat的SSL其实很简单,只要按照下面的步骤来进行操作就可以了。

  • 获得一个SSL证书文件
  • 找到tomcat的server.xml文件,进行如下的配置:
 <Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
    disableUploadTimeout="true" enableLookups="false" maxThreads="25"
    port="8443" keystoreFile="/test.jks" keystorePass="test2016"
    protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https" sslEnabledProtocols = "TLSv1,TLSv1.1,TLSv1.2"
               ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_3DES_EDE_CBC_SHA,TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" />

keystoreFile:证书存放的路径。

keystorePass:如果使用了一个与Tomcat预期不同的keystore(和证书)密码,则加入该属性。

clientAuth:如果想要Tomcat为了使用这个socket而要求所有SSL客户出示一个客户证书,置该值为true。

protocol:设定http协议。

sslEnabledProtocols :socket使用的加密/解密协议。

ciphers:此socket允许使用的被逗号分隔的密码列表。缺省情况下,可以使用任何可用的密码。

  • 在项目的web.xml文件中进行如下配置:
<security-constraint>
        <web-resource-collection>
            <web-resource-name>securedapp</web-resource-name>
            <url-pattern>/test/*</url-pattern>
        </web-resource-collection>
        <user-data-constraint>
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>
    </security-constraint>

如果你像我一样,只需要部分请求使用HTTPS,那么,中间配置的URL为需要使用HTTPS的URL。如果URL 映射设为 /* ,那么整个应用都是需要用HTTPS进行访问的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值