`

shiro权限验证标签

阅读更多

shiro权限验证标签

 

实例:

spring-shiro.xml

1
2
3
/admin/repairType/index = roles["ROLE_ADMIN"]
/admin/user=roles["ROLE_ADMIN"]
/admin/complaint/list= roles["ROLE_SERVICE,ROLE_ADMIN"]

jsp页面:

1
2
3
4
5
6
7
8
9
<shiro:hasRole name="ROLE_ADMIN">
    <li class="user"><a href="${ctx}/admin/user">用户</a></li>
</shiro:hasRole>
<shiro:hasAnyRoles name="ROLE_ADMIN,ROLE_SERVICE">
    <li class="complaint"><a href="${ctx}/admin/complaint/list">服务</a></li>
</shiro:hasAnyRoles>
<shiro:hasRole name="ROLE_ADMIN">
    <li class="system"><a href="${ctx}/admin/repairType/index">系统设置</a></li>
</shiro:hasRole>

  

在使用Shiro标签库前,首先需要在JSP引入shiro标签: 

1
<%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>

  

1、介绍Shiro的标签guest标签 :验证当前用户是否为“访客”,即未认证(包含未记住)的用户。

1
2
3
4
5
<shiro:guest> 
 
Hi there!  Please <a href="login.jsp">Login</a> or <a href="signup.jsp">Signup</a> today! 
 
</shiro:guest>

  

2、user标签 :认证通过或已记住的用户。

1
2
3
4
5
<shiro:user> 
 
    Welcome back John!  Not John? Click <a href="login.jsp">here<a> to login. 
 
</shiro:user>

  

3、authenticated标签 :已认证通过的用户。不包含已记住的用户,这是与user标签的区别所在。

1
2
3
4
5
<shiro:authenticated> 
 
    <a href="updateAccount.jsp">Update your contact information</a>. 
 
</shiro:authenticated>

  

4、notAuthenticated标签 :未认证通过用户,与authenticated标签相对应。与guest标签的区别是,该标签包含已记住用户。 

1
2
3
4
5
<shiro:notAuthenticated> 
 
    Please <a href="login.jsp">login</a> in order to update your credit card information. 
 
</shiro:notAuthenticated>

  

5、principal 标签 :输出当前用户信息,通常为登录帐号信息。

1
Hello, <shiro:principal/>, how are you today?

  

6、hasRole标签 :验证当前用户是否属于该角色。

1
2
3
4
5
<shiro:hasRole name="administrator"
 
    <a href="admin.jsp">Administer the system</a> 
 
</shiro:hasRole>

  

7、lacksRole标签 :与hasRole标签逻辑相反,当用户不属于该角色时验证通过。

1
2
3
4
5
<shiro:lacksRole name="administrator"
 
    Sorry, you are not allowed to administer the system. 
 
</shiro:lacksRole>

  

8、hasAnyRole标签 :验证当前用户是否属于以下任意一个角色。 

1
2
3
4
5
<shiro:hasAnyRoles name="developer, project manager, administrator"
 
    You are either a developer, project manager, or administrator. 
 
</shiro:lacksRole>

  

9、hasPermission标签 :验证当前用户是否拥有指定权限。

1
2
3
4
5
<shiro:hasPermission name="user:create"
 
    <a href="createUser.jsp">Create a new User</a> 
 
</shiro:hasPermission>

10、lacksPermission标签 :与hasPermission标签逻辑相反,当前用户没有制定权限时,验证通过。

1
2
3
4
5
<shiro:hasPermission name="user:create"
 
    <a href="createUser.jsp">Create a new User</a> 
 
</shiro:hasPermission>
分享到:
评论

相关推荐

    Shiro根据用户权限显示不同的菜单.Shiro根据权限显示指定菜单

    3. **使用Shiro的`hasPermission`标签**:在JSP页面中,我们可以利用Shiro提供的JSTL标签库来进行权限检查。例如,我们可以使用`&lt;shiro:hasPermission name="editUser"&gt;`标签来包裹需要展示的菜单项代码。如果当前...

    vue与shiro结合实现权限按钮

    在Shiro中,主要通过Subject、Authenticator、Authorizer等核心组件来处理身份验证、授权和会话管理。授权(Authorization)是判断用户是否有执行某个操作的权限,这正是我们实现按钮权限的关键。我们可以将角色和...

    shiro-freemarker权限控制标签

    1. **Shiro Tags**:Shiro 提供了一系列的Freemarker标签,如`&lt;@shiro.hasPermission&gt;`,这些标签可以在模板中直接使用,用于判断用户是否具有特定的权限。 - `&lt;@shiro.hasPermission name="permName"&gt;`: 如果用户...

    ssm-shiro权限管理(一)

    SSM-Shiro权限管理是Java Web开发中一种常见的权限控制框架集成方案,它结合了Spring、SpringMVC、MyBatis以及Apache Shiro这四个组件,实现了一个完整的权限管理系统。在本文中,我们将深入探讨如何将这四个组件...

    freemarker的shiro标签

    5. **简化代码**:使用Shiro标签库可以减少控制器层的代码,将权限验证逻辑移至视图层,使得业务逻辑更加清晰,代码更易于维护。 6. **安全实践**:结合FreeMarker和Shiro,可以实现前后端分离的安全策略,提高应用...

    shiro权限框架

    ### Shiro权限框架详解 #### 一、权限概述与核心概念 在现代软件系统中,权限控制是一项重要的安全措施,它确保只有经过适当验证和授权的用户才能访问特定资源或执行特定操作。权限控制通常包括两个核心方面:认证...

    shiro权限管理系统示例

    在这个“shiro权限管理系统示例”中,我们将深入探讨Shiro的核心概念和如何利用它来构建一个权限管理的系统。 1. **身份验证(Authentication)**:这是确认用户身份的过程。Shiro提供了一个简单的认证流程,通过...

    Shiro权限框架文档

    标题中提到的“Shiro权限框架”是一个用于Java语言的开源权限管理库,旨在通过提供安全功能如身份验证、授权、会话管理以及加密等,简化Java应用程序中的安全操作。Shiro是一个易于使用且强大的权限框架,它既可以...

    crm项目 shiro权限管理

    【CRM项目与Shiro权限管理】 CRM(Customer Relationship Management)系统是企业管理和维护客户关系的重要工具,它涵盖了销售、市场营销和服务等多个业务领域。在CRM项目中,权限管理是确保数据安全和用户操作权限...

    shiro权限管理(一)

    在"Shiro权限管理(一)"这篇博文中,我们可能会探讨Shiro的基础概念和如何在项目中实现基本的权限控制。让我们深入了解一下Shiro的核心组件和使用方法。 1. **身份验证(Authentication)**: Shiro提供了处理...

    shiro权限管理+SSM登陆+spring定时器+基本博客管理

    标题 "shiro权限管理+SSM登陆+spring定时器+基本博客管理" 涵盖了四个关键领域:Shiro权限管理、SSM框架集成、Spring定时器以及基础的博客管理系统构建。以下是对这些知识点的详细说明: 1. **Shiro权限管理**: ...

    shiro-springboot-thymeleaf模板 登录认证权限授予验证案例.zip

    做的登录认证权限授予验证案例,讲解很全面,对登录认证和权限授予都做了详细说明,其中 shiro 权限验证的三种方式:add()(编程方式) delete()(注解方式) update()和select()(JSP标签方式)都做了案例来讲解

    shiro权限(2)

    ### Shiro权限管理详解 #### 一、权限管理概述 权限管理是计算机系统中的一个重要组成部分,主要用于确保只有合法用户能够访问系统,并且每个用户只能访问其被授权的资源。这通常涉及两个主要方面:用户认证(验证...

    JFinal2.0整合shiro权限框架,简单好用

    **JFinal2.0整合Apache Shiro权限框架详解** JFinal是一个基于Java的高效、轻量级的Web开发框架,它的设计目标是让开发者能够快速地进行开发,减少了大量重复的代码工作。Apache Shiro则是一款强大的安全管理框架,...

    注释最全,一步步详解 shiro-ssm登录认证权限授予验证案例.zip

    - 编写测试用例,模拟不同场景的登录、权限验证,确保 Shiro 整合的正确性。 通过这个案例,你可以全面了解如何在实际项目中应用 Shiro 进行用户认证和授权,为你的系统提供安全基础。案例中包含的详细步骤和代码...

    尚硅谷Shiro 标签

    Shiro标签库是Shiro提供的一组用于在JSP页面进行权限控制的自定义标签。使用Shiro标签可以很直观地在JSP页面上控制显示内容,如根据用户是否登录、是否有特定权限来显示页面上的按钮或链接。 在使用Shiro标签之前,...

    用于Thymeleaf的Shiro HTML标签扩展

    用于在页面模板中应用Shiro框架提供的功能,例如权限验证、角色判断、提取用户凭证信息等 开发环境: 运行环境:Jvm 语言支持:Java、Kotlin、Groovy等所有基于Jvm的语言 框架依赖:Spring/Spring Boot、...

    shiro登陆注销权限控制

    在这个项目中,登录和注销功能已经实现了基于Shiro的权限控制,确保用户只有在正确验证身份后才能访问特定资源。 描述中提到"将focus.sql在Mysql数据库执行",意味着项目依赖于MySQL数据库来存储用户信息和权限数据...

    Apache shiro 标签授权

    ### Apache Shiro 标签授权详解 #### 一、引言 Apache Shiro 是一款功能强大的 Java 安全框架,提供了认证、授权、加密及会话管理等功能,可以帮助开发者非常容易地开发出足够安全的应用。其中,Shiro 提供了一系列...

Global site tag (gtag.js) - Google Analytics