国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

019-從零搭建微服務(wù)-認(rèn)證中心(八)

這篇具有很好參考價值的文章主要介紹了019-從零搭建微服務(wù)-認(rèn)證中心(八)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

寫在最前

如果這個項目讓你有所收獲,記得 Star 關(guān)注哦,這對我是非常不錯的鼓勵與支持。

源碼地址(后端):https://gitee.com/csps/mingyue-springcloud-learning

源碼地址(前端):https://gitee.com/csps/mingyue-springcloud-ui

文檔地址:https://gitee.com/csps/mingyue-springcloud-learning/wikis

開胃小菜

我們現(xiàn)在已經(jīng)可以通過登錄獲取用戶擁有的角色和菜單權(quán)限,但截止目前還沒有給接口增加權(quán)限點,本章就是通過給接口增加權(quán)限點,精細(xì)控制接口權(quán)限。

獲取當(dāng)前登錄用戶全部信息

接口返回如下,這里我們看到 mingyue 擁有 system:user:list 權(quán)限

{
  "code": 200,
  "msg": "操作成功",
  "data": {
    "sysUser": {
      "userId": 1,
      "username": "mingyue",
      "nickname": "明月",
      "sex": "0",
      "password": null,
      "phone": "13288888888",
      "email": null,
      "avatar": null,
      "status": "0",
      "isDeleted": "0",
      "createTime": "2023-07-19T17:06:22",
      "updateTime": "2023-07-19T17:06:25",
      "createBy": "mingyue",
      "updateBy": "mingyue"
    },
    "menuPermission": [
      "system:user:list"
    ],
    "rolePermission": [
      "admin"
    ]
  }
}

添加接口權(quán)限

通過 獲取所有用戶信息 接口演示添加接口權(quán)限,此時該接口還沒有增加權(quán)限點攔截,此時我們登錄后訪問該接口可以正常返回數(shù)據(jù)。

增加權(quán)限點

添加注解 @SaCheckPermission("system:user:list")

@GetMapping("list")
@SaCheckPermission("system:user:list")
@Operation(summary = "獲取所有用戶信息")
public R<List<SysUser>> getSysUsers() {
  return R.ok(sysUserService.list());
}

訪問測試

我們用戶不是擁有 system:user:list 權(quán)限點么?為何訪問接口報錯:無此權(quán)限:system:user:list。因為我們并未告訴 Sa-Token 我們擁有 system:user:list 權(quán)限點,接下來我們在 Sa-Token 中添加用戶擁有的權(quán)限點。

{
  "code": 500,
  "msg": "無此權(quán)限:system:user:list",
  "data": null
}

Sa-Token 添加用戶擁有的權(quán)限點

1. Sa-Token 權(quán)限管理實現(xiàn)
/**
 * Sa-Token 權(quán)限管理實現(xiàn)
 *
 * @author Strive
 * @date 2023/8/8 14:54
 */
public class SaPermissionImpl implements StpInterface {

    @Override
    public List<String> getPermissionList(Object loginId, String loginType) {
        LoginUser loginUser = LoginHelper.getLoginUser();
        System.out.println(JSONUtil.toJsonStr(loginUser.getMenuPermission()));
        return new ArrayList<>(loginUser.getMenuPermission());
    }

    @Override
    public List<String> getRoleList(Object loginId, String loginType) {
        LoginUser loginUser = LoginHelper.getLoginUser();

        return new ArrayList<>(loginUser.getRolePermission());
    }
}
2. Sa-Token 配置注入權(quán)限接口實現(xiàn)
@AutoConfiguration
public class SaTokenConfiguration {

    /**
     * 權(quán)限接口實現(xiàn)(使用bean注入方便用戶替換)
     */
    @Bean
    public StpInterface stpInterface() {
        return new SaPermissionImpl();
    }

}

再次訪問測試

此時接口已經(jīng)可以訪問啦,快試試吧!

{
  "code": 200,
  "msg": "操作成功",
  "data": [
    {
      "userId": 1,
      "username": "mingyue",
      "nickname": "明月",
      "sex": "0",
      "password": "123456",
      "phone": "13288888888",
      "email": null,
      "avatar": null,
      "status": "0",
      "isDeleted": "0",
      "createTime": "2023-07-19T17:06:22",
      "updateTime": "2023-07-19T17:06:25",
      "createBy": "mingyue",
      "updateBy": "mingyue"
    },
    ... ...
  ]
}

MingYue-UI 替換后端菜單

修改路由控制

修改 themeConfig.ts 配置文件切換后端接口加載路由菜單

true:開啟后端控制路由

false:開啟前端控制路由

// 是否開啟后端控制路由  
isRequestRoutes: true,

更新路由接口

mingyue-ui/src/api/menu/index.ts

getMenu: (params?: object) => {
  return request({
    url: '/api/system/sysMenu/getRouters',
    method: 'get',
    params,
  });
}

數(shù)據(jù)腳本

更新菜單數(shù)據(jù),數(shù)據(jù)源:docker/mysql/mingyue.sql

小結(jié)

終于可以精細(xì)控制后端接口權(quán)限了,前端路由也通過后端接口加載了。

接下來我們修改一下用戶密碼吧,目前還是明文傳輸,非常的不安全~文章來源地址http://www.zghlxwxcb.cn/news/detail-641841.html

到了這里,關(guān)于019-從零搭建微服務(wù)-認(rèn)證中心(八)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • SpringSecurity+OAuth2.0 搭建認(rèn)證中心和資源服務(wù)中心

    SpringSecurity+OAuth2.0 搭建認(rèn)證中心和資源服務(wù)中心

    目錄 ? 1. OAuth2.0 簡介 2. 代碼搭建? 2.1 認(rèn)證中心(8080端口) 2.2 資源服務(wù)中心(8081端口) 3. 測試結(jié)果 ? OAuth 2.0(開放授權(quán) 2.0)是一個開放標(biāo)準(zhǔn),用于授權(quán)第三方應(yīng)用程序訪問用戶在資源所有者(用戶)的帳戶上存儲的受保護(hù)資源,而無需共享用戶憑據(jù)。OAuth 2.0 主要用于在

    2024年01月22日
    瀏覽(21)
  • 從零開始搭建游戲服務(wù)器 第一節(jié) 創(chuàng)建一個簡單的服務(wù)器架構(gòu)

    從零開始搭建游戲服務(wù)器 第一節(jié) 創(chuàng)建一個簡單的服務(wù)器架構(gòu)

    由于現(xiàn)在java web太卷了,所以各位同行可以考慮換一個賽道,做游戲還是很開心的。 本篇教程給新人用于學(xué)習(xí)游戲服務(wù)器的基本知識,給新人們一些學(xué)習(xí)方向,有什么錯誤的地方歡迎各位同行進(jìn)行討論。 本篇教程預(yù)計使用Java+Redis+Mongo 本著先完成再完美的原則,從最簡單的

    2024年02月10日
    瀏覽(19)
  • 專為云原生、微服務(wù)架構(gòu)而設(shè)計的鏈路追蹤工具 【SkyWalking介紹及搭建】

    專為云原生、微服務(wù)架構(gòu)而設(shè)計的鏈路追蹤工具 【SkyWalking介紹及搭建】

    服務(wù)鏈路追蹤已成為不可或缺的一環(huán) skywalking是一個優(yōu)秀的 國產(chǎn) 開源框架,2015年由個人 吳晟 (華為開發(fā)者)開源 , 2017年加入apache 孵化器。 skywalking是分布式系統(tǒng)的應(yīng)用 程序性能監(jiān)視工具 ,專為微服務(wù)、云原生架構(gòu)和基于容器化技術(shù) (docker、K8s、Mesos)架構(gòu)而設(shè)計,它是

    2023年04月08日
    瀏覽(87)
  • 信息安全服務(wù)資質(zhì)認(rèn)證CCRC證書‖中國網(wǎng)絡(luò)安全審查技術(shù)與認(rèn)證中心

    信息安全服務(wù)資質(zhì)認(rèn)證CCRC證書‖中國網(wǎng)絡(luò)安全審查技術(shù)與認(rèn)證中心

    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 中國網(wǎng)絡(luò)安全審查技術(shù)與認(rèn)證中心(英文縮寫為:CCRC,原為中國信息安全認(rèn)證中心)于2006年由中央機構(gòu)編制委員會辦公室批準(zhǔn)成立,為國家市場監(jiān)督管理總局直屬正司局級事業(yè)單位。依據(jù)《網(wǎng)絡(luò)安全法》《網(wǎng)絡(luò)安全審查辦法》及國家

    2024年02月13日
    瀏覽(29)
  • 企業(yè)申請數(shù)據(jù)中心基礎(chǔ)設(shè)施綠色建維服務(wù)認(rèn)證需要注意哪些方面?

    數(shù)據(jù)中心基礎(chǔ)設(shè)施綠色建維服務(wù)認(rèn)證是一種針對數(shù)據(jù)中心建設(shè)和維護(hù)的全流程認(rèn)證,旨在確保數(shù)據(jù)中心的基礎(chǔ)設(shè)施在建設(shè)、運行和維護(hù)過程中均符合綠色環(huán)保的標(biāo)準(zhǔn)。該認(rèn)證由獨立的第三方機構(gòu)進(jìn)行評估和審核,針對數(shù)據(jù)中心的能源效率、設(shè)備健康狀況、運營管理等方面進(jìn)行

    2024年01月21日
    瀏覽(20)
  • 從零到一搭建netcore6.0 webapi+swagger+jwt認(rèn)證+aop日志+mysql codefirst模式

    從零到一搭建netcore6.0 webapi+swagger+jwt認(rèn)證+aop日志+mysql codefirst模式

    本文介紹從零到一搭建基于netcore6.0版本的 webapi接口應(yīng)用 包括swagger接口管理文檔 jwt接口安全認(rèn)證 aop接口調(diào)用軌跡日志 ef映射mysql 使用codefirst模式交互數(shù)據(jù)庫 首先新建一個webapi應(yīng)用 此次默認(rèn)配置HTTPS默認(rèn)是勾選的 此處沒用到暫時不進(jìn)行勾選 可以刪除這2個默認(rèn)的文件 首先我

    2024年02月04日
    瀏覽(19)
  • 微服務(wù)架構(gòu)+服務(wù)注冊中心+Nacos和Eureka+比較分析

    Nacos和Eureka都是常用的服務(wù)注冊中心,它們可以實現(xiàn)服務(wù)的注冊、發(fā)現(xiàn)、負(fù)載均衡等功能,但是它們也有一些區(qū)別和優(yōu)缺點。本資源將從功能特性、生態(tài)系統(tǒng)、CAP理論、連接方式、服務(wù)異常剔除、操作實例方式、自我保護(hù)機制等方面,詳細(xì)比較和分析Nacos和Eureka的區(qū)別。本資源

    2024年02月21日
    瀏覽(23)
  • 【云原生 Prometheus篇】Prometheus的動態(tài)服務(wù)發(fā)現(xiàn)機制與認(rèn)證配置

    【云原生 Prometheus篇】Prometheus的動態(tài)服務(wù)發(fā)現(xiàn)機制與認(rèn)證配置

    基于文件的服務(wù)發(fā)現(xiàn)是僅僅略優(yōu)于靜態(tài)配置的服務(wù)發(fā)現(xiàn)方式,它不依賴于任何平臺或第三方服務(wù),因而也是最為簡單和通用的實現(xiàn)方式。 Prometheus Server 會定期從文件中加載 Target 信息,文件可使用 YAML 和 JSON 格式,它含有定義的 Target 列表,以及可選的標(biāo)簽信息。 下載地址:

    2024年01月21日
    瀏覽(17)
  • 鴻蒙原生應(yīng)用元服務(wù)實戰(zhàn)-Serverless華為賬戶認(rèn)證登錄需盡快適配

    鴻蒙原生應(yīng)用元服務(wù)實戰(zhàn)-Serverless華為賬戶認(rèn)證登錄需盡快適配

    一、ArkTSAPI9,服務(wù)器端基于serverless開發(fā)的應(yīng)用與元服務(wù)華為賬號注冊登錄功能暫時是不支持的 二、3月1日后的審核要求 3月1日的時間是快到了。 三、會導(dǎo)致的結(jié)果 使用了ArkTSAPI9,服務(wù)器端基于serverless開發(fā)的應(yīng)用與元服務(wù),如果要每個應(yīng)用元服務(wù)去自己開發(fā)適配的話,不知

    2024年02月21日
    瀏覽(25)
  • 微服務(wù)架構(gòu)學(xué)習(xí)與思考(13):分布式配置中心

    微服務(wù)架構(gòu)學(xué)習(xí)與思考(13):分布式配置中心

    微服務(wù)架構(gòu)系列文章集合:https://www.cnblogs.com/jiujuan/p/17307285.html 用編程語言編寫應(yīng)用項目時,一般都會有項目的配置文件。比如用 java 編寫項目,有一個 properties 的配置文件,會把一些配置信息寫入到該文本文件中,例如數(shù)據(jù)庫相關(guān)的配置信息。 這也體現(xiàn)了軟件設(shè)計的一個原

    2024年02月06日
    瀏覽(36)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包