文章信息

梳理Shiro安全框架知识点

发布时间:『 2018-06-24 12:24』  文章类别:技术开发  阅读(1650) 评论(0)

    Apache Shiro是一个功能强大且灵活的开放源代码安全框架,可以清楚地处理认证,授权,企业会话管理和加密。

    Shiro不强制依赖于其他第三方框架,容器或应用程序服务器,架构清晰易用,能通过简单的配置即可与Spring框架集成。

ShiroFeatures.jpg


    Shiro的目标是Shiro开发团队称之为“应用安全的四大基石” -认证,授权,会话管理和加密:

    身份验证:有时被称为“登录”,这是证明用户的行为是他们说他们是谁。

    授权:访问控制的过程,即确定“谁”访问“什么”。

    会话管理:即使在非Web或EJB应用程序中,也可以管理用户特定的会话(Session)。

    加密技术:使用加密算法保证数据安全,同时易于使用,框架自带加密算法有:MD2,MD5,SHA-1,SHA-256,SHA-348,SHA-512。

    还有其他功能可以在不同的应用环境中支持和加强这些问题,特别是:

    Web支持:Shiro的Web支持API可帮助轻松保护Web应用程序。

    缓存:缓存是Apache Shiro API中的第一级公民,可确保安全操作保持快速高效。

    并发性:Apache Shiro支持具有并发功能的多线程应用程序。

    测试:存在测试支持来帮助您编写单元和集成测试,并确保您的代码按预期保证安全。

    “运行方式”:允许用户假设其他用户身份(如果允许)的功能,有时在管理方案中很有用。

    “记住我”:在会话中记住用户的身份,这样他们只需在强制登录时登录。

    知识点①:shiro认证,框架自带支持用户名+密码、HOST认证,LDAP、JNDI等单点登录认证,通过自定义UsernamePasswordToken和realm,可实现多种认证共存。

ShiroAuthenticator.jpg

    知识点②:shiro授权,授权分为角色和权限;控制方式有配置文件中配置URL,代码验证(主体检查),注解,页面标签。可通过实现FilterChainManager来自定义权限验证逻辑。

    

ShiroAuthorizer.jpg

    知识点③:会话与缓存,Shiro框架对会话和缓存策略得到了实现并有很好的接口能让我们自主实现会话与权限缓存保存到特定地方,如redis数据库中,以提高系统的使用性能。

    知识点④:“记住我”,shiro框架实现了“记住我”功能,实现长会话管理机制。在网络环境较好的条件下,为用户带来便利,如“十天内自动登陆”策略等。


参考资料:

1.Apache Shiro | Simple. Java. Security.

2.Shiro安全框架入门

关键字:  shiro  安全框架  权限  缓存
评论信息
暂无评论
发表评论
验证码: 
当前时间
小主信息

愿历尽千帆,归来仍少年。
3D标签云

Anything in here will be replaced on browsers that support the canvas element

友情链接

Copyright ©2017-2024 uzen.zone
湘ICP备17013178号-3