shiro(三)shiro实战——Spring 集成 Shiro(案例)

简介: shiro(三)shiro实战——Spring 集成 Shiro(案例)

基于标签库的授权:guest


guest 标签将显示它包含的内容,仅当当前的Subject 被认为是 guest 时。

guest 是指没有身份 ID 的任何 Subject:没有登录也没有在上一次的访问中被记住(RememberMe 服务)

guest 标签与user 标签逻辑相反。

例子:


Hi there! Please Login or Signuptoday!


基于标签库的授权:user


user 标签将显示它包含的内容,仅当当前的 Subject 被认为是 user 时。

User 在上下文中被定义为一个已知身份 ID 的 Subject,或是成功通过身份验证及通过 RememberMe 服务的。

该标签在语义上与authenticated 标签是不同的,authenticated 标签更为严格。

usre 标签与guest 标签逻辑相反。


基于标签库的授权


1、authenticated:当当前用户在当前会话中成功地通过了身份验证 authenticated 标签才会显示包含的内容。比 user 标签更为严格。在逻辑上与 notAuthenticated 标签相反。

2、notAuthenticated:当前 Subject 还没有在其当前会话中成功地通过验证,将会显示它所包含的内容

3、principal 标签将会输出Subject 的主体(标识属性)或主要的属性

4、hasRole 当当前Subject 被分配了具体的角色时显示它所包含的内容。hasRole 标签与lacksRole 标签逻辑相反。 例如:


<shiro:hasRole name="administrator">

<a href="admin.jsp">Administer the system</a>

</shiro:hasRole>


5、lacksRole 标签:当当前Subject 未被分配具体的角色,显示它所包含的内容

6、hasAnyRole 标签:当前的 Subject 被分配了任意一个来自于逗号分隔的角色名列表中的具体角色,将会显示它所包含的内容。例如:


<shiro:hasAnyRoles name="developer, project manager, administrator">

You are either a developer, project manager, or administrater.

</shiro:hasAnyRoles>


7、hasPermission 标签:当前 Subject 拥有特定的权限时,会显示它所包含的内容。hasPermission 标签与 lacksPermission 标签逻辑相反。例如:


<shiro:hasPermission name="user:create">

<a href="createUser.jsp">Create a new User</a>

</shiro:hasPermission>


8、lacksPermission 标签:当前Subject 没有拥有(蕴含)特定的权限,将会显示它所包含的内容。也就是说,用户没有特定的能力。


密码加密


屏幕快照 2022-05-10 上午11.54.54.png


项目案例:https://pan.baidu.com/s/1mhIO1Pe

目录
相关文章
|
1月前
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
131 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
2月前
|
Java Maven Docker
gitlab-ci 集成 k3s 部署spring boot 应用
gitlab-ci 集成 k3s 部署spring boot 应用
|
1月前
|
存储 Java 调度
Sppring集成Quartz简单案例详解 包括(添加、停止、恢复、删除任务、获取下次执行时间等)
Sppring集成Quartz简单案例详解 包括(添加、停止、恢复、删除任务、获取下次执行时间等)
32 2
|
26天前
|
消息中间件 监控 Java
您是否已集成 Spring Boot 与 ActiveMQ?
您是否已集成 Spring Boot 与 ActiveMQ?
49 0
|
2月前
|
自然语言处理 Java API
Spring Boot 接入大模型实战:通义千问赋能智能应用快速构建
【10月更文挑战第23天】在人工智能(AI)技术飞速发展的今天,大模型如通义千问(阿里云推出的生成式对话引擎)等已成为推动智能应用创新的重要力量。然而,对于许多开发者而言,如何高效、便捷地接入这些大模型并构建出功能丰富的智能应用仍是一个挑战。
238 6
|
2月前
|
缓存 NoSQL Java
Spring Boot与Redis:整合与实战
【10月更文挑战第15天】本文介绍了如何在Spring Boot项目中整合Redis,通过一个电商商品推荐系统的案例,详细展示了从添加依赖、配置连接信息到创建配置类的具体步骤。实战部分演示了如何利用Redis缓存提高系统响应速度,减少数据库访问压力,从而提升用户体验。
131 2
|
1月前
|
JavaScript NoSQL Java
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
46 0
|
2月前
|
Java 数据库连接 Spring
【2021Spring编程实战笔记】Spring开发分享~(下)
【2021Spring编程实战笔记】Spring开发分享~(下)
34 1
|
3月前
|
监控 关系型数据库 MySQL
zabbix agent集成percona监控MySQL的插件实战案例
这篇文章是关于如何使用Percona监控插件集成Zabbix agent来监控MySQL的实战案例。
83 2
zabbix agent集成percona监控MySQL的插件实战案例
|
2月前
|
XML Java 数据格式
Spring IOC容器的深度解析及实战应用
【10月更文挑战第14天】在软件工程中,随着系统规模的扩大,对象间的依赖关系变得越来越复杂,这导致了系统的高耦合度,增加了开发和维护的难度。为解决这一问题,Michael Mattson在1996年提出了IOC(Inversion of Control,控制反转)理论,旨在降低对象间的耦合度,提高系统的灵活性和可维护性。Spring框架正是基于这一理论,通过IOC容器实现了对象间的依赖注入和生命周期管理。
80 0