zoukankan      html  css  js  c++  java
  • (一)shiro功能架构分析

    shiro基本功能点如下图所示

    Authentication身份认证/登录;

    Authorization授权;

    Session Manager会话管理;

    Cryptography加密;

    Web SupportWeb支持,可以非常容易的集成到Web环境;

    Caching:缓存;

    Concurrencyshiro支持多线程应用的并发验证,即如在一个线程中开启另一个线程,能把权限自动传播过去;

    Testing提供测试支持;

    Run As允许一个用户假装为另一个用户(如果他们允许)的身份进行访问;

    Remember Me记住我。

    Shiro不会去维护用户、维护权限;这些需要我们自己去设计/提供;然后通过相应的接口注入给Shiro

     

    shiro架构

    shiro工作流程图

     

     

     

    内部架构图

     

    Subject主体;

    SecurityManager相当于SpringMVC中的DispatcherServlet或者Struts2中的FilterDispatcher;它管理着所有Subject、且负责进行认证和授权、及会话、缓存的管理。

    Authenticator认证器;

    Authrizer授权器,;

    Realm可以有1个或多个Realm,是安全实体数据源;可以是JDBC实现,也可以是LDAP实现,或者内存实现等等;

    SessionManagerShiro自己的Session来管理主体与应用之间交互的数据;

    SessionDAODAO大家都用过,数据访问对象,用于会话的CRUD;同时SessionDao也可以使用Cache进行缓存以提高性能。

    CacheManager缓存控制器,管理如用户、角色、权限等的缓存

    Cryptography密码模块

     

    总结自张开涛的《跟我学shiro》原博客地址:http://jinnianshilongnian.iteye.com/blog/2018936/

  • 相关阅读:
    HDU 5640 King's Cake
    HDU 5615 Jam's math problem
    HDU 5610 Baby Ming and Weight lifting
    WHU1604 Play Apple 简单博弈
    HDU 1551 Cable master 二分
    CodeForces659C Tanya and Toys map
    Codeforces 960E 树dp
    gym 101485E 二分匹配
    Codeforces 961E 树状数组,思维
    Codeforces Round #473 (Div. 2) D 数学,贪心 F 线性基,模板
  • 原文地址:https://www.cnblogs.com/w894819398/p/7326374.html
Copyright © 2011-2022 走看看