99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹-創(chuàng)新互聯(lián)

前面幾篇文章介紹了單點(diǎn)登錄的本質(zhì),包括cookie、session、重定向的基本概念,單點(diǎn)登錄的基本交互流程,cookie的重要性和安全問(wèn)題。單點(diǎn)登錄能夠確保:必須通過(guò)身份驗(yàn)證后,才能訪問(wèn)網(wǎng)站,且訪問(wèn)多個(gè)系統(tǒng)時(shí),只需要登錄一次。

創(chuàng)新互聯(lián)是專業(yè)的尋甸網(wǎng)站建設(shè)公司,尋甸接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行尋甸網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!

一般系統(tǒng)都會(huì)有多個(gè)角色,不同角色可訪問(wèn)的系統(tǒng)功能不同,通過(guò)給用戶分配不同角色,決定用戶可訪問(wèn)的系統(tǒng)功能。

繼續(xù)介紹「單點(diǎn)登錄與權(quán)限管理」系列的第一部分:?jiǎn)吸c(diǎn)登錄與權(quán)限管理本質(zhì),本篇說(shuō)說(shuō)權(quán)限管理,主要從以下幾個(gè)方面介紹:

  • 權(quán)限管理的一般模型
  • 權(quán)限驗(yàn)證范圍
  • Shiro基本架構(gòu)和擴(kuò)展點(diǎn)
  • 系列第一部分總結(jié)
權(quán)限管理的一般模型

權(quán)限驗(yàn)證的過(guò)程比較簡(jiǎn)單,描述如下:

  1. 用戶登錄成功后,會(huì)將自己的個(gè)人信息和權(quán)限信息,保存到session中,可以存儲(chǔ)在內(nèi)存、redis中;
  2. 用戶訪問(wèn)其他頁(yè)面時(shí),會(huì)根據(jù)訪問(wèn)路徑,與用戶權(quán)限數(shù)據(jù)進(jìn)行匹配,驗(yàn)證是否有權(quán)限訪問(wèn);
  3. 如果有權(quán)限,顯示訪問(wèn)頁(yè)面,如果無(wú)權(quán)限,提示用戶無(wú)權(quán)訪問(wèn);

單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹

如何管理和分配用戶權(quán)限呢,一般會(huì)抽象出如下實(shí)體概念:

  1. 用戶:訪問(wèn)系統(tǒng)的主體;
  2. 角色:分配權(quán)限的最小單元,通過(guò)角色給用戶分配權(quán)限;
  3. 權(quán)限菜單:權(quán)限的最小單元,一個(gè)角色配置多個(gè)權(quán)限菜單;

單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹

另外,為了方便權(quán)限管理,會(huì)單獨(dú)抽取一個(gè)服務(wù)「用戶中心」,統(tǒng)一管理用戶、角色和各個(gè)系統(tǒng)的權(quán)限菜單。權(quán)限菜單由各個(gè)子系統(tǒng)同步到「用戶中心」或者提供批量導(dǎo)入的功能,權(quán)限菜單標(biāo)識(shí)的規(guī)則要提前約定好,一致的菜單標(biāo)識(shí)有助于權(quán)限攔截的判斷。

簡(jiǎn)單截取幾個(gè)我們項(xiàng)目中的頁(yè)面,加深下理解:

  1. 添加用戶時(shí),需要選擇角色
    單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹

  2. 添加角色時(shí),需要選擇權(quán)限菜單
    單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹

  3. 權(quán)限菜單由各個(gè)子系統(tǒng)同步過(guò)來(lái)
權(quán)限驗(yàn)證范圍

用戶擁有了訪問(wèn)和操作某些數(shù)據(jù)的權(quán)限,但不代表可以訪問(wèn)所有的數(shù)據(jù),可能只能訪問(wèn)和操作自己的數(shù)據(jù),可能只能訪問(wèn)和操作組內(nèi)的數(shù)據(jù),這是更細(xì)粒度的權(quán)限控制。

權(quán)限驗(yàn)證的位置可能在前端、可能在后端。前端根據(jù)當(dāng)前用戶的權(quán)限,顯示不同的菜單項(xiàng)、操作按鈕,后端根據(jù)當(dāng)前用戶的權(quán)限,驗(yàn)證操作的合法性,返回可訪問(wèn)的數(shù)據(jù)集合,權(quán)限驗(yàn)證位置也要考慮全面。

控制粒度

比如有這樣一個(gè)場(chǎng)景:有一個(gè)查詢訂單接口供外部調(diào)用,可根據(jù)訂單編號(hào)返回訂單詳情。

如果訂單編號(hào)有規(guī)則可尋,且后端不對(duì)訂單所屬人進(jìn)行判斷,就可以查看其他人訂單的信息,所以,需要更細(xì)粒度的判斷,驗(yàn)證訂單的所屬人。

另外可以通過(guò)角色、菜單權(quán)限2個(gè)粒度進(jìn)行權(quán)限驗(yàn)證:

<shiro:hasPermission name="permission1">
    <h3>擁有permission1權(quán)限可以看到這里</h3>
</shiro:hasPermission>
<shiro:hasRole name="role">
    <h3>擁有role角色可以看到這里</h3>
</shiro:hasRole>
驗(yàn)證位置

為了讓用戶體驗(yàn)足夠好,用戶無(wú)法操作的菜單項(xiàng)和操作按鈕不需要再顯示了,需要在前端進(jìn)行驗(yàn)證,比如添加用戶的操作:

<shiro:hasPermission name="user:add">
    <a href='user/add'>添加用戶</a>
</shiro:hasPermission>

只有前端驗(yàn)證也不行,可以通過(guò)模擬HTTP請(qǐng)求繞過(guò)前端訪問(wèn),后端也要進(jìn)行驗(yàn)證,shiro提供了攔截器進(jìn)行統(tǒng)一處理。

Shiro基本架構(gòu)和擴(kuò)展

Shiro是apache下的開(kāi)源軟件,一個(gè)的安全框架,對(duì)用戶的身份和權(quán)限進(jìn)行管理和驗(yàn)證,看看官網(wǎng)對(duì)它的概述:

Apache Shiro? is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management

本篇不會(huì)介紹Shiro的細(xì)節(jié),只是通過(guò)介紹Shiro的基本組件,對(duì)應(yīng)到權(quán)限管理的一般模型。

Shiro的基本架構(gòu)如下:

  1. Subject:當(dāng)前與用戶交互的實(shí)體,包括用戶、第三方服務(wù)、corn任務(wù)等,使用者只需通過(guò)該對(duì)象提供的一系列方法,統(tǒng)一與后端的安全管理模塊交互, 對(duì)應(yīng)模型中的「用戶」;
  2. Authenticator:負(fù)責(zé)驗(yàn)證用戶身份,用戶嘗試登陸時(shí),會(huì)調(diào)用它的方法進(jìn)行認(rèn)證,它會(huì)根據(jù)配置,調(diào)用一個(gè)或多個(gè)Realm進(jìn)行用戶名和密碼校驗(yàn),對(duì)應(yīng)模型中的「用戶登陸操作」;
  3. Authorizer:負(fù)責(zé)驗(yàn)證用戶訪問(wèn)權(quán)限,用戶訪問(wèn)一個(gè)頁(yè)面時(shí),可以根據(jù)它提供的方法驗(yàn)證用戶的權(quán)限,它也會(huì)調(diào)用一個(gè)或多個(gè)Realm獲取用戶的權(quán)限數(shù)據(jù),對(duì)應(yīng)模型中的「是否有權(quán)限訪問(wèn)」;
  4. SessionManager:提供一種健壯的方式管理用戶會(huì)話,這是Shiro的一個(gè)獨(dú)特特性,如果是一個(gè)Web/Servlet應(yīng)用,默認(rèn)會(huì)使用已有的會(huì)話管理,如果不是Web應(yīng)用,Shiro會(huì)使用內(nèi)置的會(huì)話管理器。它會(huì)調(diào)用SessionDAO進(jìn)行會(huì)話持久化,對(duì)應(yīng)模型中的「Session管理」;
  5. CacheManager:Shiro在Authenticator、Authorizer、SessionManager模塊,會(huì)訪問(wèn)后端的存儲(chǔ)系統(tǒng),使用緩存管理可以提高數(shù)據(jù)訪問(wèn)的性能,可以很方便的與第三方緩存框架集成,比如Ehcache,Redis等;
  6. Realms:是程序和用戶數(shù)據(jù)、權(quán)限數(shù)據(jù)的橋梁,以插件的方式提供擴(kuò)展,可以配置一個(gè)或多個(gè)Realm為Authenticator和Authorizer模塊提供數(shù)據(jù)支持;
  7. Cryptography:提供數(shù)據(jù)加解密的支持,它封裝了相關(guān)接口,更易理解和使用;

單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹

通過(guò)上面的介紹可以看出,Shiro的基本組件與總結(jié)的「一般模型」是對(duì)應(yīng)的,它幫助我們實(shí)現(xiàn)了整個(gè)用戶驗(yàn)證、權(quán)限驗(yàn)證、會(huì)話管理的流程,同時(shí)提供緩存管理、加解密封裝提高了性能和安全性,通過(guò)Realm插件的方式支持?jǐn)U展,自定義實(shí)現(xiàn)類(lèi)獲取用戶、權(quán)限數(shù)據(jù)。

以用戶身份認(rèn)證為例,說(shuō)明幾個(gè)組件的交互過(guò)程:
單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹

系列第一部分總結(jié)

到此,系列第一部分「單點(diǎn)登錄與權(quán)限管理本質(zhì)」就介紹完了,通過(guò)5篇文章,把自己想說(shuō)的本質(zhì)說(shuō)完了,基礎(chǔ)概念肯定會(huì)有遺漏,后續(xù)部分學(xué)習(xí)、總結(jié)過(guò)程中,會(huì)不斷補(bǔ)充。

還原技術(shù)的本質(zhì),把復(fù)雜的技術(shù)、框架抽象來(lái)看,形成一個(gè)相對(duì)簡(jiǎn)單、容易理解的視圖,能夠更好的理解、擴(kuò)展、應(yīng)用它。

對(duì)于單點(diǎn)登錄,通過(guò)cookie、http重定向,可自動(dòng)進(jìn)行跳轉(zhuǎn)和身份驗(yàn)證,達(dá)到登錄一次,可訪問(wèn)多個(gè)子系統(tǒng)的效果。

對(duì)于權(quán)限管理,了解其一般的模型和驗(yàn)證流程,加上成熟的實(shí)現(xiàn)框架,可以快速、全面、穩(wěn)定地實(shí)現(xiàn)它,并在此基礎(chǔ)上進(jìn)行擴(kuò)展。

另外,cookie、用戶的賬號(hào)權(quán)限信息很重要,要不斷積累安全方面的知識(shí),提高其安全性。

接下來(lái)的第二部分主要是實(shí)踐,會(huì)仿照我們的系統(tǒng)做一個(gè)DEMO,利用CAS、Shiro框架實(shí)現(xiàn)單點(diǎn)登錄和權(quán)限管理。另外,會(huì)抽象出一個(gè)「用戶中心」,管理用戶、角色、權(quán)限菜單,各個(gè)子系統(tǒng)通過(guò)同步方式同步自己的權(quán)限菜單。

單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)頁(yè)名稱:單點(diǎn)登錄與權(quán)限管理本質(zhì):權(quán)限管理介紹-創(chuàng)新互聯(lián)
當(dāng)前URL:http://www.yijiale78.com/article16/cdpigg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站域名注冊(cè)全網(wǎng)營(yíng)銷(xiāo)推廣網(wǎng)站建設(shè)品牌網(wǎng)站建設(shè)小程序開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)