Shiro 許可權標籤 許可權註解

2021-10-02 16:42:31 字數 1781 閱讀 1461

在使用shiro標籤庫前,首先需要在jsp引入shiro標籤:

<%@ taglib prefix="shiro" uri="" %>
<

shiro:authenticated

/>

登入之後

<

shiro:notauthenticated

/>

不在登入狀態時

<

shiro:user

/>

使用者在登入之後或rememberme時

<

shiro:guest

/>

使用者在沒有登入或rememberme時

擁有abc或者123角色時

<

shiro:hasrole

name

="abc"

/>

擁有角色abc

<

shiro:lacksrole

name

="abc"

/>

沒有角色abc

<

shiro:haspermission

name

="abc"

/>

擁有許可權資源abc

<

shiro:lackspermission

name

="abc"

/>

沒有abc許可權資源

<

shiro:principal

/>

顯示使用者身份名稱

<

shiro:principal

property

="username"

/>

顯示使用者身份中的屬性

shiro 提供了相應的註解用於許可權控制,如果使用這些註解就需要使用aop

的功能來進行判斷,如spring aop;shiro 提供了spring aop 整合用於許可權註解的解析和驗證。

在springmvc-config.xml中配置shiro註解支援,可在controller方法中使用shiro註解配置許可權

<

aop:config

proxy-target-class

="true"

/>

class

="org.apache.shiro.spring.security.interceptor.authorizationattributesourceadvisor"

>

name

="securitymanager"

ref="securitymanager"

/>

bean

>

表示當前subject已經通過login 進行了身份驗證;

即subject. isauthenticated()返回true。

表示當前subject已經身份驗證或者通過記住我登入的。

表示當前subject沒有身份驗證或通過記住我登入過,即是遊客身份。

表示當前subject需要角色admin和user。

@requiresroles(value=, logical= logical.and)

@requiresroles(value=)

@requiresroles()

@requirespermissions (value=, logical= logical.or)

表示當前subject需要許可權user:add或user:update。

Shiro 許可權標籤和註解 九

一.許可權標籤 遊客訪問 user 標籤 使用者已經通過認證 記住我 登入後顯示響應的內容 歡迎登入 退出 authenticated標籤 使用者身份驗證通過,即 subjec.login 登入成功 不是記住我登入的 使用者 已身份驗證通過 notauthenticated標籤 使用者未進行身份驗證...

shiro許可權註解

shiro許可權註解 可以用在controller層對應的方法上 service層對應的方法上 1 requiresauthentication 表示當前subject已經通過login進行了身份驗證 即subject.isauthenticated 返回true。2 requiresuser 表示...

Shiro許可權註解

shiro許可權註解 可以用在controller層對應的方法上 service層對應的方法上 1 requiresauthentication 表示當前subject已經通過login進行了身份驗證 即subject.isauthenticated 返回true。2 requiresuser 表示...