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

RESTful Web API模式下基于角色的權限管理設計與實現

2018-06-05 10:05:44宋朝輝
科技創新導報 2017年36期

宋朝輝

摘 要:結合基于角色的訪問控制原理,實現基于RESTful API模式的權限管理。圍繞用戶、角色、功能的基本定義及它們之間的關系進行API編碼,實現了靈活、實用的基于角色的權限管理功能,達到靈活多變的權限控制。基于API的接口定義和訪問機制,提高了系統的安全性和多終端的便捷訪問,實際應用表明,該方式具有很好的可擴展性和通用性。

關鍵詞:權限管理 角色訪問 API

中圖分類號:TP31 文獻標識碼:A 文章編號:1674-098X(2017)12(c)-0136-03

現在是多終端的應用系統時代,應用系統不僅要在PC上運行,同時還需要在平板、智能手機端運行,實現方便快捷的管理和應用。傳統的B/S模式下的權限管理方式已經不能滿足現在的需求。

雖然現在市場上的實現方式很多,但API模式是大家都比較認可的,使用面也非常廣泛。API模式下所有的訪問接口面向外界是完全暴露的,由于API自身的特點,本文提出了基于API模式下權限訪問控制的全面解決方法。

用戶在Author 2.0授權訪問登錄系統后,通過用戶-角色-權限的關系,獲取到該用戶可以完成的功能及對這些功能的操作權限,回送給終端,終端可以通過功能及權限來控制用戶的操作,當有越權訪問情況發生時,API服務端也會進行訪問控制權限驗證,對于沒有訪問權限的操作直接略過。

1 RESTful及RESTful Web API

REST從資源的角度來觀察整個網絡,分布在各處的資源由URI確定,而客戶端的應用通過URI來獲取資源的表示方式。REST是設計風格而不是標準。REST通常基于使用HTTP、URI、XML以及HTML這些現有的廣泛流行的協議和標準。資源是由URI來指定,資源的操作包括獲取、創建、修改和刪除資源,這些操作正好對應HTTP協議提供的GET、POST、PUT和DELETE方法。

RESTful Web服務(也稱為 RESTful Web API)是一個使用HTTP并遵循REST原則的Web服務。它從以下3個方面資源進行定義:

(1)URI,比如:http://example.com/resources/。

(2)Web服務接受與返回的互聯網媒體類型,比如:JSON、XML、YAML等。

(3)Web服務在該資源上所支持的一系列請求方法,比如:POST、GET、PUT、DELETE。

2 角色、用戶、權限之間的關系

角色是具備一定操作權限的用戶組。

權限是資源與操作的一套組合,例如“增加用戶”是一種權限,“刪除用戶”是一種權限,所以對于一種資源所對應的權限有且只有4種,如圖1所示。

角色、用戶、權限之間的關系如圖2所示,三者之間的關系如下。

(1)角色與用戶的關系:一個角色對應一群用戶,一個用戶也可以扮演多個角色,所以它們是多對多的關系。

(2)角色與權限的關系:一個角色擁有一堆權限,一個權限卻只能屬于一個角色,所以它們是一(角色)對多(權限)的關系。

(3)權限與用戶的關系:由于一個用戶可以扮演多個角色,一個角色擁有多個權限,所以用戶與權限是間接的多對多關系。

3 數據庫設計

具體情況見表1~表4。

4 權限管理具體實現

4.1 基于PHP Slim框架下權限管理具體實現

系統采用PHP Slim框架進行開發實現,Slim是一款PHP微框架,可以幫助我們快速編寫簡單但功能強大的 web應用和API。Slim應用程序的每個路由都將當前的請求對象和響應對象作為它的回調例程的參數。這些對象實現了流行的PSR 7接口。Slim應用的路由可以必要地檢查或操作這些對象。最終,每個Slim應用路由必然返回一個 PSR 7響應對象。本文中Slim部分路由配置:

$app->group('/platform', function () {

$this->group('/menus', function () {

$this->get('/usermenus', '\MenuService:userMenus');

$this->get('[/{id}]', '\MenuService:get');

$this->post('/add', '\MenuService:add');

$this->put('/update', '\MenuService:update');

$this->delete('/delete/{id}', '\MenuService:delete');

});

$this->group('/roles', function () {

$this->get('/menuids', '\RoleService:getMenuIds');

$this->get('[/{id}]', '\RoleService:get');

$this->post('/grant', '\RoleService:grant');

$this->post('/revoke', '\RoleService:revoke');

$this->post('/add', '\RoleService:add');

$this->put('/update', '\RoleService:update');

$this->delete('/delete/{id}', '\RoleService:delete');

});

});

4.2 實際應用界面

本權限管理模塊已經成功應用于某國企信息管理平臺、調試平臺等實際項目中,并取得了良好的效果。具體界面(部分)見圖3、圖4。

5 結語

本文的權限管理模塊遵循RESTful Web API模式設計,將前端與后端服務有效分離,滿足多終端的訪問使用。

本系統在實際使用中通過Author 2.0做用戶認證模式,更提高了系統的安全性。在實際應用中,權限系統提交給用戶使用前,至少要建立一個缺省的管理員用戶,并且不能被刪除,以保證系統能正常運行。

本系統使用PHP的Slim框架進行API開發,使得API開發簡捷化,開發思路清晰化,易于管理與擴展,有效提高了開發效率,也滿足了高并發高吞吐量。同時該設計充分考慮了API系統權限控制的需求,能適用于大部分API的權限控制,具有很強的適用性和推廣價值。

參考文獻

[1] Gourley,Brian Totty,Marjorie Sayer,et al.HTTP:The Definitive Guide[M].O`Reilly Media,2002.

[2] 暴志剛,胡艷軍,顧新建.基于Web的系統權限管理實現方法[J].計算機工程,2006,32(1):169-170.

[3] Richard Stevens.TCP/IP Illustrated (Volumn 1:The Protocol)[M].Addison-Wesley Professional,2011.

[4] 高正憲,李中學.Web環境下基于角色的訪問控制策略及實現[J].計算機工程,2004,30(8):133-135.

[5] 邢光林,洪帆.基于角色和任務的工作流訪問控制模型[J].計算機工程與應用,2005,41(2):210-213.

主站蜘蛛池模板: 香蕉在线视频网站| 国产一级做美女做受视频| a级毛片在线免费观看| 国产精品99一区不卡| 最新痴汉在线无码AV| 亚洲成人一区二区三区| 欧美视频在线不卡| 无码精品福利一区二区三区| 日本成人精品视频| 国产欧美日韩资源在线观看| 国产精品露脸视频| 欧美精品成人一区二区在线观看| 综合五月天网| 视频二区国产精品职场同事| 人妻精品久久无码区| 国产原创演绎剧情有字幕的| 国产精品福利社| 中文无码伦av中文字幕| 91精品亚洲| 国产女人在线观看| 国产91特黄特色A级毛片| 成人亚洲国产| 2024av在线无码中文最新| 一级成人a做片免费| 国产三级a| 99激情网| 制服丝袜国产精品| 国产精品yjizz视频网一二区| 天天婬欲婬香婬色婬视频播放| 成人国内精品久久久久影院| 亚洲欧美国产五月天综合| 国产精品久久久久久搜索| 在线观看视频一区二区| 热这里只有精品国产热门精品| 四虎永久在线精品影院| 国产成人精彩在线视频50| 成人午夜精品一级毛片 | 亚洲无线视频| 国产素人在线| AV无码一区二区三区四区| 国产一区二区三区免费观看| a毛片在线免费观看| 国产福利不卡视频| 亚洲精品高清视频| 九色综合伊人久久富二代| 国产一级在线播放| AV色爱天堂网| 四虎国产永久在线观看| 国产免费久久精品44| 亚洲人成网线在线播放va| 黄色网页在线播放| 免费在线a视频| yy6080理论大片一级久久| 十八禁美女裸体网站| 亚洲男人在线| 一级在线毛片| 一级毛片基地| 99视频在线免费| 青青草国产在线视频| 精品国产中文一级毛片在线看| 99国产在线视频| 国产99视频精品免费视频7| 亚洲精品午夜天堂网页| 欧美一区日韩一区中文字幕页| 中国国产高清免费AV片| 精品三级网站| 国产女人18水真多毛片18精品 | 99视频在线观看免费| 91综合色区亚洲熟妇p| 国产精品免费露脸视频| 久久精品国产免费观看频道| 婷婷丁香在线观看| 看你懂的巨臀中文字幕一区二区| 无码国产偷倩在线播放老年人| 国产精品专区第1页| 国产污视频在线观看| 亚洲精品无码成人片在线观看 | 欧美三级不卡在线观看视频| 成人中文在线| 国产精品中文免费福利| 欧亚日韩Av| 国产AV无码专区亚洲A∨毛片|