官网对Spring Security的一个概括:
Spring Security 是一个功能强大且高度可定制的身份验证和访问控制框架。它是保护基于 Spring 的应用程序的事实上的标准。
Spring Security 是一个专注于为 Java 应用程序提供身份验证和授权的框架。与所有 Spring 项目一样,Spring Security 的真正强大之处在于它可以轻松扩展以满足自定义要求 特征 对身份验证和授权的全面且可扩展的支持 防止会话固定、点击劫持、跨站点请求伪造等攻击 Servlet API 集成 与 Spring Web MVC 的可选集成 多得多…
涉及技术栈:
SpringBoot+SpringSecurity+jwt+Vue(axios,vue-cli)
项目完整功能:
1.登录(根据所登录用户所具有的权限返回给前段Json数据,动态的展示菜单功能)
2.注销
3.动态拦截url请求,根据当前登录用户所具有的权限,进行权限认证(防止不具有权限的用户直接通过url请求功能)。4.用户管理模块(查询所有用户[分页加模糊查询]、新增用户、修改用户、删除用户、为用户分配角色)。
4.用户管理模块(查询所有用户[分页加模糊查询]、新增用户、修改用户、删除用户、为用户分配角色)
5.角色管理模块(查询所有角色[分页加模糊查询]、新增角色、修改角色、删除角色、为角色分配可访问的资源菜单)
6.菜单管理模块(查询所有菜单、新增菜单、修改菜单、删除菜单)
7.登录验证中增加额外数据(如ip地址,mac地址,验证码等)
8.其他(后期看能否添加定时任务,Aop等登录日志以及操作日志)
SpringSecurity与shiro的区别
1. Shiro比Spring更容易使用,实现和最重要的理解
2. Spring Security更加知名的唯一原因是因为品牌名称
3. "Spring"以简单而闻名,但讽刺的是很多人发现安装Spring Security很难
4.然而,Spring Security却有更好的社区支持
5.Apache Shiro在Spring Security处理密码学方面有一个额外的模块
6. Spring-security 对Spring结合较好,如果项目用的SpringMVC,使用起来很方便。但是如果项目中没有用到Spring,那就不要考虑它了
7.Shiro 功能强大、简单、灵活。是Apache下的项目比较可靠,且不跟任何的框架或者容器绑定,可以独立运行