999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

前后端分離Web系統下一種訪問控制方法的設計與實現

2020-06-04 09:39:03宋清卿
計算機時代 2020年5期

宋清卿

摘? 要: 為了在不降低系統性能的前提下,提升前后端分離Web系統內訪問控制模塊的開發效率,介紹了一種以基于角色的訪問控制為核心思想 ,通過解析特定格式的API訪問地址來調用不同的Spring MVC攔截器以決定控制策略的訪問控制模塊開發方法。該方法實現了在前后端分離Web系統開發過程中,業務邏輯與訪問控制分離,使開發者在擴展與維護系統訪問控制模塊時能夠通過修改所涉及到功能的API訪問地址使其變得更加輕松與便捷。

關鍵詞: 前后端分離; 基于角色的訪問控制; Spring MVC攔截器; 開發效率

Abstract: In order to improve the development efficiency of access control module of Web system with frontend-backend separation, without degrading the system performance, this paper introduces an access control module development method which takes Role-Based Access Control (RBAC) as the main part and calls different spring MVC interceptors to determine the control strategy by parsing the API access address in specific format. In the development process of web system with frontend-backend separation, the business logic is separated from the access control, so that the developer can modify the function-related API access address when extending and maintaining the system access control module, make it easier and more convenient.

0 引言

當前Web系統正開始向著多平臺、高性能的方向發展,伴隨著模塊化和組件化理念的出現,前后端分離的開發模式已成為當下的一種發展趨勢。傳統模式下開發的Web系統前后端工作并非獨立[1],可以直接使用Spring AOP來判斷用戶是否擁有某一功能的訪問權限,而前后端分離模式下開發的Web系統獲取、操作資源完全通過前端向指定API發送請求來完成,不直接調用后端中的功能實現代碼[2],所以傳統的訪問控制方法并不適用于前后端分離Web系統。

針對前后端分離的開發模式,本文提出了一種高代碼復用率、以角色訪問控制為核心思想并包含請求類型判斷的訪問控制方法,以求在不降低系統性能的情況下提升開發效率,并通過實際系統的開發實踐證明該訪問控制方法的有效性。

1 基于角色的訪問控制

基于角色的訪問控制(RBAC:Role-Based Access Control)是一種經典的權限控制解決方案,其核心思想是將操作、獲取資源的權限分配到相應的角色,每一個用戶擔任一定角色,通過擔任的角色間接獲取到獲取、操作資源的權限[3]。該種解決方案的特點是與用戶相比角色相對穩定,可以減輕系統安全管理的負擔并不失靈活性[4]。

本文設計并實現的訪問控制方法采用基于角色的訪問控制方式,即:當用戶發送請求來獲取、操作資源時,系統先獲取用戶的角色信息,然后通過分析用戶所對應角色的權限來判斷該用戶所是否具有獲取、操作資源的權限,若該用戶所對應的角色具有相應的權限,則繼續執行請求。若該用戶所對應角色不具有相應權限,則駁回請求[5]。

2 訪問控制方法的設計

2.1 總體思路

目前在多數的Web系統中,用戶具有登錄與未登錄兩種狀態,在登錄與未登錄兩種狀態下,用戶會對應不同的角色,所以依據不同的狀態可以將用戶發出的請求分為兩種:無需登錄驗證請求、需登錄驗證請求,需登錄驗證請求具體又分為僅需登錄驗證請求與需角色驗證請求。判斷請求類型的方法有多種,如在請求中攜帶參數,或是在業務邏輯代碼中進行判斷等。本文針對前后端分離Web系統所有前端與后端的交互皆是通過API來完成的特點,設計了一種通過API的訪問路徑來判斷該請求所屬類型的方法。

方法的總體思路是在系統中約定一種可判斷請求類型的API訪問路徑,通過API訪問路徑間接攜帶參數,對只有特定用戶的狀態或角色才具有訪問權限的API的訪問路徑進行標記,當用戶向API發送請求時,通過完全獨立于業務處理代碼之外的Spring MVC攔截器在進入業務處理流程前判斷該用戶此次請求的API的路徑中有無標記,若該用戶此次請求的API的路徑中有標記則認定此次請求為需權限驗證的請求并進入相應的訪問控制流程進行進一步判斷,若該用戶此次請求的API的路徑中無標記,則認定此次請求為無需權限驗證請求,且不進入相應的訪問控制流程直接處理請求。

其目的是使開發者在編寫API時僅需專注于業務邏輯的編寫,而用戶訪問控制模塊的編寫只需要根據系統的需要配置并實現Spring MVC攔截器后設置API的訪問路徑即可。

2.2 角色權限控制方法設計

考慮到復雜的實際應用環境,這里將引入權限集的概念來解決在實際開發過程中,不同角色之間所擁有的權限相互交叉的情況。

權限集是由多個具有某種相同特征的具體操作權限而組成的權限集合。每個角色具有一個或多個權限集的權限,多個角色可共同擁有某一個權限集的權限。通過建立權限集的方法,對角色的權限控制,實現了模塊化控制角色權限的目的。表1為該角色權限控制方法下角色對象所需包含的信息。

主站蜘蛛池模板: 四虎影视8848永久精品| 久久亚洲美女精品国产精品| 欧美亚洲网| 亚洲香蕉在线| 亚洲国产清纯| 呦女亚洲一区精品| 国产乱论视频| 不卡视频国产| 中文字幕免费视频| 欧美日韩成人| 92午夜福利影院一区二区三区| 国产高清在线观看91精品| 无码中文字幕乱码免费2| 久久人搡人人玩人妻精品| 国产专区综合另类日韩一区| 青青青草国产| 一本大道无码日韩精品影视| 亚洲综合色婷婷中文字幕| 国产另类视频| 国产一区二区精品高清在线观看| 免费高清a毛片| 午夜精品区| 99热国产在线精品99| 欧美亚洲国产视频| 国产一区二区在线视频观看| 亚洲资源在线视频| 亚洲一区无码在线| 在线观看91香蕉国产免费| 亚洲国产理论片在线播放| 国产精品太粉嫩高中在线观看| 久久久久国产精品熟女影院| 91在线丝袜| 国产在线自乱拍播放| 国内精品久久久久久久久久影视| 亚洲成人黄色网址| 国产白浆视频| 日韩在线中文| 亚洲成在线观看| 91九色视频网| 亚洲成网777777国产精品| 日韩二区三区无| 91精选国产大片| 99久久精品免费观看国产| 亚洲va在线观看| 久久亚洲综合伊人| 国产欧美日韩一区二区视频在线| 国产18在线播放| 色综合狠狠操| 无码'专区第一页| 精品一区二区三区无码视频无码| 国产成人免费手机在线观看视频| 成年女人a毛片免费视频| 午夜毛片免费观看视频 | av在线无码浏览| 国产真实乱了在线播放| 欧美亚洲欧美区| 中文字幕第4页| 国产第一页亚洲| 亚洲成人手机在线| 黄色网站在线观看无码| 一级福利视频| 黄色一及毛片| 亚洲成A人V欧美综合| 国产黄在线免费观看| 99国产精品国产| 国产激情国语对白普通话| 97青草最新免费精品视频| 国产成人乱无码视频| 国产日本欧美亚洲精品视| 日本免费精品| 中美日韩在线网免费毛片视频| 91美女在线| 国产99精品久久| 国产免费福利网站| 亚洲精品成人片在线观看| 日韩在线播放欧美字幕| 四虎影视库国产精品一区| 五月天丁香婷婷综合久久| 色欲不卡无码一区二区| 激情综合网址| 亚洲天堂777| 亚洲一区二区三区麻豆|