官网:https://projects.spring.io/spring-security/java
源代码: https://github.com/spring-projects/spring-security/git
Spring Security 是强大的,且容易定制的,基于Spring开发的实现认证登陆与资源受权的应用安全框架。github
SpringSecurity 的核心功能:web
目前在java web应用安全框架中,与Spring Security造成直接竞争的就是shiro,两者在核心功能上几乎差很少,但从使用的角度各有优缺点。笔者认为:没有最好的,只有最合适的。spring
从使用状况上看,两者都在逐步提升使用量。shiro的使用量一直高于spring security. apache
一般来讲,shiro入门更加容易,使用起来也很是简单,这也是形成shiro的使用量一直高于Spring Security的主要缘由。可是从笔者的角度来看,两者其实都简单,我说说个人理由:安全
也就是说,若是有人能帮你把Spring Security最重要的那20%摘出来,两者的入门门槛、复杂度实际上是差不太多的。springboot
Spring Security依托于Spring庞大的社区支持,这点自没必要多说。shiro属于apache社区,由于它的普遍使用,文档也很是的全面。两者从社区支持来看,几乎不相上下。网络
可是从社区发展的角度看,Spring Security明显更占优点,随着Spring Cloud、Spring Boot、Spring Social的长足进步,这种优点会愈来愈大。由于Spring Security毕竟是Spring的亲儿子,Spring Security将来在于Spring系列框架集成的时候必定会有更好的融合性,前瞻性、兼容性!这也是为何咱们要学Spring Security的主要缘由!session
Spring Security由于它的复杂,因此从功能的丰富性的角度更胜一筹。其中比较典型的如:
若是你只是想实现一个简单的web应用,shiro更加的轻量级,学习成本也更低。若是您正在开发一个分布式的、微服务的、或者与Spring Cloud系列框架深度集成的项目,笔者仍是建议您使用Spring Security。