Java Shiro加密认证保证安全会话连接

Shiro是Apache开发的一款基于强大易用的Java安全框架的软件,可以处理身份验证、授权、企业会话管理和加密。Shiro拥有强大的功能,可以实现系统的权限管理,有效提高开发效率,从而降低开发成本。shiro的功能具体是什么?

Shiro功能如下图所示:

Java Shiro加密认证保证安全会话连接
Shiro主要功能是认证(Authentication)证明哪个用户登录;授权(Authorization)访问控制的过程,即确定用户的访问权限;会话管理(Session Management)即使在非Web或EJB应用程序中也可以管理用户特定的会话;密码学(Cryptography)使用加密算法保持数据安全性,同时易于使用。

明白了shiro的主要功能之后,才能在实例中更好地应用shiro,发挥shiro的功能。那么,shiro应用的基本架构是什么?

Java Shiro加密认证保证安全会话连接

subject:主体,可以是用户也可以是程序,主体要访问系统,系统需要对主体进行认证、授权。

securityManager:安全管理器,主体进行认证和授权都是通过securityManager进行。

authenticator:认证器,主体进行认证最终通过authenticator进行的。

authorizer:授权器,主体进行授权最终通过authorizer进行的。

sessionManager:web应用中一般是用web容器对session进行管理,shiro也提供一套session管理的方式。

SessionDao: 通过SessionDao管理session数据,针对个性化的session数据存储需要使用sessionDao。

cache Manager:缓存管理器,主要对session和授权数据进行缓存,比如将授权数据通过cacheManager进行缓存管理,和ehcache整合对缓存数据进行管理。

realm:域,领域,相当于数据源,通过realm存取认证、授权相关数据。

注意:在realm中存储授权和认证的逻辑。

cryptography:密码管理,提供了一套加密/解密的组件,方便开发。比如提供常用的散列、加/解密等功能。

由架构可以得知shiro的工作原理是什么,从而从本质上理解shiro是什么。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章