shrio中的用法以及配置

 前言

以往的权限管理通常有以下几个步骤:1.创建用户,分配权限。2.用户登录,权限拦截器拦截请求,识别当前用户登录信息。3.从权限表中判断是否拥有权限。

shrio的权限管理根据以上提出三个问题,1.如何上shiro拦截请求?在web开发中,shiro会提供一个拦截器来对请求进行拦截。2.shiro如何判断发起请求用户的身份?在web开发中,会借助session来判断,如果禁用了session,那么可能需要重写一些方法。3.如何判断权限?shiro使用realm来判断权限。

概念

shiro是一个开源的java安全(权限)框架,它能够实现身份验证、授权、加密和会话管理等功能。

shrio是apache旗下的产品。

shrio不仅可以用于javaEE环境,也可以用于javaSE。

功能

 

Authentication:身份认证,验证用户是否拥有某个身份。
Authorization: 权限校验,验证某个已认证的用户是否拥有某个权限。确定“谁”可以访问“什么”。
Session Management:会话管理,管理用户登录后的会话,
Cryptography:加密,使用密码学加密数据,如加密密码。
Web Support:Web支持,能够比较轻易地整合到Web环境中。
Caching:缓存,对用户的数据进行缓存,
Concurrency:并发,Apache Shiro支持具有并发功能的多线程应用程序,也就是说支持在多线程应用中并发验证。
Testing:测试,提供了测试的支持。
Run as :允许用户以其他用户的身份来登录。
Remember me :记住我

同类比较知名的安全框架还有Spring Security,Shiro的优点就说比较简洁,功能不比Spring Security 多样,当对于安全需求不多的时候可用shiro。

依赖包

        <dependency>
            <groupId>org.apache.shiro</groupId>
            <artifactId>shiro-spring</artifactId>
            <version>1.5.3</version>
        </dependency>

拦截器

 /**是路径,anon等是拦截器

常见的拦截器:

anon:无需认证即可访问

authc:需要认证才可访问

logout:只有登陆后才可以访问

perms:拥有权限才可以访问

role:拥有某个角色权限才能访问

可学习的相关博客(学习更深的知识)

1.Shiro的基本使用

未完持续,之后继续整理补充

原文地址:https://www.cnblogs.com/chensisi/p/13384223.html