`
vnplalvyulin
  • 浏览: 13037 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

shiro标签简介

 
阅读更多
下面来介绍标签:
 

1.guest(游客)

 
 
  1. <@shiro.guest>
  2. 您当前是游客,<a href="javascript:void(0);" class="dropdown-toggle qqlogin" >登录</a>
  3. </@shiro.guest>
 

2.user(已经登录,或者记住我登录)

 
 
  1. <@shiro.user>
  2. 欢迎[<@shiro.principal/>]登录,<a href="/logout.shtml">退出</a>
  3. </@shiro.user>
 

3.authenticated(已经认证,排除记住我登录的)

 
 
  1. <@shiro.authenticated>
  2.     用户[<@shiro.principal/>]已身份验证通过
  3. </@shiro.authenticated>
 

4.notAuthenticated(和authenticated相反)

 
 
  1. <@shiro.notAuthenticated>
  2. 当前身份未认证(包括记住我登录的)
  3. </@shiro.notAuthenticated>
这个功能主要用途,识别是不是本次操作登录过的,比如支付系统,进入系统可以用记住我的登录信息,但是当要关键操作的时候,需要进行认证识别。
 

5.principal标签,这个要稍微重点讲讲。好多博客都是一下带过。

 
principal标签,取值取的是你登录的时候。在Realm实现类中的如下代码:
 
  1. ....
  2. return new SimpleAuthenticationInfo(user,user.getPswd(), getName());
在new SimpleAuthenticationInfo(第一个参数,....)的第一个参数放的如果是一个username,那么就可以直接用。
 
  1. <!--取到username-->
  2. <@shiro. principal/>
如果第一个参数放的是对象,比如我喜欢放User对象。那么如果要取username字段。
 
  1. <!--需要指定property-->
  2. <@shiro.principal property="username"/>
和Java如下Java代码一致
 
  1. User user = (User)SecurityUtils.getSubject().getPrincipals();
  2. String username = user.getUsername();
 

6.hasRole标签(判断是否拥有这个角色)

 
 
  1. <@shiro.hasRole name="admin">
  2.     用户[<@shiro.principal/>]拥有角色admin<br/>
  3. </@shiro.hasRole>
 

7.hasAnyRoles标签(判断是否拥有这些角色的其中一个)

 
 
  1. <@shiro.hasAnyRoles name="admin,user,member">
  2. 用户[<@shiro.principal/>]拥有角色admin或user或member<br/>
  3. </@shiro.hasAnyRoles>
 

8.lacksRole标签(判断是否不拥有这个角色)

 
 
  1. <@shiro.lacksRole name="admin">
  2. 用户[<@shiro.principal/>]不拥有admin角色
  3. </@shiro.lacksRole>
 

9.hasPermission标签(判断是否有拥有这个权限)

 
 
  1. <@shiro.hasPermission name="user:add">
  2.     用户[<@shiro.principal/>]拥有user:add权限
  3. </@shiro.hasPermission>
 

10.lacksPermission标签(判断是否没有这个权限)

  1. <@shiro.lacksPermission name="user:add">
  2.     用户[<@shiro.principal/>]不拥有user:add权限
  3. </@shiro.lacksPermission>
 

 

11.自定义标签。

分享到:
评论

相关推荐

    freemarker的shiro标签

    1. **Shiro标签库**:Shiro提供了与FreeMarker集成的标签库,使得在FreeMarker模板中可以直接使用Shiro的权限控制功能。例如,`&lt;@shiro.hasPermission&gt;`标签可以用来判断当前用户是否有某个操作的权限,如果用户有...

    Apache shiro 标签授权

    #### 二、Shiro 标签库简介 在使用 Shiro 的标签库之前,需要确保已经在 JSP 页面中引入了 Shiro 的标签库。这可以通过以下方式完成: ```jsp &lt;%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %&gt; ```...

    尚硅谷Shiro 标签

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

    用于Thymeleaf的Shiro HTML标签扩展

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

    springboot 在ftl页面上使用shiro标签的实例代码

    SpringBoot 在 FTL 页面上使用 Shiro 标签的实例代码 在本篇文章中,我们将详细介绍如何在 SpringBoot 项目中使用 Shiro 标签在 FTL 页面上实现权限控制。Shiro 是一个功能强大且广泛使用的权限管理框架,能够帮助...

    vue与shiro结合实现权限按钮

    Vue.js作为一个轻量级的前端框架,搭配Apache Shiro这样的安全管理框架,可以有效地实现前端的细粒度权限管理,如按钮级别的权限控制。本文将详细介绍如何在Vue项目中结合Shiro实现这一功能,以及所需的前置技术。 ...

    shiro-freemarker权限控制标签

    3. **Freemarker 配置**:在Freemarker配置中,添加Shiro标签库的路径,使得模板引擎能够识别并解析Shiro标签。 4. **使用示例**: ```html &lt;#if shiro.hasPermission('edit:user')}&gt; 编辑用户 ``` **权限...

    springboot集成freemarker和shiro框架

    1. 在FreeMarker模板中使用Shiro标签库:在.ftl文件顶部引入Shiro标签库: ```html &lt;#assign shiro = "shiro:${'@org.apache.shiro.web.tags.ShiroTagLibHandler@getTagLibUri()'}"&gt; ${shiro}" as shiro/&gt; ``` 2. ...

    shiro.freemarker.ShiroTags已打包

    ShiroTags 是 Shiro 提供的一套用于模板引擎的标签库,如 Freemarker 和 JSP,它们使得在视图层集成权限控制变得更为便捷。 `com.jagregory.shiro.freemarker.ShiroTags` 是 Jagregory 开发的一个扩展,将 Apache ...

    Shiro 视频教程+源码+课件

    1.Shiro 简介 2.ShiroHelloWorld 实现 第二章 身份认证 1.Subject 认证主体 2.身份认证流程 第三章 权限认证 1.权限认证核心要素 2.授权 3.Permissions 对权限深入理解 4.授权流程 第四章 集成 Web 1.Shiro ...

    尚硅谷Shiro视频教程

    尚硅谷_Shiro_简介 · 02.尚硅谷_Shiro_HelloWorld · 03.尚硅谷_Shiro_集成 Spring · 04.尚硅谷_Shiro_工作流程(1) · 05.尚硅谷_Shiro_DelegatingFilterProxy · 06. 尚硅谷_Shiro_权限 URL 配置细节 · 07...

    jetbrick-template-shiro:jetbrick 模板的 Shiro 标签扩展

    **Jetbrick 模板的 Shiro 标签扩展** Jetbrick 模板是 Java 开发中的一款快速、灵活且高效的模板引擎,它提供了一种简洁的方式来动态生成 HTML、XML 或其他文本格式的输出。Shiro 是一个强大且易用的安全管理框架,...

    Shiro学习示例,以及与SpringMVC整合,标签注解等

    在这个"Shiro学习示例,以及与SpringMVC整合,标签注解等"项目中,我们可以深入理解Shiro的核心功能以及如何在实际开发中与SpringMVC集成。 首先,Shiro 提供了用户认证(Authentication)机制,允许应用验证用户...

    shiro所有版本jar

    标签中的"shiroall"可能是指包含所有模块的Shiro全集JAR,这是一个集成了Shiro所有功能的单一文件,便于那些不想或不能单独管理每个模块的开发者使用。"shiro1.1"和"shiro1.2"代表了Shiro框架的两个具体版本,分别...

    springboot+thymeleaf+shiro标签1

    Thymeleaf-extras-shiro库则提供了Thymeleaf和Apache Shiro的集成,使得在Thymeleaf模板中可以直接使用Shiro的安全特性,如`sec:authorize`标签进行权限控制。 3. **Apache Shiro**: Apache Shiro是一个强大且...

    SpringBoot整合shiro .docx

    - 在Thymeleaf模板中使用Shiro标签进行权限控制。 - 测试认证和授权功能。 通过以上步骤,可以构建一个具备用户登录、权限控制等功能的安全管理系统。Spring Boot的便捷性和Shiro的易用性相结合,使得整个过程更加...

    shiro1.7.1.zip

    在标签中提到了“shiro兼容包”,这通常指的是为了保证与旧版本系统兼容,或者解决特定环境下的问题,Shiro提供的额外支持包。在升级过程中,如果遇到兼容性问题,这些包可能非常有用。同时,提到了“权限绕过漏洞 ...

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

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

    我的shiro源码.zip

    5. **Shiro标签使用**:在JSP页面中,可以使用Shiro提供的标签库来控制用户的访问权限,如`&lt;shiro:hasRole&gt;`和`&lt;shiro:hasPermission&gt;`。 6. **安全控制器**:在Spring MVC的Controller中,你可以利用Shiro的注解...

Global site tag (gtag.js) - Google Analytics