• Shiro系列(3)


    什么是shiro?

    Shiro是apache的一个开源权限管理的框架,它实现用户身份认证,权限授权、加密、会话管理等功能,组成了一个通用的安全认证框架

            使用shiro来实现权限管理,可以非常有效的提高团队开发效率,从而降低开发成本以及维护成本。

    shiro 的基本架构

    Subject:主体,subject记录了当前操作的用户信息。我们对这个subject进行认证和授权。

    SecurityManager:安全管理者,主体进行认证和授权都 是通过securityManager进行。是shiro的核心。

    Authenticator:用于用户登录认证的,主体的认证是否通过都是由authenticator来做的。

    Authorizer:授权鉴权,主体进行授权是否通过由authorizer来做的。

    Session Manager:web应用中需要对session进行会话管理,那么shiro本身也有session管理的方式,用sessionManager来做的。这个可以用来实现单点登录sso。

    SessionDao:  统一管理session,不论是分布式还是单应用都帮你做好了。比如对session的塞入一个用户和删除一个用户,而这个是用的redis这样的缓存的话,就要用到sessionDAO。

    Cache Manager:缓存管理者,将用户权限信息缓存起来,这样可以提高性能,不必频繁地读取数据库,减少数据库压力。ehcache,redis等

    realm:领域,范围,可以理解为数据源,认证和授权的相关数据都是存在这里的。

    cryptography:密码管理,提供各种类型的加密算法,比如MD5等。

    使用shiro所需要的jar包(基础)

    <shiro.version>1.3.2</shiro.version>

    <!-- shiro -->

    <dependency>

    <groupId>org.apache.shiro</groupId>

    <artifactId>shiro-core</artifactId>

    <version>${shiro.version}</version>

    </dependency>

    <dependency>

    <groupId>org.apache.shiro</groupId>

    <artifactId>shiro-web</artifactId>

    <version>${shiro.version}</version>

    </dependency>

    <dependency>

    <groupId>org.apache.shiro</groupId>

    <artifactId>shiro-spring</artifactId>

    <version>${shiro.version}</version>

    </dependency>

    <dependency>

    <groupId>org.apache.shiro</groupId>

    <artifactId>shiro-ehcache</artifactId>

    <version>${shiro.version}</version>

    </dependency>

    <dependency>

    <groupId>org.apache.shiro</groupId>

    <artifactId>shiro-quartz</artifactId>

    <version>${shiro.version}</version>

    </dependency>

  • 相关阅读:
    关于如何使用Microsoft Word发博客
    使用Word发表博客园博文
    利用Word发布文章到博客
    图解利用Word来发布博客
    [转载]如何将word文档直接发布到新浪博客
    如何用word发布博客文章到新浪|网易|博客园?
    word 2010发布文章到博客园
    使用Word2010发布博客到博客园
    C++ 虚函数表解析
    GlobalAlloca GlobalLock GlobalUnlock函数的作用
  • 原文地址:https://www.cnblogs.com/leechenxiang/p/7727558.html
Copyright © 2020-2023  润新知