<security :authorize>是一個流程控制標簽,能夠在滿足特定安全需求的條件下顯示它的內容體。它有三個互斥的參數:
ifAllGranted——是一個由逗號分隔的權限列表,用戶必須擁有所有列出的權限時顯示;
ifAnyGranted——是一個由逗號分隔的權限列表,用戶必須至少擁有其中的一個權限時才能顯示;
ifNotGranted——是一個由逗號分隔的權限列表,用戶未擁有所有列出的權限時才能顯示。
<security :authentication>獲得屬性的值比如要獲得用戶名可以這么寫:
<security :authentication property="principal.username"></security :authentication>
他有三個屬性,property是必須的,另外scope和var,var定義一個變量,scope定義var存在的范圍
在頁面中引入標簽庫:
< %@ 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 />
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的實例
