[發(fā)明專利]基于Kubernetes的認(rèn)證授權(quán)方法及系統(tǒng)有效
| 申請(qǐng)?zhí)枺?/td> | 202010122452.2 | 申請(qǐng)日: | 2020-02-27 |
| 公開(公告)號(hào): | CN110995450B | 公開(公告)日: | 2020-06-23 |
| 發(fā)明(設(shè)計(jì))人: | 李小飛 | 申請(qǐng)(專利權(quán))人: | 中科星圖股份有限公司 |
| 主分類號(hào): | H04L9/32 | 分類號(hào): | H04L9/32;H04L29/06;H04L29/08 |
| 代理公司: | 北京華專卓海知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11664 | 代理人: | 王一 |
| 地址: | 101399 北京市順義區(qū)臨空經(jīng)濟(jì)核*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 kubernetes 認(rèn)證 授權(quán) 方法 系統(tǒng) | ||
本公開的實(shí)施例提供了基于Kubernetes的認(rèn)證授權(quán)方法、系統(tǒng)、設(shè)備和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。所述方法包括API網(wǎng)關(guān)接收客戶端發(fā)送的服務(wù)調(diào)用請(qǐng)求,將所述服務(wù)調(diào)用請(qǐng)求轉(zhuǎn)發(fā)至認(rèn)證授權(quán)模塊;所述認(rèn)證授權(quán)模塊接收所述服務(wù)調(diào)用請(qǐng)求,驗(yàn)證Access Token;如果認(rèn)證成功,根據(jù)預(yù)設(shè)策略對(duì)所述服務(wù)調(diào)用請(qǐng)求進(jìn)行訪問控制;如果所述服務(wù)調(diào)用請(qǐng)求被預(yù)設(shè)策略允許,則向所述API網(wǎng)關(guān)發(fā)送授權(quán)指示;所述API網(wǎng)關(guān)接收所述授權(quán)指示,將所述服務(wù)調(diào)用請(qǐng)求轉(zhuǎn)發(fā)至對(duì)應(yīng)的后端微服務(wù)。提供了一種零侵入、零成本的方法,減輕了業(yè)務(wù)服務(wù)開發(fā)人員的開發(fā)成本;通過授權(quán)規(guī)則服務(wù)、域名雙維度配置,可以對(duì)頁(yè)面針對(duì)不同的域名設(shè)置不同的權(quán)限,從而最大限度的保護(hù)業(yè)務(wù)的安全。
技術(shù)領(lǐng)域
本公開的實(shí)施例一般涉及云計(jì)算技術(shù)領(lǐng)域,并且更具體地,涉及基于Kubernetes的認(rèn)證授權(quán)方法、系統(tǒng)、設(shè)備和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù)
傳統(tǒng)的開發(fā)中,由于所有的功能模塊都集中在一個(gè)單體應(yīng)用中,因此,只用在這個(gè)單體應(yīng)用中編寫相應(yīng)的用戶授權(quán)驗(yàn)證功能即可滿足大部分的需求。但是隨著微服務(wù)化的趨勢(shì),許多傳統(tǒng)的單體服務(wù)都被拆分成微服務(wù)的形式,即多個(gè)輕量的微服務(wù)共同實(shí)現(xiàn)原來一個(gè)單體應(yīng)用的功能。這樣就會(huì)面臨以下問題:
1. 由于每個(gè)微服務(wù)都需要進(jìn)行權(quán)限的驗(yàn)證,因此,不可避免的需要在每個(gè)微服務(wù)里都要編寫大量且相同的授權(quán)驗(yàn)證的代碼。而且這種邏輯是牽一發(fā)動(dòng)全身的,一旦授權(quán)驗(yàn)證的邏輯發(fā)生變化,所有的微服務(wù)都要進(jìn)行相應(yīng)的修改來進(jìn)行適配;
2. 對(duì)于微服務(wù)來說,微服務(wù)具體的功能才是開發(fā)人員應(yīng)關(guān)注的部分,而授權(quán)驗(yàn)證的加入,讓開發(fā)人員過多的關(guān)注了核心功能以外的部分,從而降低了代碼的開發(fā)效率;
3. 由于是多個(gè)微服務(wù)功能實(shí)現(xiàn)原來一個(gè)單體應(yīng)用的功能,每個(gè)微服務(wù)又可能具有多個(gè)實(shí)例,因此,開發(fā)人員不得不作一些額外的工作來維持各個(gè)微服務(wù)各個(gè)實(shí)例的登錄狀態(tài)。例如,系統(tǒng)A由商品服務(wù)、訂單服務(wù)、購(gòu)物車服務(wù)等多個(gè)微服務(wù)組成,如果用戶登錄了系統(tǒng)A的商品服務(wù),那么訂單服務(wù)、購(gòu)物車服務(wù)等服務(wù)應(yīng)該也是登錄狀態(tài)。另外,即使對(duì)于多個(gè)傳統(tǒng)單體應(yīng)用,我們也會(huì)需要各個(gè)單體應(yīng)用共用同一套賬號(hào)密碼體系,從而實(shí)現(xiàn)單點(diǎn)登錄的功能(例如,用戶如果在系統(tǒng)A登錄,如果用戶打開系統(tǒng)B,也應(yīng)該是登錄狀態(tài))。
為了解決上述問題,業(yè)內(nèi)采用Spring Cloud Gateway在網(wǎng)關(guān)層面解決統(tǒng)一認(rèn)證授權(quán)的問題。Spring Cloud Gateway 是開源框架Spring Cloud的一個(gè)子項(xiàng)目,在整個(gè)SpringCloud框架中,Spring Cloud Gateway可以起到流量入口的作用。由于Spring CloudGateway起到了流量入口的作用,因此,開發(fā)人員在Spring Cloud Gateway這一層通過自行編碼來定制各種各樣的過濾策略來對(duì)流量進(jìn)行過濾,例如,攔截惡意流量,對(duì)惡意訪問進(jìn)行限流,將來源不用的流量轉(zhuǎn)授權(quán)認(rèn)證發(fā)到不同的請(qǐng)求。即針對(duì)上述問題1-3,通過在網(wǎng)關(guān)層面自行編碼來定制認(rèn)證授權(quán)策略來解決前面提出的問題。雖然Spring Cloud Gateway可以在網(wǎng)關(guān)層面解決統(tǒng)一認(rèn)證授權(quán)的問題,但是也存在諸多的缺點(diǎn):
1. Spring Cloud Gateway是Spring Cloud的一個(gè)子項(xiàng)目,因此,用戶如果想要使用Spring Cloud Gateway,就必須使用Spring Cloud,而Spring Cloud是Kubernetes出來前的產(chǎn)物,其大部分功能已經(jīng)被Kubernetes所替代;
2. Spring Cloud是對(duì)代碼有侵入性,即微服務(wù)的代碼要引入Spring Cloud的依賴,以及在代碼中進(jìn)行相應(yīng)的開發(fā),才能使用Spring Cloud提供的各種特性;
3. Spring Cloud學(xué)習(xí)成本較大,需要每個(gè)開發(fā)人員都要對(duì)Spring Cloud相當(dāng)?shù)氖炀毑趴梢愿玫氖褂肧pring Cloud;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中科星圖股份有限公司,未經(jīng)中科星圖股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010122452.2/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種基于Kubernetes的IMS系統(tǒng)
- 一種部署Kubernetes集群的方法、裝置和存儲(chǔ)介質(zhì)
- 部署Kubernetes集群的方法及裝置
- 一種Dubbo服務(wù)與Kubernetes系統(tǒng)集成的方法
- 一種基于OpenStack的Kubernetes集群搭建部署方法、架構(gòu)及存儲(chǔ)介質(zhì)
- 基于Kubernetes集群的服務(wù)訪問方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 一種Kubernetes容器云平臺(tái)應(yīng)用導(dǎo)入方法、系統(tǒng)
- 基于物理網(wǎng)卡的kubernetes網(wǎng)絡(luò)實(shí)現(xiàn)方法、系統(tǒng)、設(shè)備及介質(zhì)
- 多Kubernetes集群管理方法、裝置和可讀介質(zhì)
- Kubernetes上部署Kubernetes虛擬機(jī)集群的方法與系統(tǒng)
- 基于以太網(wǎng)認(rèn)證系統(tǒng)的認(rèn)證方法
- 認(rèn)證方法、認(rèn)證系統(tǒng)和認(rèn)證裝置
- 一種認(rèn)證方法和系統(tǒng)
- 一種認(rèn)證控制的方法,認(rèn)證服務(wù)器和系統(tǒng)
- 多認(rèn)證域認(rèn)證方法和裝置
- 一種認(rèn)證方法及系統(tǒng)
- 一種光線路終端對(duì)光網(wǎng)絡(luò)單元的認(rèn)證系統(tǒng)及認(rèn)證方法
- 身份認(rèn)證服務(wù)器、身份認(rèn)證終端、身份認(rèn)證系統(tǒng)及方法
- 一種網(wǎng)絡(luò)認(rèn)證方法
- 身份認(rèn)證器的初始化、身份認(rèn)證方法以及裝置
- 一種開放式認(rèn)證的授權(quán)方法、裝置和系統(tǒng)
- 認(rèn)證授權(quán)方法和裝置
- 軟件授權(quán)管理方法及系統(tǒng)
- 授權(quán)策略優(yōu)化方法及授權(quán)策略優(yōu)化裝置
- 數(shù)據(jù)表批量授權(quán)方法及裝置
- 一種授權(quán)方法及裝置、電子設(shè)備和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種云計(jì)算資源授權(quán)方法及裝置
- 一種服務(wù)授權(quán)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種軟件授權(quán)方法、系統(tǒng)、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種基于授權(quán)裝置的設(shè)備授權(quán)方法





