web配置https

Tomcat8 配置:

1.单向认证,就是传输的数据加密过了,但是不会校验客户端的来源

2.双向认证,如果客户端浏览器没有导入客户端证书,是访问不了web系统的,找不到地址

如果只是加密,我感觉单向就行了。

如果想要用系统的人没有证书就访问不了系统的话,就采用双向

单向配置:
第一步:为服务器生成证书

使用 jdk 的 keytool 为 Tomcat 生成证书,假定目标机器的域名是" localhost ", keystore 文件存放在" C:\tomcat.keystore ",口令为" password ",使用如下命令生成:

sh 复制代码
keytool -genkey -v -alias tomcat -keyalg RSA   -validity 3650  -keystore c:\tomcat.keystore -dname "CN=localhost,OU=cn,O=cn,L=cn,ST=cn,c=cn"
 -storepass password -keypass password 

保存证书到tomcat.cer

sh 复制代码
keytool -export -alias tomcat -keystore c:\tomcat.keystore -file c:\tomcat.cer -storepass password
第二步:配置Tomcat 服务器

打开Tomcat 根目录下的 /conf/server.xml ,找到如下配置段,修改如下:

xml 复制代码
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"  maxThreads="150" scheme="https" secure="true"  
clientAuth="false" sslProtocol="TLS"  keystoreFile="C:/tomcat.keystore" keystorePass="password" />
将默认http转换为https

应用程序的web.xml 可以加上这句话: 具体web系统 (也可是Tomcat下的conf/web.xml)

xml 复制代码
	<!-- Authorization setting for SSL --> 
	<login-config> 
		<auth-method>CLIENT-CERT</auth-method> 
		<realm-name>Client Cert Users-only Area</realm-name> 
	</login-config> 
	
	<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> 

将 URL 映射设为 /* ,这样你的整个应用都要求是 HTTPS 访问,而 transport-guarantee 标签设置为 CONFIDENTIAL 以便使应用支持 SSL。

如果你希望关闭 SSL ,只需要将 CONFIDENTIAL 改为 NONE 即可

参考博客:

http://blog.csdn.net/keketrtr/article/details/52869173
http://blog.csdn.net/zhangxing52077/article/details/72827770

相关推荐
五点六六六3 小时前
基于 AST 与 Proxy沙箱 的局部代码热验证
前端·设计模式·架构
发现一只大呆瓜5 小时前
SSO单点登录:从同域到跨域实战
前端·javascript·面试
发现一只大呆瓜5 小时前
告别登录中断:前端双 Token无感刷新
前端·javascript·面试
Cg136269159746 小时前
JS-对象-Dom案例
开发语言·前端·javascript
无限大66 小时前
《AI观,观AI》:善用AI赋能|让AI成为你深耕核心、推进重心的“最强助手”
前端·后端
烛阴7 小时前
Claude Code Skill 从入门到自定义完整教程(Windows 版)
前端·ai编程·claude
lxh01137 小时前
数据流的中位数
开发语言·前端·javascript
神仙别闹7 小时前
基于NodeJS+Vue+MySQL实现一个在线编程笔试平台
前端·vue.js·mysql
zadyd8 小时前
Workflow or ReAct ?
前端·react.js·前端框架
北寻北爱10 小时前
vue2和vue3使用less和scss
前端·less·scss