亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        前后端分離Web系統(tǒng)下一種訪問控制方法的設計與實現(xiàn)

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

        宋清卿

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

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

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

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

        1 基于角色的訪問控制

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

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

        2 訪問控制方法的設計

        2.1 總體思路

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

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

        其目的是使開發(fā)者在編寫API時僅需專注于業(yè)務邏輯的編寫,而用戶訪問控制模塊的編寫只需要根據(jù)系統(tǒng)的需要配置并實現(xiàn)Spring MVC攔截器后設置API的訪問路徑即可。

        2.2 角色權限控制方法設計

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

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

        国产另类av一区二区三区| 五月综合激情婷婷六月| 久久99精品久久久久久9蜜桃| 丰满爆乳无码一区二区三区| 国产在线视频h| 日本免费一区二区久久久| 日韩有码在线观看视频| 中国人妻与老外黑人| 天码av无码一区二区三区四区 | 日本老熟妇50岁丰满| 永久免费的av在线电影网无码| 国产高清无码在线| av网址不卡免费在线观看| 亚洲自拍偷拍色图综合| 国产裸体舞一区二区三区| 国产精品多人P群无码| 男子把美女裙子脱了摸她内裤| 久久在一区二区三区视频免费观看 | 国产一级黄色av影片| 国产免费在线观看不卡| 99riav国产精品视频| 成人网站免费看黄a站视频| 性久久久久久久| 国产精品伦人视频免费看| 亚洲国产日韩一区二区三区四区| 欧美多人片高潮野外做片黑人| 麻豆精产国品| 亚洲一区二区三区在线| 蜜桃成熟时在线观看免费视频| 中文成人无码精品久久久不卡 | 免费看美女被靠的网站| 激情五月天伊人久久| 亚洲综合在线一区二区三区| 一本久道高清视频在线观看| 亚洲国产午夜精品理论片在线播放| 日日摸日日碰人妻无码老牲| 在线观看播放免费视频| 亚洲人成网站色7799| 最新亚洲av日韩av二区| 中文精品久久久久中文| 国产乱人伦偷精品视频还看的|