zoukankan      html  css  js  c++  java
  • spring security的标签库

    http://dchengquan53390.iteye.com/blog/1239761

    应用标签库:<%@ taglib prefix='security ' uri='http://www.springframework.org/security /tags' %> 


    <security :authorize>是一个流程控制标签,能够在满足特定安全需求的条件下显示它的内容体。它有三个互斥的参数: 

    ifAllGranted——是一个由逗号分隔的权限列表,用户必须拥有所有列出的权限时显示; 

    ifAnyGranted——是一个由逗号分隔的权限列表,用户必须至少拥有其中的一个权限时才能显示; 

    ifNotGranted——是一个由逗号分隔的权限列表,用户未拥有所有列出的权限时才能显示。 

    <security :authentication>获得属性的值比如要获得用户名可以这么写: 
    <security :authentication property="principal.username"></security :authentication> 
    他有三个属性,property是必须的,另外scope和var,var定义一个变量,scope定义var存在的范围
    例子:
    有时需要在页面显示用户名,或者根据用户角色显示或者不显示一些内容。这需要使用到spring security提供的标签库。

    在页面中引入标签库:

    < %@ taglib prefix ="sec" uri ="http://www.springframework.org/security/tags" % >

    使用标签库的示例:

    < sec:authentication property ="principal" var ="authentication" />

    < sec:authorize ifAllGranted ="ROLE_USER" > 可以访问 </ sec:authorize >

    用户名:${authentication.username } < br />

    前台 ROLE_ANONYMOUS表示匿名用户
    在配置文件中可以设置页面进入的权限
    <intercept-url pattern="/Homepage.*" access="ROLE_ADMIN,IS_AUTHENTICATED_ANONYMOUSLY"/> 
    IS_AUTHENTICATED_ANONYMOUSLY允许匿名用户进入
    IS_AUTHENTICATED_FULLY              允许登录用户进入
    IS_AUTHENTICATED_REMEMBERED  允许登录用户和rememberMe用户进入

     IS_AUTHENTICATED_FULLY:是则满足以下情况返回通过:
             **.既不是RememberMeAuthentication也不是AnonymousAuthenticationToken的实例
          IS_AUTHENTICATED_REMEMBERED:是则满足以下任一情况返回通过:
             a*.Authentication是RememberMeAuthenticationToken的实例
             b*.既不是RememberMeAuthentication也不是AnonymousAuthenticationToken的实例
          IS_AUTHENTICATED_ANONYMOUSLY:是则满足以下任一情况返回通过:
             a*.Authentication是AnonymousAuthenticationToken的实例
             b*.既不是RememberMeAuthentication也不是AnonymousAuthenticationToken的实例
             c*.Authentication是RememberMeAuthenticationToken的实例    


  • 相关阅读:
    oracle连接方式、创建数据库用户、忘记数据库密码、用户锁定
    Hibernate延迟加载、三种状态、脏检查 缓存
    Hibernate入门案例及增删改查
    Hibernate 和快照
    学号20175313 《程序设计中临时变量的使用》第八周
    学号20175313 《Arrays和String单元测试》第八周
    学号 20175313 《实验二 面向对象程序设计》实验报告
    学号20175313 《结对编程四则运算》总结性编程 第七周
    学号 20175313《Java程序设计》 第七周学习总结
    20175313 张黎仙 《第六周 结对编程四则运算》 阶段性编程
  • 原文地址:https://www.cnblogs.com/bluejoe/p/5115966.html
Copyright © 2011-2022 走看看