Spring Security使用X509实现认证

在Spring Security的API文档中有一页专门介绍 集成X509进行认证的(http://docs.spring.io/spring-security/site/docs/3.0.x/reference/x509.html), 但是很不详细.

在实现认证之前先来说下X509,

X509是一种国际标准(具体为ITU-T X509),是一种通用的证书格式, 常用的文件后缀如 .p12, .pfx. (依据不同的CA厂商提供的有所区别)

一些概念,如 DN, 加密算法(alg), 证书有效期(validity)也是需要先了解清楚

而实际上X509是很多安全传输与认证的基础, 最常见的是SSL (https访问) 就是一具体实现

集成X509后的Spring Security会实现双向认证(HTTPS是单向认证, 即只有浏览器对服务器的, 而没有服务器对浏览器的).

Spring Security在整个过程中,其实只是使用了DN的属性值来获取用户名,然后去认证这个用户名是合法的即可(没有密码的验证, 因为双向证书已经是可信的).

— 意味着没有Spring Security X509也能工作

 

即整个集成大部的工作是在客户端与服务器中配置, 包括先获取证书, 安装证书(客户端), 将客户端证书导入到服务器配置中等.

具体的步骤下面这篇文章讲的很清楚, 请移步查阅

http://www.68idc.cn/help/buildlang/java/2014021668868.html (Spring Security 学习之X.509认证)

 

 

更多参考

Tomcat生成https+ssl双向证书认证
https://jingyan.baidu.com/article/0f5fb099f1f9566d8334ea38.html

 

若需要帮助请访问 https://gitee.com/mkk

2nd-Lock – 一把「微信 + 二次认证」锁 [产品推荐]

一个使用 微信 作为二次认证的小产品.

产品目的: 提高 网站+APP 安全

产品介绍: 通过结合用户使用的 微信 与开发者网站 二次认证 功能,我们能完美契合二者的优点,在登录的同时,让你的用户用微信端扫码进行二次认证加固安全,并让你的所有用户原因转化为你的公众号关注者

 

http://www.idssso.net/

 

请大家评价, 反馈,….

Java HeartBeat 1.0.0 发布

在经历近一年的不知所措后(2016-08-15到2017-07-09), 更新了 HeartBeat 1.0.0 版本,Java HeartBeat是心跳检测应用服务器(如Tomcat,Jetty)的JAVA WEB应用程序。

1.0.0版本主要是功能完善与修复BUG, 主要内容如下:

1).添加更多监控时间,如2分钟,3分钟,5分钟,10分钟,半小时,1小时
2).Fix 设置多次失败后在提醒时的错误,以及恢复后的提醒
3).增加设置定期清理一段时间(默认为30天)前的监控日志记录,防止frequency_monitor_log表太大导致查询慢
4).修复未登录时不能查看到私有实例的日志
5).Fixed Issue #26 关于邮件发送次数的问题

 

HeartBeat 1.0.0版本访问地址: http://git.oschina.net/mkk/HeartBeat/tree/V-1.0.0/

http://git.oschina.net/mkk/HeartBeat