你們心心念唸的權限管理功能,此次安排上了!

SpringBoot實戰電商項目mall(25k+star)地址:github.com/macrozheng/…前端

摘要

mall項目的權限管理功能發佈啦!權限管理做爲後臺管理系統的必要功能,mall項目以前的權限管理並不完善。最近我對原先的權限管理進行了從新設計,打造了一套切實可用的權限管理功能。git

功能清單

  • 菜單管理:能夠實現對後臺管理系統左側菜單的管理,支持更換圖標、更換名稱、控制菜單顯示和排序;
  • 資源管理:實現了基於訪問路徑的後臺動態權限控制,控制的權限能夠精確到接口級別;
  • 角色管理:能夠自定義角色,併爲角色分配菜單和資源;
  • 後臺用戶管理:能夠對後臺用戶進行管理並分配角色,支持分配多個角色。

功能介紹

接下了咱們對權限管理功能作個介紹,演示一個完整的權限管理的流程。github

菜單管理

菜單主要是指管理後臺左側的菜單,管理功能可用於控制其隱藏顯示及更換圖片名稱和排序,目前僅支持二級菜單。web

  • 查看菜單列表,能夠控制隱藏顯示及刪除;

  • 添加及編輯菜單,能夠更改菜單的基本屬性,不過只能添加前端項目路由中定義的菜單,而且前端名稱要與前端項目中定義的路由名稱一致;

  • 菜單排序,給菜單設置排序後,菜單將按照設置的排序降序進行顯示。

資源管理

所謂資源就是後臺的接口,能夠是單個接口,也能夠是一系列接口的集合。這裏咱們使用了基於Ant的路徑匹配,當後臺用戶訪問某個接口時,若是這個後臺用戶分配了該資源就能夠訪問,不然沒法訪問。默認狀況下,若是你沒有對某個接口配置資源,則該資源直接容許訪問。sql

  • 查看資源列表,目前的資源是按控制器級別配置的,即一個控制器中全部的接口定義爲一個資源,也能夠配置到接口級別;

  • 添加及編輯資源,這裏咱們添加了一個資源分類的概念,便於之後的資源分配;

角色管理

用於對後臺用戶角色進行管理,咱們能夠給角色分配指定的菜單和資源,這樣被分配了角色的後臺用戶就能夠訪問這些菜單和資源了。後端

  • 查看角色列表,這裏咱們須要注意下這三個角色商品管理員訂單管理員超級管理員

  • 添加及編輯角色用於管理角色的基本屬性;

  • 分配菜單,能夠給角色分配容許訪問的菜單;

  • 分配資源,能夠給角色分配容許訪問的後臺資源;

後臺用戶管理

用於對後臺用戶進行管理,直接修改信息(包括修改密碼)及分配角色。學習

  • 查看用戶列表,能夠控制賬號的啓用狀態及刪除賬號;

  • 添加及編輯用戶,能夠管理用戶的基本信息及修改密碼;

  • 分配角色,能夠爲用戶分配角色,指定角色用戶能夠訪問指定菜單和資源。

動態菜單控制

這裏咱們來演示下動態菜單的控制,咱們有兩個後臺用戶,系統管理員和商品管理員,系統管理員分配了全部菜單,商品管理員只分配了商品相關的菜單。設計

  • 使用系統管理員賬號登陸,左側顯示了全部菜單:

  • 使用商品管理員賬號登陸,左側僅顯示商品相關菜單:

動態資源控制

這裏咱們來演示下動態資源的控制,咱們給商品管理員只分配了商品相關的資源,他沒法訪問其餘資源。code

  • 將訂單相關菜單開放給商品管理員,可是並無給他分配訂單相關的資源;

  • 因爲沒有給商品管理員分配訂單模塊相關後臺資源,因此當商品管理員訪問訂單模塊時會提示沒有相關權限。

項目源碼地址

友情提醒,須要導入項目中document文件夾下最新的sql文件,再下載最新的先後端代碼才能體驗該功能!cdn

公衆號

mall項目全套學習教程連載中,關注公衆號第一時間獲取。

公衆號圖片
相關文章
相關標籤/搜索