一種面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開(kāi)了一種面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制方法和系統(tǒng),該方法包括將相互對(duì)應(yīng)的租戶身份信息、數(shù)據(jù)類型信息、以及權(quán)限控制策略服務(wù)類進(jìn)行綁定,使得通過(guò)租戶身份信息、該租戶下屬的用戶身份信息、以及數(shù)據(jù)類型信息可在權(quán)限控制策略服務(wù)類中獲取該租戶下屬的該用戶對(duì)于該數(shù)據(jù)類型的操控權(quán)限;獲取用戶對(duì)應(yīng)操控的數(shù)據(jù)類型信息,結(jié)合其用戶身份信息、該用戶所屬的租戶身份信息查找對(duì)應(yīng)的權(quán)限控制策略服務(wù)類;根據(jù)上述查找出的權(quán)限控制策略服務(wù)類,獲取該用戶對(duì)于該數(shù)據(jù)類型的操控權(quán)限。本發(fā)明在多租戶模式下,可以滿足不同租戶對(duì)權(quán)限管理的個(gè)性化需求,并且很大程度上縮減了數(shù)據(jù)庫(kù)操作時(shí)間的耗費(fèi),而且還可實(shí)現(xiàn)更加復(fù)雜的數(shù)據(jù)權(quán)限控制。
【專利說(shuō)明】一種面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于云計(jì)算多租戶【技術(shù)領(lǐng)域】,具體涉及一種面向云計(jì)算多租戶模式的數(shù)據(jù) 權(quán)限控制方法和系統(tǒng)。
【背景技術(shù)】
[0002] 云計(jì)算多租戶技術(shù)(multi-tenancy)是一種新的軟件架構(gòu)技術(shù),它是在探討與實(shí) 現(xiàn)如何在多租戶的環(huán)境下共用相同的系統(tǒng)或程序組件,在確保各用戶間數(shù)據(jù)的隔離性的同 時(shí),滿足各租戶個(gè)性化的需求。
[0003] 多租戶技術(shù)其中一個(gè)關(guān)鍵是如何處理不同租戶的個(gè)性化需求,其中權(quán)限管理的個(gè) 性化技術(shù)顯得尤為重要。
[0004] 在傳統(tǒng)的企業(yè)信息系統(tǒng)中,權(quán)限管理是一個(gè)基礎(chǔ)和關(guān)鍵的部分。權(quán)限可以包含兩 部分:
[0005] 1)功能權(quán)限;2)數(shù)據(jù)權(quán)限。功能權(quán)限是對(duì)系統(tǒng)中某些功能能否使用的控制,而數(shù) 據(jù)權(quán)限是對(duì)系統(tǒng)中的各種數(shù)據(jù)是否可以訪問(wèn)和操作的控制。系統(tǒng)一旦開(kāi)發(fā)完成,功能就確 定了,所以功能權(quán)限的控制是明確的和固定的。但是數(shù)據(jù)權(quán)限不一樣,系統(tǒng)在開(kāi)發(fā)完成后的 運(yùn)行中,會(huì)生產(chǎn)大量的數(shù)據(jù),對(duì)這些數(shù)據(jù)需要進(jìn)行控制,因此數(shù)據(jù)權(quán)限是動(dòng)態(tài)的,具有很高 的復(fù)雜度。
[0006] 在企業(yè)信息系統(tǒng)中,數(shù)據(jù)權(quán)限的管理一般有兩種方式:
[0007] 第一種常見(jiàn)方式是將權(quán)限的判斷采用代碼固定死。
[0008] 比如,生成的報(bào)銷單能夠被 申請(qǐng)人:和財(cái)務(wù)主管查看,那么判斷報(bào)銷單能否被查看 的邏輯偽代碼如下:
[0009]
【權(quán)利要求】
1. 一種面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制方法,其特征在于包括: 將相互對(duì)應(yīng)的租戶身份信息、數(shù)據(jù)類型信息、以及權(quán)限控制策略服務(wù)類進(jìn)行綁定,使得 通過(guò)租戶身份信息、該租戶下屬的用戶身份信息、以及數(shù)據(jù)類型信息可在權(quán)限控制策略服 務(wù)類中獲取該租戶下屬的該用戶對(duì)于該數(shù)據(jù)類型的操控權(quán)限; 獲取用戶對(duì)應(yīng)操控的數(shù)據(jù)類型信息,結(jié)合其用戶身份信息、該用戶所屬的租戶身份信 息查找對(duì)應(yīng)的權(quán)限控制策略服務(wù)類; 根據(jù)上述查找出的權(quán)限控制策略服務(wù)類,獲取該用戶對(duì)于該數(shù)據(jù)類型的操控權(quán)限。
2. 根據(jù)權(quán)利要求1所述的面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制方法,其特征在于: 所述將相互對(duì)應(yīng)的租戶身份信息、數(shù)據(jù)類型信息、以及權(quán)限控制策略服務(wù)類進(jìn)行綁定, 具體是通過(guò)生成一類型權(quán)限綁定信息來(lái)體現(xiàn)三者的綁定關(guān)系。
3. 根據(jù)權(quán)利要求1所述的面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制方法,其特征在于: 所述將相互對(duì)應(yīng)的租戶身份信息、數(shù)據(jù)類型信息、以及權(quán)限控制策略服務(wù)類進(jìn)行綁定 時(shí),一個(gè)數(shù)據(jù)類型可以對(duì)應(yīng)綁定一個(gè)或者多個(gè)權(quán)限控制策略服務(wù)類。
4. 根據(jù)權(quán)利要求3所述的面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制方法,其特征在于: 當(dāng)一個(gè)數(shù)據(jù)類型可以對(duì)應(yīng)綁定一個(gè)權(quán)限控制策略服務(wù)類時(shí),所述根據(jù)上述查找出的權(quán) 限控制策略服務(wù)類,獲取該用戶對(duì)于該數(shù)據(jù)類型的操控權(quán)限,具體是直接執(zhí)行該權(quán)限控制 策略服務(wù)類獲取其操控權(quán)限; 當(dāng)一個(gè)數(shù)據(jù)類型可以對(duì)應(yīng)綁定多個(gè)權(quán)限控制策略服務(wù)類時(shí),所述根據(jù)上述查找出的權(quán) 限控制策略服務(wù)類,獲取該用戶對(duì)于該數(shù)據(jù)類型的操控權(quán)限,具體是執(zhí)行各查找出的權(quán)限 控制策略服務(wù)類,根據(jù)各權(quán)限控制策略服務(wù)類之間的邏輯與、邏輯或和邏輯非的關(guān)系得到 的執(zhí)行結(jié)果,根據(jù)所述結(jié)果判斷用戶是否具有對(duì)該數(shù)據(jù)類型對(duì)應(yīng)的操控權(quán)限。
5. 根據(jù)權(quán)利要求1所述的面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制方法,其特征在于: 在查找到對(duì)應(yīng)的權(quán)限控制策略服務(wù)類之后,還包括將該權(quán)限控制策略服務(wù)類存儲(chǔ)至一 租戶類型權(quán)限綁定緩存中,以便下次可直接在該緩存讀取。
6. -種面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制系統(tǒng),其特征在于包括: 數(shù)據(jù)類型數(shù)據(jù)庫(kù),用于存儲(chǔ)所有數(shù)據(jù)類型信息; 權(quán)限策略數(shù)據(jù)庫(kù),用于存儲(chǔ)權(quán)限控制策略服務(wù)類,該權(quán)限控制策略服務(wù)類中包括綁定 在一起的租戶身份信息、用戶身份信息、與所述用戶身份信息對(duì)應(yīng)的數(shù)據(jù)類型信息、以及與 所述數(shù)據(jù)類型對(duì)應(yīng)的控制權(quán)限信息; 類型權(quán)限綁定數(shù)據(jù)庫(kù),用于存儲(chǔ)類型權(quán)限綁定信息,該類型權(quán)限綁定信息中包括綁定 在一起的租戶身份信息、數(shù)據(jù)類型信息、以及權(quán)限控制策略服務(wù)類; 數(shù)據(jù)關(guān)聯(lián)器,用于將相互對(duì)應(yīng)的租戶身份信息、數(shù)據(jù)類型信息、以及權(quán)限控制策略服務(wù) 類進(jìn)行綁定生成類型權(quán)限綁定信息,并存儲(chǔ)至所述類型權(quán)限綁定數(shù)據(jù)庫(kù); 類型權(quán)限匹配器,用于獲取用戶對(duì)應(yīng)操控的數(shù)據(jù)類型信息,結(jié)合其用戶身份信息、該用 戶所屬的租戶身份信息在所述權(quán)限策略數(shù)據(jù)庫(kù)中查找對(duì)應(yīng)的權(quán)限控制策略服務(wù)類; 權(quán)限判斷器,用于根據(jù)上述查找出的權(quán)限控制策略服務(wù)類,獲取該用戶對(duì)于該數(shù)據(jù)類 型的操控權(quán)限。
7. 根據(jù)權(quán)利要求6所述的面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制系統(tǒng),其特征在于: 所述數(shù)據(jù)關(guān)聯(lián)器將相互對(duì)應(yīng)的租戶身份信息、數(shù)據(jù)類型信息、以及權(quán)限控制策略服務(wù) 類進(jìn)行綁定時(shí),一個(gè)數(shù)據(jù)類型可以對(duì)應(yīng)綁定一個(gè)或者多個(gè)權(quán)限控制策略服務(wù)類。
8. 根據(jù)權(quán)利要求7所述的面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制系統(tǒng),其特征在于: 當(dāng)一個(gè)數(shù)據(jù)類型可以對(duì)應(yīng)綁定一個(gè)權(quán)限控制策略服務(wù)類時(shí),所述權(quán)限判斷器根據(jù)上述 查找出的權(quán)限控制策略服務(wù)類,獲取該用戶對(duì)于該數(shù)據(jù)類型的操控權(quán)限,具體是直接執(zhí)行 該權(quán)限控制策略服務(wù)類獲取其操控權(quán)限; 當(dāng)一個(gè)數(shù)據(jù)類型可以對(duì)應(yīng)綁定多個(gè)權(quán)限控制策略服務(wù)類時(shí),所述權(quán)限判斷器根據(jù)上述 查找出的權(quán)限控制策略服務(wù)類,獲取該用戶對(duì)于該數(shù)據(jù)類型的操控權(quán)限,具體是執(zhí)行各查 找出的權(quán)限控制策略服務(wù)類,根據(jù)各權(quán)限控制策略服務(wù)類之間的邏輯與、邏輯或和邏輯非 的關(guān)系得到的執(zhí)行結(jié)果,根據(jù)所述結(jié)果判斷用戶是否具有對(duì)該數(shù)據(jù)類型對(duì)應(yīng)的操控權(quán)限。
9. 根據(jù)權(quán)利要求6所述的面向云計(jì)算多租戶模式的數(shù)據(jù)權(quán)限控制系統(tǒng),其特征在于包 括: 租戶類型權(quán)限綁定緩存,用于存儲(chǔ)所述類型權(quán)限匹配器查找到的權(quán)限控制策略服務(wù) 類,以便下次可直接在該緩存讀取。
【文檔編號(hào)】G06F21/30GK104252454SQ201310256343
【公開(kāi)日】2014年12月31日 申請(qǐng)日期:2013年6月25日 優(yōu)先權(quán)日:2013年6月25日
【發(fā)明者】李引, 袁峰 申請(qǐng)人:廣州中國(guó)科學(xué)院軟件應(yīng)用技術(shù)研究所