1.生成https认证证书
cmd进入jdk的bin目录,执行下面命令:
keytool -genkey -alias bdas.com -keypass 你的密码 -keyalg RSA -sigalg sha256withrsa -keysize 1024 -validity 36500 -keystore F:/bdas.com.jks -storepass 你的密码
文件生成在配置的目录下。
2.tomcat配置https
如果对外只提供一个端口例如:8080,需要将http协议配置注释掉,添加如下配置(将认证文件放置配置目录)
<Connector port="8080" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" connectionTimeout="2000" clientAuth="false" sslProtocol="TLS" keystoreFile="D:\Develop\tomcat\apache- tomcat-7.0.100 \ssl\bdas.com.jks" keystorePass="Adm163"/>
如果对外提供多个接口,配置如下:配置HTTP协议redirectPort和HTTPS协议端口一致
访问HTTP协议时,会自动重定向到HTTPS协议配置的8443端口
需要在web.xml配置如下内容
<!--配置网站支持https,/* 表示全部请求都走https, transport-guarantee 标签设置为 CONFIDENTIAL 以便使应用支持 SSL。
如果需要关闭 SSL ,将 CONFIDENTIAL 改为 NONE 即可-->
<security-constraint>
<web-resource-collection>
<web-resource-name>SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
3.SpringBoot配置HTTPS认证,添加如下配置,将认证文件放在根目录下
server.ssl.key-store=classpath:bdas.com.jks
server.ssl.key-store-password=Adm163
server.ssl.keyStoreType=jks