zoukankan      html  css  js  c++  java
  • Shiro授权流程

    1,授权中涉及的一些概念
         [1]授权:访问控制,即在应用中认证用户能否访问的系统资源(如一个页面,一个按钮等)。
         [2]资源:在Web应用中反应为用户可以访问的URL。
         [3]权限:表示用户在应用中是否能够访问某个资源。
         [4]角色:权限的集合。
     
    2,Shiro授权方式
         [1]编程式
         [2]注解式
         [3]jsp/gsp标签式
     
    3,Shiro默认拦截器
         Shiro内置了很多默认的拦截器,比如身份验证,授权等相关的。默认拦截器可以参考org.apache.web.filter.mgt.DefaultFilter中的枚举拦截器。
     
     
    4,Shiro授权流程
         [1]授权需要继承 AuthorizingRealm 类(该类继承自 AuthenticationRealm 类),并重写其 doGetAuthorizationInfo() 方法。
      

      

     

             
         
         [2]多Realm授权的通过标准,多Realm应用下,使用ModularRealmAuthorizer授权器,只要有一个Realm授权就算通过。在ModularRealmAuthorizer循环授权的时候,还是走的第[1]条的流程,所以不用担心。
      
    ############################### Shiro jsp标签库 ##########################################
    Shiro 提供了JSTL标签用于在JSP/GSP页面进行权限控制,如根据认证用户相应的页面按钮。
    首先,需要导入标签库:
    <%@ taglib uri="http://org.apache.shiro/tags" uri="shiro" %>
     
    1,guest标签
         游客登陆时,显示标签体内的内容。
    2,authenticated标签
         用户认证通过,显示标签体内的内容。
    3,noAuthenticated标签
         用户未通过认证(包括【记住我】方式登陆),显示标签体内的内容。
    4,principal标签
         显示用户身份信息,如果realm传递的principal是一个对象,可以使用该标签的property来显示具体属性的值。
    5,hasRole和hasAnyRoles
         拥有指定的角色,显示标签体内的内容。
    6,lacksRole
         没有指定的角色,显示标签体内的内容。
    7,hasPermissioin和hasAnyPermissions
         拥有指定的权限,显示标签体内的内容。
    8,lacksPermission
         没有指定的角色,显示标签体内的内容。
     
     
     
    ############################### Shiro 注解 ##########################################
    shiro注解用在Service和Controller层,但是如果Service层有事物注解,那么shiro注解要放在Controller层。因为两个代理对象在类型转换时会出现异常。
     
    1,RequiresAuthentication
         要求用户已经被认证过。
    2,RequiresGuest注解
         要求访客才能访问。
    3,RequiresPermissions
         要求拥有指定的权限。
    4,RequiresRoles
         要求拥有指定的角色。
     
    如果达不到注解所需要的要求,会抛出异常。
  • 相关阅读:
    jquery ajax 向后台传递数组
    定时任务
    C# 好用的插件
    C# 跳出循环
    存储区更新、插入或删除语句影响到了意外的行数(0)。实体在加载后可能被修改或删除。刷新 ObjectS
    Opencv2.4.9源码分析——HoughLinesP
    OpenCV+C++ 视频图片相互转换
    opencv2.2版本不稳定
    OpenCV 透视变换【图像归一化矫正】
    opencv配置注意事项【总结】
  • 原文地址:https://www.cnblogs.com/startcaft/p/7298163.html
Copyright © 2011-2022 走看看