这几天一直在学习spring security的相关知识.逛各大论坛,看相关api与教学视频,获益良多!

  1. 简介
    Spring Security是为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了完整的安全性解决方案,可以在Web请求级别和方法调用级别处理身份认证和授权充分利用了Spring IOC,DI(控制反转Inversion of Control ,DI:Dependency Injection 依赖注入)和AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功能。
    2.安全框架Shiro和Spring Security比较
    Shiro
    首先Shiro较之 Spring Security,Shiro在保持强大功能的同时,还在简单性和灵活性方面拥有巨大优势。
    Shiro是一个强大而灵活的开源安全框架,能够非常清晰的处理认证、授权、管理会话以及密码加密。如下是它所具有的特点:

              易于理解的 Java Security API;
    简单的身份认证(登录),支持多种数据源(LDAP,JDBC,Kerberos,ActiveDirectory 等);
    对角色的简单的签权(访问控制),支持细粒度的签权;
    支持一级缓存,以提升应用程序的性能;
    内置的基于 POJO 企业会话管理,适用于 Web 以及非 Web 的环境;
    异构客户端会话访问;
    非常简单的加密 API;
    不跟任何的框架或者容器捆绑,可以独立运行。 Spring Security
    OAuth在"客户端"与"服务提供商"之间,设置了一个授权层(authorization layer)。"客户端"不能直接登录"服务提供商",只能登录授权层,以此将用户与客户端区分开来。"客户端"登录授权层所用的令牌(token),与用户的密码不同。用户可以在登录的时候,指定授权层令牌的权限范围和有效期。
    "客户端"登录授权层以后,"服务提供商"根据令牌的权限范围和有效期,向"客户端"开放用户储存的资料。
    OpenID 系统的第一部分是身份验证,即如何通过 URI 来认证用户身份。目前的网站都是依靠用户名和密码来登录认证,这就意味着大家在每个网站都需要注册用户名和密码,即便你使用的是同样的密码。如果使用 OpenID ,你的网站地址(URI)就是你的用户名,而你的密码安全的存储在一个 OpenID 服务网站上(你可以自己建立一个 OpenID 服务网站,也可以选择一个可信任的 OpenID 服务网站来完成注册)。与OpenID同属性的身份识别服务商还有ⅥeID,ClaimID,CardSpace,Rapleaf,Trufina ID Card等,其中ⅥeID通用账户的应用最为广泛。 推荐博客中http://www.spring4all.com/common/user/1984这位同僚写的spring security相当值得看..

最新文章

  1. Linux下安装性能测试负载机LG
  2. redis 主从同步
  3. Java 第22章 mySQy
  4. Kafka学习笔记(一):概念介绍
  5. SQL2008的数据更新跟踪测试 (监控数据表变化,可用于同步)
  6. 在Tomcat下部属项目三种方式:
  7. BZOJ_1026_[SCOI2009]_windy数_(数位dp)
  8. 【转】cocos2d-x学习笔记03:绘制基本图元
  9. MLC固态硬盘,与入量是3000次P/E
  10. what does Html.HiddenFor () for ?
  11. 单词计数,杭电0j-2072
  12. Android初级教程图片信息
  13. BZOJ_1801_[Ahoi2009]chess 中国象棋_DP
  14. jquery checkbox勾选/取消勾选只能操作一次的诡异问题
  15. 【洛谷】【搜索(dfs)】P3956 棋盘
  16. [Functional Programming] From simple implementation to Currying to Partial Application
  17. 2017-3-30/HTTP协议2
  18. PHP配置方法
  19. 汇编 循环位移指令 ROL, 循环位移指令 ROR
  20. TextView 设置部分文字颜色及点击事件SpannableString

热门文章

  1. jQuery HTML- 添加元素
  2. css 多行省略号兼容移动端
  3. 数据结构---Java---HashMap---JDK1.7
  4. docker 运行jenkins及vue项目与springboot项目(一.安装docker)
  5. Qt的信号和槽机制
  6. VS2013 MFC基于对话框编程
  7. 使用html5进行视频播放
  8. 如何做LR自动关联和手动关联?
  9. [jzoj5840]Miner 题解(欧拉路)
  10. 【Tomcat】1.Tomcat在Windows系统的安装和使用