前言:
近期在进行shiro权限管理进行学习,网上找了些资料,看了开涛哥的系列学习,但是感觉过于“高冷”,所以记录这个系列学习,希望一起学习一起进步。
正文:
1、Apache Shiro简介:
Apache Shiro 是一个强大而灵活的开源安全框架,它干净利落地处理身份认证,授权,企业会话管理和加密。
Apache Shiro 的首要目标是易于使用和理解。安全有时候是很复杂的,甚至是痛苦的,但它没有必要这样。框架应
该尽可能掩盖复杂的地方,露出一个干净而直观的 API,来简化开发人员在使他们的应用程序安全上的努力。
以下是你可以用 Apache Shiro 所做的事情:
验证用户来核实他们的身份
对用户执行访问控制,如:
判断用户是否被分配了一个确定的安全角色
判断用户是否被允许做某事
在任何环境下使用 Session API,即使没有 Web 或 EJB 容器。
在身份验证,访问控制期间或在会话的生命周期,对事件作出反应。
聚集一个或多个用户安全数据的数据源,并作为一个单一的复合用户“视图”。
启用单点登录(SSO)功能。
为没有关联到登录的用户启用"Remember Me"服务
等等
2、Apache Shiro 特点
shiro应用的四大基石:
Authentication-身份验证:有时也简称为“登录”,这是一个证明用户是他们所说的他们是谁的行为。
Authorization-授权:访问控制的过程,也就是绝对“谁”去访问“什么”。
Session Management-会话管理:管理用户特定的会话,即使在非 Web 或 EJB 应用程序。
Cryptography-加密:通过使用加密算法保持数据安全同时易于使用。
当然shiro也提供了额外的功能来支持和加强在不同环境下所关注的方面,尤其是以下这些:
Web Support:Shiro 的 web 支持的 API 能够轻松地帮助保护 Web 应用程序。
Caching:缓存是 Apache Shiro 中的第一层公民,来确保安全操作快速而又高效。
Concurrency:Apache Shiro 利用它的并发特性来支持多线程应用程序。
Testing:测试支持的存在来帮助你编写单元测试和集成测试,并确保你的能够如预期的一样安全。
"Run As":一个允许用户假设为另一个用户身份(如果允许)的功能,有时候在管理脚本很有用。
"Remember Me":在会话中记住用户的身份,所以他们只需要在强制时候登录。
网友评论