一種混合云計(jì)算環(huán)境中容器服務(wù)的認(rèn)證系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及云計(jì)算環(huán)境中容器集群領(lǐng)域,尤其涉及一種混合云計(jì)算環(huán)境中容器服務(wù)的認(rèn)證系統(tǒng)和方法。
【背景技術(shù)】
[0002]作為新一代云計(jì)算核心技術(shù),容器技術(shù)已漸漸成為近年國(guó)內(nèi)外云計(jì)算企業(yè)的發(fā)展重點(diǎn),而與此同時(shí),現(xiàn)有云計(jì)算環(huán)境的建立大多以虛擬機(jī)技術(shù)為基礎(chǔ)。為了使云計(jì)算為企業(yè)所用,集成虛擬機(jī)云計(jì)算技術(shù)和容器技術(shù)的混合云技術(shù)成為云計(jì)算技術(shù)領(lǐng)域的重要發(fā)展方向。
[0003]現(xiàn)有的混合云計(jì)算環(huán)境,用戶通過(guò)容器資源管理服務(wù)申請(qǐng)容器集群資源,而容器集群資源服務(wù)向第三方的云資源服務(wù)申請(qǐng)?jiān)朴?jì)算資源;而典型的第三方云資源服務(wù)如亞馬遜云服務(wù)AWS或Openstack基礎(chǔ)設(shè)施服務(wù)(IaaS)。
[0004]典型的第三方云資源服務(wù)都有自己的認(rèn)證授權(quán)系統(tǒng)。一般來(lái)說(shuō),云資源服務(wù)的認(rèn)證需要處理兩個(gè)典型場(chǎng)景:用戶注冊(cè)場(chǎng)景和用戶認(rèn)證授權(quán)。
[0005]用戶注冊(cè)場(chǎng)景的處理流程,簡(jiǎn)化的步驟為:用戶使用匿名申請(qǐng)?jiān)L問(wèn)某項(xiàng)云計(jì)算資源;計(jì)算資源服務(wù)拒絕用戶的訪問(wèn),同時(shí)將用戶導(dǎo)向登錄和注冊(cè)的服務(wù);用戶向認(rèn)證服務(wù)發(fā)起注冊(cè)用戶的操作,注冊(cè)用戶名和用戶的某一種密鑰,用戶完成注冊(cè),然后第三方云資源對(duì)注冊(cè)的用戶請(qǐng)求進(jìn)行認(rèn)證授權(quán),具體為:資源使用者,即用戶,以用戶名和密鑰登錄云服務(wù);云認(rèn)證服務(wù)為資源使用者分配某個(gè)會(huì)話令牌;資源使用者向云計(jì)算資源服務(wù)申請(qǐng)?jiān)朴?jì)算資源的同時(shí),攜帶自己通過(guò)認(rèn)證得到的令牌;云計(jì)算資源服務(wù)向云認(rèn)證服務(wù)請(qǐng)求驗(yàn)證令牌的合法性;認(rèn)證服務(wù)返回合法結(jié)果,則認(rèn)證成功,完成認(rèn)證。在認(rèn)證成功的前提下。云計(jì)算資源服務(wù)授權(quán)資源使用者使用它所申請(qǐng)的資源。
[0006]如上所述,在一個(gè)傳統(tǒng)由虛擬機(jī)構(gòu)成的云計(jì)算系統(tǒng)中,云計(jì)算資源受到安全認(rèn)證服務(wù)保護(hù)的。但是,在現(xiàn)有的混合云計(jì)算環(huán)境中,用戶對(duì)容器集群資源的訪問(wèn)和對(duì)虛擬機(jī)云計(jì)算資源的訪問(wèn),都沒(méi)有得到安全認(rèn)證的保護(hù),故用戶對(duì)容器集群資源的訪問(wèn)和對(duì)虛擬機(jī)云計(jì)算資源的訪問(wèn)不能獲得安全保護(hù)。
【發(fā)明內(nèi)容】
[0007]本發(fā)明的目的在于提供一種混合云計(jì)算環(huán)境中容器服務(wù)的認(rèn)證系統(tǒng)和方法,從而解決現(xiàn)有技術(shù)中存在的前述問(wèn)題。
[0008]為了實(shí)現(xiàn)上述目的,本發(fā)明所述混合云計(jì)算環(huán)境中容器服務(wù)的認(rèn)證方法,該方法包括:
[0009]SI,判斷要訪問(wèn)第三方云計(jì)算系統(tǒng)的用戶信息是否為屬于用戶容器注冊(cè)信息,如果是,則直接進(jìn)入S3;如果否,則提示用戶注冊(cè),進(jìn)入S2;
[0010]S2,接收用戶填寫(xiě)的容器注冊(cè)信息并生成用于訪問(wèn)第三方云計(jì)算系統(tǒng)的密鑰信息,同時(shí)建立容器注冊(cè)信息與所述密鑰信息的映射,用戶注冊(cè)成功,進(jìn)入S3;
[0011]S3,容器認(rèn)證模塊驗(yàn)證并查找到與所述用戶的容器注冊(cè)信息存在映射的密鑰信息后,向所述第三方云計(jì)算系統(tǒng)申請(qǐng)會(huì)話令牌;
[0012]S4,生成與所述會(huì)話令牌存在映射關(guān)系的容器會(huì)話令牌,保存所述會(huì)話令牌與所述容器會(huì)話令牌的映射,完成認(rèn)證。
[0013]優(yōu)選地,步驟S2,具體按照下述步驟實(shí)現(xiàn):
[0014]S21,接收并存儲(chǔ)用戶填寫(xiě)的容器注冊(cè)信息;
[0015]S22,根據(jù)所述容器注冊(cè)信息通過(guò)單項(xiàng)映射函數(shù)生成并存儲(chǔ)所述用戶用于訪問(wèn)第三方云計(jì)算系統(tǒng)的密鑰信息;
[0016]S23,以密鑰信息向所述第三方云計(jì)算系統(tǒng)進(jìn)行注冊(cè),所述第三方云計(jì)算系統(tǒng)返回注冊(cè)成功的消息,完成注冊(cè);
[0017]建立并存儲(chǔ)容器注冊(cè)信息與所述密鑰信息的映射發(fā)生在步驟S22至完成注冊(cè)的任意時(shí)間段。
[0018]優(yōu)選地,步驟S3,具體按照下述步驟實(shí)現(xiàn):
[0019]S31,驗(yàn)證所述用戶的容器注冊(cè)信息是否合法,如果合法則,進(jìn)入S32;如果不合法,則提示用戶沒(méi)有訪問(wèn)權(quán)限;
[0020]S32,容器認(rèn)證模塊獲取用戶的容器注冊(cè)信息,查找到與所述用戶的容器注冊(cè)信息存在映射關(guān)系的密鑰信息;
[0021]S33,根據(jù)所述密鑰信息從所述第三方云計(jì)算系統(tǒng)認(rèn)證并獲取會(huì)話令牌。
[0022]優(yōu)選地,步驟S4,具體按照下述步驟實(shí)現(xiàn):
[0023]判斷用戶預(yù)先選擇的是靜態(tài)容器會(huì)話令牌還是動(dòng)態(tài)容器會(huì)話令牌;
[0024]如果是靜態(tài)容器會(huì)話令牌,則通過(guò)不可逆的映射計(jì)算函數(shù),以所述會(huì)話令牌為基礎(chǔ)生成靜態(tài)容器會(huì)話令牌;
[0025]如果是動(dòng)態(tài)容器會(huì)話令牌,動(dòng)態(tài)容器會(huì)話令牌按照下述計(jì)算方法獲得:
[0026]動(dòng)態(tài)容器會(huì)話令牌=F(第三方會(huì)話令牌,預(yù)備容器會(huì)話令牌),其中,F(xiàn)表示任意一個(gè)映射函數(shù);
[0027]所述預(yù)備容器會(huì)話令牌=H(容器用戶信息,會(huì)話狀態(tài)信息,容器認(rèn)證模塊信息),H表示任意一個(gè)不可逆的信息摘要算法。
[0028]優(yōu)選地,所述用戶的容器注冊(cè)信息包括登錄容器集群服務(wù)管理系統(tǒng)的用戶名和密碼。
[0029]優(yōu)選地,所述密鑰信息包括訪問(wèn)第三方云計(jì)算系統(tǒng)的用戶名和密碼。
[°03°]優(yōu)選地,所述會(huì)話令牌中包括訪問(wèn)第三方云計(jì)算系統(tǒng)的會(huì)話期限。
[0031]一種混合云計(jì)算環(huán)境中容器服務(wù)的認(rèn)證系統(tǒng),所述系統(tǒng)包括:容器用戶注冊(cè)模塊、容器認(rèn)證模塊、用戶映射模塊、會(huì)話令牌映射模塊、容器用戶存儲(chǔ)服務(wù)模塊;
[0032]所述容器用戶注冊(cè)模塊,接收來(lái)自容器集群管理服務(wù)器的用戶容器注冊(cè)信息,并將所述用戶容器注冊(cè)信息發(fā)送給用戶映射模塊;
[0033]所述用戶映射模塊,根據(jù)收到的用戶容器注冊(cè)信息中包含的用戶信息自動(dòng)生成用于用戶訪問(wèn)第三方云計(jì)算系統(tǒng)的密鑰信息和所述用戶容器注冊(cè)信息到密鑰信息的映射;
[0034]所述容器認(rèn)證模塊,驗(yàn)證所述用戶容器注冊(cè)信息和獲取密鑰信息,然后使用所述密鑰信息向第三方云計(jì)算系統(tǒng)認(rèn)證,并將認(rèn)證成功的結(jié)果反饋給所述容器用戶注冊(cè)模塊,將從第三方云計(jì)算系統(tǒng)得到的會(huì)話令牌發(fā)送會(huì)話令牌映射模塊;
[0035]所述會(huì)話令牌映射模塊,根據(jù)所述會(huì)話令牌自動(dòng)生成相對(duì)應(yīng)的容器會(huì)話令牌,及所述會(huì)話令牌與所述容器會(huì)話令牌的映射;
[0036]所述容器用戶存儲(chǔ)服務(wù),用于存儲(chǔ)所述述用戶容器注冊(cè)信息、所述密鑰信息、所述用戶容器注冊(cè)信息到密鑰信息的映射和所述會(huì)話令牌與所述容器會(huì)話令牌的映射。
[0037]優(yōu)選地,所述容器認(rèn)證模塊與所述第三方云計(jì)算系統(tǒng)的第三方認(rèn)證服務(wù)模塊數(shù)據(jù)通信。
[0038]優(yōu)選地,所述容器用戶注冊(cè)模塊和所述容器認(rèn)證模塊均與所述容器集群管理服務(wù)模塊數(shù)據(jù)通信連接;所述會(huì)話令牌映射模塊與容器集群資源服務(wù)模塊數(shù)據(jù)通信連接;
[0039]所述容器集群資源服務(wù)模塊與第三方云資源服務(wù)數(shù)據(jù)通信連接。
[0040]本發(fā)明的有益效果是:
[0041]本發(fā)明所述系統(tǒng)和方法,用于在集成了容器集群系統(tǒng)和第三方云計(jì)算系統(tǒng)的混合云系統(tǒng)中提供注冊(cè)、認(rèn)證和授權(quán)功能。利用所述系統(tǒng),在不限定任何一個(gè)第三方云計(jì)算系統(tǒng)的條件下,用戶只需要向本發(fā)明的認(rèn)證系統(tǒng)提出注冊(cè)和認(rèn)證請(qǐng)求,避免額外的向第三方云計(jì)算系統(tǒng)提出認(rèn)證的請(qǐng)求,同時(shí),在保證用戶安全和混合云計(jì)算環(huán)境安全的基礎(chǔ)上,為用戶使用混合云系統(tǒng)提供了便利性。
【附圖說(shuō)明】
[0042]圖1是傳統(tǒng)混合云系統(tǒng),當(dāng)容器集群管理服務(wù)申請(qǐng)容器資源,而容器資源又需要申請(qǐng)第三方云資源服務(wù)時(shí),兩部分的資源申請(qǐng)都是通過(guò)無(wú)安全保護(hù)的方式直接訪問(wèn);
[0043]圖2是傳統(tǒng)云服務(wù)的用戶注冊(cè)和認(rèn)證授權(quán)