首页 > 代码库 > Apache shiro(1)-入门

Apache shiro(1)-入门

    最近因为使用需要开始学习shiro框架。这是我接触的第一个安全的框架,因为没有学习过其他的,因此在我这里没有可对比项。所以这个框架的好坏种种,暂且不论,只是学习。本篇博客将概括的了解一下shiro框架的内容。如果看完了很晕的话,没有关系先知道一下就好,后续博客会更详细的讲解。

简介

    shiro是一个开源的安全框架,它提供了认证、授权、加密和会话管理的相关的安全管理功能。下图为shiro的四个顶级组件对应了各个安全管理功能。下图的蓝色部分是shiro的扩展性支持,这里不做过多介绍。

技术分享


  • Authentication:身份验证,就是证明用户他们“是谁”的过程。
  • Authorization:访问控制,当用户“是谁”已经确定了,访问控制就需要确定“谁”可以“干什么”
  • Session Management:会话管理
  • Cryptography:加密

主要概念

         
         
技术分享

  • Subject:是当前用户的特定的安全“视图”,这里的用户不只是指人,也包括第三方服务。也就是说subject是指当前于软件交互的任何东西。
  • SecurityManager:是shiro的架构心脏,并作为一种“总控”来协调内部安全组件共同构成安全控制空能。
  • Realm:是shiro和数据库之间的桥梁,shiro所需要的数据都通过这个类去数据库获得。它实际上就是一个DAO,封装了数据源的详细信息。

Shiro的核心框架概念

        技术分享


    这个图就比较清晰的反映了SecurityManager和各个组件之间的关系。

Apache shiro(1)-入门