欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot Shiro 權(quán)限注解不起作用的解決方法

 更新時(shí)間:2021年07月28日 15:17:03   作者:variablex  
本文主要介紹了SpringBoot Shiro 權(quán)限注解不起作用的解決方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最近在學(xué)習(xí)springboot結(jié)合shiro做權(quán)限管理時(shí)碰到一個(gè)問題。

問題如下:

我在userRealm中的doGetAuthorizationInfo方法中給用戶添加了權(quán)限,然后在Controller中寫了下面的代碼。其中URL為/listArticle的方法必須要有article:over權(quán)限才能通過。我在doGetAuthorizationInfo方法中給該用戶添加的權(quán)限并沒有article:over,但是當(dāng)前端向該URL發(fā)送請(qǐng)求時(shí),@RequiresPermissions注解不起作用,listArticle方法被執(zhí)行了。而且我在方法內(nèi)部打印isPermitted("article:over")的輸出結(jié)果為false。最終通過網(wǎng)上查博客,發(fā)現(xiàn)是沒有開啟Shiro的注解支持的原因。

@RequiresPermissions("article:over")
@RequestMapping(value = "/listArticle", method = RequestMethod.POST)
public JSONObject listArticle(@RequestBody JSONObject request){
    System.out.println("---------isPermitted article:over--------" + SecurityUtils.getSubject().isPermitted("article:over"));
    CommonTools.paginationConvert(request);
    int ArticleNum = articleService.getArticleNum();
    List<JSONObject> list = articleService.listArticle(request.getIntValue("offset"), request.getIntValue("pageRow"));
    return Result.success(request, list, ArticleNum);
}


解決方法如下:

在ShiroConfig中添加如下一段代碼。

//開啟對(duì)shiro注解的支持
@Bean
public AuthorizationAttributeSourceAdvisor authorizationAttributeSourceAdvisor(SecurityManager securityManager) {
    AuthorizationAttributeSourceAdvisor advisor = new AuthorizationAttributeSourceAdvisor();
    advisor.setSecurityManager(securityManager);
    return advisor;
}
//開啟aop注解支持
@Bean
public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() {
    DefaultAdvisorAutoProxyCreator defaultAAP = new DefaultAdvisorAutoProxyCreator();
    defaultAAP.setProxyTargetClass(true);
    return defaultAAP;
}

添加完這段代碼后,我再向該URL發(fā)送請(qǐng)求時(shí)就會(huì)報(bào)如下異常,表明該用戶沒有該權(quán)限:
org.apache.shiro.authz.AuthorizationException: Not authorized to invoke method

參考博客:
https://www.cnblogs.com/shiguotao-com/p/10617693.html
https://www.cnblogs.com/tuifeideyouran/p/7696055.html

到此這篇關(guān)于SpringBoot Shiro 權(quán)限注解不起作用的解決方法的文章就介紹到這了,更多相關(guān)SpringBoot Shiro權(quán)限注解不起作用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何巧用HashMap一行代碼統(tǒng)計(jì)單詞出現(xiàn)次數(shù)詳解

    如何巧用HashMap一行代碼統(tǒng)計(jì)單詞出現(xiàn)次數(shù)詳解

    這篇文章主要給大家介紹了關(guān)于如何巧用HashMap一行代碼統(tǒng)計(jì)單詞出現(xiàn)次數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 詳解mybatis @SelectProvider 注解

    詳解mybatis @SelectProvider 注解

    這篇文章主要介紹了mybatis @SelectProvider 注解的相關(guān)知識(shí),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2020-12-12
  • Java如何連接數(shù)據(jù)庫圖文教程

    Java如何連接數(shù)據(jù)庫圖文教程

    關(guān)于java數(shù)據(jù)庫的文章早已是非常多了,本文是對(duì)我個(gè)人過往學(xué)習(xí)java數(shù)據(jù)庫,理解及應(yīng)用java數(shù)據(jù)庫的一個(gè)總結(jié),下面這篇文章主要給大家介紹了關(guān)于Java如何連接數(shù)據(jù)庫的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • 從零開始:快速入門SpringBoot注解的精髓

    從零開始:快速入門SpringBoot注解的精髓

    Spring?Boot是一個(gè)用于快速構(gòu)建基于Spring框架的應(yīng)用程序的開源框架,它通過使用注解來簡化配置和開發(fā)過程,使開發(fā)人員能夠更加專注于業(yè)務(wù)邏輯的實(shí)現(xiàn),Spring?Boot提供了許多注解,用于定義和配置應(yīng)用程序的各個(gè)方面,需要的朋友可以參考下
    2023-10-10
  • 詳細(xì)總結(jié)Java中常用的原子類

    詳細(xì)總結(jié)Java中常用的原子類

    今天給大家總結(jié)了一下Java常用的原子類,文中有非常詳細(xì)的介紹及代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們很有幫助,需要的朋友可以參考下
    2021-05-05
  • Java多線程、進(jìn)度條實(shí)現(xiàn)賽馬實(shí)驗(yàn)的示例代碼

    Java多線程、進(jìn)度條實(shí)現(xiàn)賽馬實(shí)驗(yàn)的示例代碼

    這篇文章主要介紹了Java多線程、進(jìn)度條實(shí)現(xiàn)賽馬實(shí)驗(yàn)的示例代碼,代碼簡單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 跨域解決方案Jsonp原理解析

    跨域解決方案Jsonp原理解析

    這篇文章主要介紹了跨域解決方案Jsonp原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • 解決使用IDEA時(shí)跳轉(zhuǎn)到.class的問題

    解決使用IDEA時(shí)跳轉(zhuǎn)到.class的問題

    這篇文章主要介紹了解決使用IDEA時(shí)跳轉(zhuǎn)到.class的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • JAVA設(shè)置手動(dòng)提交事務(wù),回滾事務(wù),提交事務(wù)的操作

    JAVA設(shè)置手動(dòng)提交事務(wù),回滾事務(wù),提交事務(wù)的操作

    這篇文章主要介紹了JAVA設(shè)置手動(dòng)提交事務(wù),回滾事務(wù),提交事務(wù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 淺述int與string類型轉(zhuǎn)換的兩種方法

    淺述int與string類型轉(zhuǎn)換的兩種方法

    這篇文章主要介紹了Java中int與string類型轉(zhuǎn)換的兩種方法的相關(guān)資料,需要的朋友可以參考下
    2016-05-05

最新評(píng)論