Shiro介绍 shiro(java安全框架)

shiro(java安全框架)权限框架

框架介绍

Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任 
何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。

Shrio的主要功能:

  • Authentication:用户认证(登录)密码匹配就是使用的Shiro
  • Authorization:权限控制,当你点击按钮的时候,会判断你的权限
  • Session Management:会话管理
  • Cryptography:数据加密   对密码的盐值加密
  • Web Support:支持web的API
  • Caching:缓存,提供缓存,运行速度更块
  • Concurrency:支持多线程应用程序
  • Testing:测试的支持
  • “Run As”:假设一个用户为另一个用户的身份
  • “Remember Me”:在Session中保存用户身份
  • Shiro介绍 shiro(java安全框架)_第1张图片

基本原理

Shiro的基本架构:

Shiro有三个核心的概念:Subject、SecurityManager和Realms。

  • Subject:Subject实质上是一个当前执行用户的特定的安全“视图”,开发者所写的应用代码就通过Subject与Shiro框架进行交互。所有Subject实例都必须绑定到一个SecurityManager上,当使用一个Subject实例时,Subject实例会和SecurityManager进行交互,完成相应操作。

  • SecurityManager:SecurityManager是Shiro的核心部分,作为一种“保护伞”对象来协调内部安全组件共同构成一个对象图。开发人员并不直接操作SecurityManager,而是通过Subject来操作SecurityManager来完成各种安全相关操作。

  • Realms:Realms担当Shiro和应用程序的安全数据之间的“桥梁”或“连接器”。从本质来讲,Realm是一个特定安全的DAO,Realm中封装了数据操作的模块和用户自定义的认证匹配过程。SecurityManager可能配置多个Realms,但至少要有一个。

Shiro介绍 shiro(java安全框架)_第2张图片

 

 

 

 

 

 

 

你可能感兴趣的:(Shiro介绍 shiro(java安全框架))