apache shiro框架介绍

  官网:shiro.apache.org

 Apache Shiro™是一个功能强大且易于使用的Java安全框架,可执行身份验证,授权,加密和会话管理。借助Shiro易于理解的API,您可以快速轻松地保护任何应用程序 - 从最小的移动应用程序到最大的Web和企业应用程序。

 

 以下是你可以用 Apache Shiro所做的事情: 

验证用户 

对用户执行访问控制,如:判断用户是否拥有角色admin。判断用户是否拥有访问的权限 

在任何环境下使用 Session API。例如CS程序。

可以使用多个用户数据源。例如一个是oracle用户库,另外一个是mysql用户库。

单点登录(SSO)功能。

 “Remember Me”服务 ,类似购物车的功能,shiro官方建议开启。

  • 下载文件:

  • shiro框架的核心功能:认证,授权,会话管理,加密
  • Authentication:身份验证,简称“登录”。
  •  Authorization:授权,给用户分配角色或者权限资源
  • Session Management:用户session管理器,可以让CS程序也使用session来控制权限
  • Cryptography:把JDK中复杂的密码加密方式进行封装。

 

 

 

  • shiro认证流程:

Application Code:应用程序代码,由开发人员开发

Subject:框架提供的接口,代表当前用户对象

SecurityManager:框架提供的接口,代表安全管理器对象

Realm:可以开发人员编写,框架也提供一些,类似于DAO,用于访问权限数据

 

1.Subject(org.apache.shiro.subject.Subject): 简称用户

2.SecurityManager(org.apache.shiro.mgt.SecurityManager) SecurityManager是shiro的核心,协调shiro的各个组件

3.Authenticator(org.apache.shiro.authc.Authenticator): 登录控制

        Authentication Strategy (org.apache.shiro.authc.pam.AuthenticationStrategy) 如果存在多个realm,则接口      AuthenticationStrategy会确定什么样算是登录成功(例如,如果一个Realm成功,而其他的均失败,是否登录成功?)。

4.Authorizer(org.apache.shiro.authz.Authorizer) : 决定subject能拥有什么样角色或者权限。

5.SessionManager(org.apache.shiro.session.SessionManager) : 创建和管理用户session。通过设置这个管理器,shiro可以在任何环境下使用session。

6.CacheManager(org.apahce.shiro.cache.CacheManager) : 缓存管理器,可以减少不必要的后台访问。提高应用效率,增加用户体验。

7.Cryptography(org.apache.shiro.crypto.*) : Shiro的api大幅度简化java api中繁琐的密码加密。

8.Realms(org.apache.shiro.realm.Realm) : 程序与安全数据的桥梁,访问权限数据

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值