亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法和系統(tǒng)的制作方法

文檔序號(hào):7702109閱讀:276來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及分布式網(wǎng)絡(luò)環(huán)境下用戶(hù)對(duì)分布式資源或服務(wù)的授權(quán)和訪(fǎng)問(wèn)控 制技術(shù),特別是一種分布式分級(jí)分組雙重授權(quán)及訪(fǎng)問(wèn)控制方法和系統(tǒng)。
背景技術(shù)
企業(yè)內(nèi)部的信息設(shè)施往往由異構(gòu)分布式應(yīng)用系統(tǒng)組成,實(shí)現(xiàn)這些應(yīng)用系統(tǒng) 的集成是未來(lái)的發(fā)展趨勢(shì),不僅如此,大型應(yīng)用系統(tǒng)自身的構(gòu)成也出現(xiàn)了分布 式集成的特性,通過(guò)將不同的模塊整合達(dá)到某一應(yīng)用的目的。不同的信息系統(tǒng),尤其是Web應(yīng)用系統(tǒng),其集成需要實(shí)現(xiàn)對(duì)用戶(hù)的統(tǒng)一管理和認(rèn)證,在此基礎(chǔ) 上,為進(jìn)一步對(duì)信息系統(tǒng)和資源訪(fǎng)問(wèn)進(jìn)行控制,就需要實(shí)現(xiàn)針對(duì)用戶(hù)的資源或 服務(wù)的授權(quán)和訪(fǎng)問(wèn)控制。授權(quán)和訪(fǎng)問(wèn)控制所實(shí)現(xiàn)的功能是對(duì)訪(fǎng)問(wèn)應(yīng)用系統(tǒng)中的資源或服務(wù)的權(quán)限 控制,它是網(wǎng)絡(luò)信息設(shè)施的一個(gè)重要組成部分,通過(guò)限制資源訪(fǎng)問(wèn),防止非法 用戶(hù)的侵入或合法用戶(hù)的不慎操作而造成的破壞,從而保證系統(tǒng)資源或服務(wù)的 合法使用。訪(fǎng)問(wèn)控制的核心是授權(quán)策略和方法,即用于確定一個(gè)主體是否能對(duì) 客體擁有訪(fǎng)問(wèn)能力的一套規(guī)則,在分布式的網(wǎng)絡(luò)環(huán)境下,主體是注冊(cè)用戶(hù),客 體是分布系統(tǒng)中不同粒度和類(lèi)別的資源或服務(wù)。傳統(tǒng)應(yīng)用系統(tǒng)的權(quán)限管理實(shí)質(zhì)是建立用戶(hù)、角色、資源、操作權(quán)限的映射 關(guān)系集合,滿(mǎn)足對(duì)資源控制的需求,例如,申請(qǐng)?zhí)枮?0129495.4的專(zhuān)利文獻(xiàn) 公開(kāi)了一種企業(yè)間基于角色的授權(quán)的方法,基于角色的訪(fǎng)問(wèn)控制雖然也有其優(yōu) 勢(shì)和適用的范圍,但現(xiàn)在企業(yè)內(nèi)部的信息系統(tǒng)多數(shù)是分布式的,其構(gòu)建也往往 采用開(kāi)放的面向服務(wù)的架構(gòu)(Service Oriented Architecture, SOA),并多采用 Web服務(wù)進(jìn)行松散的整合,XML技術(shù)成為其主要的技術(shù)方法。而且信息系統(tǒng) 的資源類(lèi)型復(fù)雜,流程復(fù)雜,基于角色的訪(fǎng)問(wèn)控制模型已無(wú)法滿(mǎn)足需求,成為 了制約信息流動(dòng)的瓶頸之一。具體地,傳統(tǒng)的基于角色的權(quán)限控制模型的數(shù)據(jù) 訪(fǎng)問(wèn)控制能力有限,缺乏靈活性。 一方面權(quán)限的過(guò)分集中而不能滿(mǎn)足需求,另一方面提高了授權(quán)邏輯的復(fù)雜度,并大大增加了系統(tǒng)管理員的工作量,對(duì)于授 權(quán)對(duì)象的粒度也往往比較少地考慮,因此針對(duì)分布式網(wǎng)絡(luò)環(huán)境下的權(quán)限控制需 要考慮不同的應(yīng)用需求,從各個(gè)不同的角度來(lái)實(shí)現(xiàn)。單純的用戶(hù)分級(jí)授權(quán)能解決一般資源的授權(quán)和訪(fǎng)問(wèn)控制問(wèn)題,但由于它屬 于一維的授權(quán)模式,對(duì)于復(fù)雜情況力不從心,當(dāng)資源或服務(wù)存在于多個(gè)層面, 從而需要有多個(gè)限制因素的時(shí)候, 一維的授權(quán)方式也不能滿(mǎn)足要求,也就是說(shuō) 如果把權(quán)限控制粒度只設(shè)定到某一類(lèi)別或較粗粒度上的話(huà),對(duì)于更細(xì)化的資源 或服務(wù)就無(wú)法控制。發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問(wèn)題在于提供一種分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方 法和系統(tǒng)。為達(dá)到上述目的,本發(fā)明提供的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,應(yīng)用于 包括一個(gè)通用認(rèn)證授權(quán)服務(wù)器和多個(gè)不同類(lèi)型應(yīng)用系統(tǒng)的控制系統(tǒng),其特征在 于,包括分級(jí)權(quán)限控制步驟,用于通過(guò)所述通用認(rèn)證授權(quán)服務(wù)器設(shè)定用戶(hù)級(jí)別,并 傳遞用戶(hù)分級(jí)信息給所述應(yīng)用系統(tǒng),通過(guò)驗(yàn)證用戶(hù)級(jí)別與應(yīng)用系統(tǒng)的資源或服 務(wù)的級(jí)別匹配關(guān)系決定用戶(hù)對(duì)粗粒度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限;分組權(quán)限控制步驟,用于通過(guò)所述應(yīng)用系統(tǒng)對(duì)用戶(hù)和資源/服務(wù)分別進(jìn)行 分組設(shè)定,通過(guò)驗(yàn)證用戶(hù)分組與資源/服務(wù)分組之間的相交關(guān)系決定用戶(hù)對(duì)細(xì) 粒度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限。上述分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,其特征在于,所述分級(jí)訪(fǎng)問(wèn)控制步 驟進(jìn)一步包括步驟S101,通過(guò)所述通用認(rèn)證授權(quán)服務(wù)器設(shè)定用戶(hù)級(jí)別,并在用戶(hù)完成 統(tǒng)一登錄認(rèn)證后,傳遞用戶(hù)分級(jí)信息給應(yīng)用系統(tǒng);步驟S102,所述應(yīng)用系統(tǒng)解析該用戶(hù)分級(jí)信息,獲取用戶(hù)名和用戶(hù)級(jí)別 <曰息;步驟S103,用戶(hù)訪(fǎng)問(wèn)受限資源,本地應(yīng)用系統(tǒng)根據(jù)預(yù)先約定的資源或服 務(wù)的級(jí)別與該用戶(hù)的級(jí)別比對(duì),決定用戶(hù)的訪(fǎng)問(wèn)權(quán)限;當(dāng)用戶(hù)級(jí)別高于或等于 數(shù)據(jù)資源的級(jí)別時(shí),能訪(fǎng)問(wèn);否則拒絕訪(fǎng)問(wèn)并發(fā)出相關(guān)的提示信息。上述分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,其特征在于,所述分組訪(fǎng)問(wèn)控制步 驟進(jìn)一步包括步驟S201,預(yù)先在本地應(yīng)用系統(tǒng)對(duì)用戶(hù)和資源/服務(wù)分別進(jìn)行分組設(shè)定;步驟S202,當(dāng)用戶(hù)通過(guò)級(jí)別驗(yàn)證,需要訪(fǎng)問(wèn)受分組權(quán)限控制的細(xì)粒度資源時(shí),部署在應(yīng)用系統(tǒng)的分組訪(fǎng)問(wèn)控制邏輯檢測(cè)用戶(hù)分組與細(xì)粒度數(shù)據(jù)資源分 組的關(guān)系決定用戶(hù)的訪(fǎng)問(wèn)權(quán)限,如果有相交的分組則能訪(fǎng)問(wèn),否則拒絕訪(fǎng)問(wèn)并 發(fā)出相關(guān)的提示信息。上述分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,其特征在于,在所述步驟SIOI中, 傳遞用戶(hù)分級(jí)信息時(shí),用戶(hù)的級(jí)別信息與用戶(hù)名信息通過(guò)XML文檔進(jìn)行傳遞, 在所述步驟S102中,采用一個(gè)基于SAX的解析器對(duì)該XML文檔進(jìn)行解析。進(jìn)一步的,本發(fā)明提供了一種分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),包括一通 用認(rèn)證授權(quán)服務(wù)器及多個(gè)不同類(lèi)型應(yīng)用系統(tǒng),其特征在于,包括其中,所述通用認(rèn)證授權(quán)服務(wù)器,用于提供用戶(hù)的統(tǒng)一登錄認(rèn)證功能、用戶(hù)分級(jí) 設(shè)定功能及用戶(hù)信息的發(fā)布功能,在用戶(hù)完成統(tǒng)一登錄認(rèn)證后,傳遞用戶(hù)分級(jí) 信息給應(yīng)用系統(tǒng);所述應(yīng)用系統(tǒng),用于部署分級(jí)和分組訪(fǎng)問(wèn)控制邏輯,并通過(guò)驗(yàn)證用戶(hù)級(jí)別 與應(yīng)用系統(tǒng)的數(shù)據(jù)服務(wù)的級(jí)別的匹配關(guān)系決定用戶(hù)對(duì)粗粒度資源或服務(wù)的訪(fǎng) 問(wèn)權(quán)限,驗(yàn)證用戶(hù)分組與資源或服務(wù)分組之間相交關(guān)系決定用戶(hù)對(duì)細(xì)粒度資源 或服務(wù)的訪(fǎng)問(wèn)權(quán)限。上述分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于,所述通用認(rèn)證授權(quán)服務(wù)器上進(jìn)一步設(shè)置一用戶(hù)分級(jí)設(shè)定模塊,用于對(duì)用戶(hù)分級(jí)相關(guān)信息進(jìn)行設(shè)定,并在用戶(hù)完成統(tǒng)一登錄認(rèn)證后,將該用戶(hù)分級(jí)相關(guān)信息按設(shè)定格式文件返回給應(yīng)用系統(tǒng);一用戶(hù)信息發(fā)布模塊,基于用戶(hù)庫(kù)中的信息提供用戶(hù)信息發(fā)布Web服務(wù)。上述分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于,所述應(yīng)用系統(tǒng)中進(jìn)一步設(shè)置一資源分級(jí)訪(fǎng)問(wèn)控制模塊,用于從所述格式文件中解析出用戶(hù)名信息和用戶(hù)級(jí)別信息,并根據(jù)約定對(duì)相關(guān)資源或服務(wù)根據(jù)用戶(hù)的級(jí)別提供訪(fǎng)問(wèn)控制;一用戶(hù)分組設(shè)定模塊,用于提供管理界面,為本地管理提供針對(duì)具體用7戶(hù)的分組設(shè)定功能;一資源分組設(shè)定模塊,用于提供本地管理對(duì)應(yīng)用系統(tǒng)中的資源或服務(wù)的 分組設(shè)定功能;一資源分組訪(fǎng)問(wèn)控制模塊,用于針對(duì)用戶(hù)的訪(fǎng)問(wèn),動(dòng)態(tài)檢測(cè)本地所設(shè)定 的用戶(hù)和資源/服務(wù)的分組,根據(jù)該用戶(hù)與資源的分組的關(guān)系實(shí)現(xiàn)訪(fǎng)問(wèn)控制功 能。上述分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于,所述用戶(hù)分級(jí)設(shè)定模 塊中的用戶(hù)信息數(shù)據(jù)庫(kù)表中增加控制用戶(hù)級(jí)別的USER—LEVEL字段用于標(biāo)識(shí) 用戶(hù)的級(jí)別。上述分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于,所述用戶(hù)分級(jí)設(shè)定模 塊中,如果需要更詳細(xì)的用戶(hù)分級(jí)權(quán)限分配,單獨(dú)設(shè)置一權(quán)限控制表,專(zhuān)門(mén)用 于用戶(hù)的權(quán)限角色管理。上述分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于,所述資源分級(jí)訪(fǎng)問(wèn)控 制模塊中包括一個(gè)基于SAX的解析器,用于對(duì)用戶(hù)分級(jí)設(shè)定模塊返回給應(yīng)用 系統(tǒng)的包含用戶(hù)分級(jí)信息分級(jí)XML文件進(jìn)行解析,獲取其中的用戶(hù)名和用戶(hù) 級(jí)別信息。與現(xiàn)有技術(shù)相比,本發(fā)明提供的分布式分級(jí)分組雙重授權(quán)及訪(fǎng)問(wèn)控制方法 和系統(tǒng)中,認(rèn)證授權(quán)服務(wù)器獨(dú)立于各個(gè)應(yīng)用系統(tǒng),這也就意味著各個(gè)應(yīng)用系統(tǒng) 不能直接讀取用戶(hù)數(shù)據(jù)庫(kù),數(shù)據(jù)的訪(fǎng)問(wèn)控制邏輯卻必須部署在各個(gè)應(yīng)用系統(tǒng) 中,采用一種分離的設(shè)計(jì)。通過(guò)分布式的用戶(hù)授權(quán)和訪(fǎng)問(wèn)控制,提高了授權(quán)系 統(tǒng)和訪(fǎng)問(wèn)控制系統(tǒng)的靈活性,降低了各個(gè)應(yīng)用系統(tǒng)之間的耦合度,相互之間的 依賴(lài)性小,提高了用戶(hù)授權(quán)的效率和資源的安全。本發(fā)明通過(guò)雙重用戶(hù)授權(quán)和訪(fǎng)問(wèn)控制,分別對(duì)粗粒度和細(xì)粒度的資源或服 務(wù)進(jìn)行權(quán)限控制。粗粒度可以對(duì)應(yīng)于一些全局的應(yīng)用,而分組的方法不僅可以 將資源的控制粒度擴(kuò)展到任意粒度的資源,而且將用戶(hù)信息通過(guò)Web服務(wù)在 應(yīng)用域內(nèi)提供,將分組控制邏輯放到具體的數(shù)據(jù)存放地,有利于平臺(tái)的靈活組 合和自治,符合軟件復(fù)用的思想,有利于系統(tǒng)的擴(kuò)展。


圖1為本發(fā)明分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法的流程圖;圖2為本發(fā)明方法中用戶(hù)與資源的分組管理設(shè)置界面示意圖;圖3為本發(fā)明方法中數(shù)據(jù)保護(hù)期設(shè)置界面示意圖;圖4為本發(fā)明分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng)示意框圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例,對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步描述,但本發(fā) 明不局限于下面的實(shí)施例。本發(fā)明提供的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,應(yīng)用于包括一個(gè)通用認(rèn)證 授權(quán)服務(wù)器和多個(gè)不同類(lèi)型應(yīng)用系統(tǒng)的控制系統(tǒng),主要的思想在于雙重授權(quán) 方案分別對(duì)粗粒度和細(xì)粒度的資源或服務(wù)進(jìn)行權(quán)限控制,通過(guò)對(duì)用戶(hù)進(jìn)行分 級(jí),將粗粒度資源根據(jù)與對(duì)應(yīng)用戶(hù)分級(jí)的約定實(shí)現(xiàn)權(quán)限控制;粗粒度的資源或 服務(wù)可以對(duì)應(yīng)于一些全局的應(yīng)用,對(duì)于細(xì)粒度的資源或服務(wù),進(jìn)一步通過(guò)應(yīng)用 系統(tǒng)本地授權(quán)和驗(yàn)證的方法,完成分布式分組授權(quán)功能,細(xì)粒度資源或服務(wù)對(duì) 應(yīng)于系統(tǒng)中的一些特殊操作等,在這種雙重權(quán)限控制方法中,用戶(hù)可以根據(jù)相 應(yīng)的級(jí)別來(lái)確定是否有粗粒度資源或服務(wù)訪(fǎng)問(wèn)或其它的操作權(quán)限,從而確定是 否有某類(lèi)應(yīng)用的權(quán)限,而當(dāng)?shù)搅烁蛹?xì)化的細(xì)微操作時(shí),如對(duì)其一操作方法的 訪(fǎng)問(wèn)時(shí),可以通過(guò)査看分組映射來(lái)確定是否具有更進(jìn)一步的訪(fǎng)問(wèn)權(quán)限。本發(fā)明 的分組的方法不僅可以將資源或服務(wù)的控制粒度擴(kuò)展到任意粒度,而需要將用 戶(hù)信息通過(guò)Web服務(wù)在應(yīng)用域內(nèi)提供,將分組控制邏輯放到本地應(yīng)用系統(tǒng), 有利于平臺(tái)的靈活組合和自治。圖1示出了本發(fā)明分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法的實(shí)施流程,參考圖1,本發(fā)明提供的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法包括分級(jí)權(quán)限控制步驟,用于通過(guò)通用認(rèn)證授權(quán)服務(wù)器(Certificate &Authorization Server,簡(jiǎn)稱(chēng)CA)設(shè)定用戶(hù)級(jí)別,并由CA傳遞用戶(hù)分級(jí)信息給所述應(yīng)用系統(tǒng),通過(guò)驗(yàn)證用戶(hù)級(jí)別與應(yīng)用系統(tǒng)的資源或服務(wù)級(jí)別的匹配關(guān)系 決定用戶(hù)對(duì)粗粒度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限;分組權(quán)限控制步驟,用于通過(guò)所述應(yīng)用系統(tǒng)對(duì)用戶(hù)和資源/服務(wù)分別進(jìn)行 分組設(shè)定,通過(guò)驗(yàn)證用戶(hù)分組與資源或服務(wù)分組之間相交關(guān)系決定用戶(hù)對(duì)細(xì)粒 度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限。上述分級(jí)權(quán)限控制步驟進(jìn)一步包括步驟S101,通過(guò)CA設(shè)定用戶(hù)級(jí)別,并在用戶(hù)完成統(tǒng)一登錄認(rèn)證后,傳遞用戶(hù)分級(jí)信息給應(yīng)用系統(tǒng)。
用戶(hù)訪(fǎng)問(wèn)分布式的應(yīng)用系統(tǒng)中的相應(yīng)資源或服務(wù)時(shí),要進(jìn)行全局登錄認(rèn)證,之后讀取該用戶(hù)級(jí)別信息,并將其返回給應(yīng)用系統(tǒng)。為保持系統(tǒng)的跨平臺(tái)性,用戶(hù)的級(jí)別信息與用戶(hù)名信息一起通過(guò)XML文檔封裝后來(lái)進(jìn)行傳遞。在利用Java平臺(tái)的具體實(shí)施中,在用戶(hù)認(rèn)證的Servlet中將用戶(hù)名和級(jí)別信息寫(xiě)在一個(gè)結(jié)構(gòu)化的XML文檔中,直接傳給客戶(hù)端。其中,Servlet是用Java編寫(xiě)的服務(wù)器端程序,它與協(xié)議和平臺(tái)無(wú)關(guān)。Servlet運(yùn)行于支持Java的服務(wù)器中,可以動(dòng)態(tài)地?cái)U(kuò)展服務(wù)器的能力,并采用請(qǐng)求一響應(yīng)模式提供Web服務(wù)。
以下代碼片段展示了認(rèn)證授權(quán)服務(wù)器在用戶(hù)登錄成功后輸出用戶(hù)名及級(jí)別信息的代碼,通過(guò)XML文檔返回給客戶(hù)應(yīng)用,XML文檔的方式增強(qiáng)平臺(tái)可擴(kuò)展性和靈活性,其中"user"是用戶(hù)名變量,"level"為用戶(hù)的級(jí)別變
protected void validationSuccess(PrintWriter out, ServiceTicket st) {String —user=st.getUsername();try{
—level=String.va/weCy(UserLvlMan.getUserLevel(_user));}catch(Exception e){e.printStackTrace();
out.println("<sso:serviceResponse xmlns:sso=*http:〃www.geodata.cn/sso'>");
out.println(" <sso:authenticationSuccess>',);
out,println(" <sso:user>"十一user + "</sso:user〉");
out.println(" <sso:level>"+」evel+,,</sso:level>");
out,println(" </ sso: authenticationSuccess>,,);
out.println("</sso:serviceResponse>");}
步驟S102,應(yīng)用系統(tǒng)得到的XML文檔,獲取用戶(hù)名和用戶(hù)級(jí)別信息。上述步驟S101返回給應(yīng)用系統(tǒng)一個(gè)XML文檔,此XML文檔的格式如下面的代碼片段所示。其中包含實(shí)際的登錄用戶(hù)名以及用戶(hù)的級(jí)別信息,部署在應(yīng)用系統(tǒng)中的分級(jí)訪(fǎng)問(wèn)控制模塊具有解析此XML文檔的功能,它以攔截器的形式工作,在Java環(huán)境中,可使用應(yīng)用服務(wù)器中的過(guò)濾器機(jī)制實(shí)現(xiàn),通過(guò)一個(gè)基于SAX的解析器對(duì)這個(gè)返回的XML文檔進(jìn)行解析,獲取其中的用戶(hù)名
10和用戶(hù)的級(jí)別信息。其中,SAX是指用于XML的簡(jiǎn)單API (Simple API forXML, SAX) , SAX是一個(gè)用于處理XML事件驅(qū)動(dòng)的"推"模型,它是一個(gè)得到了廣泛認(rèn)可的API。在本例中,所獲取用戶(hù)名為"lrd",其級(jí)別為"2"。
〈sso:serviceResponse xmlns:sso=,http:〃www.geodata.cn/sso,〉<sso:authenticationSuccess><sso:user>lrd</sso:user〉<sso:level>"2"</sso:level></sso: authenticationSuccess〉</sso:serviceResponse>
步驟S103,應(yīng)用系統(tǒng)獲取了用戶(hù)級(jí)別以后,用戶(hù)對(duì)受限資源或服務(wù)進(jìn)行訪(fǎng)問(wèn)的時(shí)候,本地應(yīng)用系統(tǒng)根據(jù)預(yù)先約定的資源或服務(wù)的級(jí)別與該用戶(hù)的級(jí)別比對(duì),決定用戶(hù)是否可以訪(fǎng)問(wèn);當(dāng)用戶(hù)級(jí)別高于或等于資源或服務(wù)的級(jí)別時(shí),能訪(fǎng)問(wèn);否則拒絕訪(fǎng)問(wèn)并發(fā)出相關(guān)的提示信息。
對(duì)于加入此授權(quán)和訪(fǎng)問(wèn)控制體系的各個(gè)應(yīng)用系統(tǒng),訪(fǎng)問(wèn)控制邏輯在獲取用戶(hù)的級(jí)別信息后可以利用Session對(duì)象來(lái)提高訪(fǎng)問(wèn)效率。將用戶(hù)名和用戶(hù)級(jí)別等標(biāo)識(shí)信息存入Session對(duì)象中,這樣當(dāng)用戶(hù)訪(fǎng)問(wèn)下一個(gè)資源或服務(wù)的時(shí)候,就不需要因開(kāi)啟新的級(jí)別獲取進(jìn)程而去訪(fǎng)問(wèn)CA,提高系統(tǒng)的響應(yīng)。其中Session對(duì)象是應(yīng)用服務(wù)器實(shí)現(xiàn)的,用于記錄使用者私有的數(shù)據(jù)變量,以作為用戶(hù)再次對(duì)服務(wù)器提出要求時(shí)做確認(rèn),存在Session對(duì)象中的變量在用戶(hù)的一次會(huì)話(huà)結(jié)束前將不會(huì)消失,根據(jù)實(shí)現(xiàn)方式的不同,Session中的變量可以通過(guò)多種方式存儲(chǔ)。
上述過(guò)程中CA中實(shí)現(xiàn)認(rèn)證與授權(quán)的模塊可以與用戶(hù)管理等相關(guān)模塊放到一起部署運(yùn)行,也可以作為獨(dú)立的系統(tǒng)運(yùn)行。分布式分級(jí)授權(quán)及訪(fǎng)問(wèn)控制的對(duì)象是比較粗粒度的資源或服務(wù),也就是說(shuō)對(duì)于某一類(lèi)或?qū)儆谀骋粋€(gè)域的資源或服務(wù)是適用的,如對(duì)具體的應(yīng)用模塊或某一類(lèi)信息條目,權(quán)限控制可以用分級(jí)的方式進(jìn)行,對(duì)于更細(xì)化的資源權(quán)限控制,如對(duì)某條目下的具體不同的數(shù)據(jù)資源的訪(fǎng)問(wèn),則屬于需要進(jìn)一步授權(quán)的內(nèi)容,在這種情況下,分級(jí)權(quán)限控制的步驟或者是其授權(quán)和訪(fǎng)問(wèn)權(quán)限驗(yàn)證的第一步,可在分級(jí)的基礎(chǔ)上再借助于分組的授權(quán)和訪(fǎng)問(wèn)控制實(shí)現(xiàn)其要求。下面進(jìn)一步描述分組權(quán)限控制步驟的實(shí)施流程。上述分組權(quán)限控制步驟進(jìn)一步包括
步驟S201,預(yù)先在本地應(yīng)用系統(tǒng)對(duì)用戶(hù)和資源/服務(wù)分別進(jìn)行分組設(shè)定。
一方面,應(yīng)用系統(tǒng)根據(jù)分組設(shè)定的需要將從部署在通用認(rèn)證授權(quán)服務(wù)器的
用戶(hù)信息發(fā)布Web服務(wù)獲取的用戶(hù)信息入庫(kù)并實(shí)現(xiàn)多元分組設(shè)定,另一方面,將應(yīng)用系統(tǒng)中細(xì)粒度的資源或服務(wù)進(jìn)行多元分組。組名可以從各應(yīng)用系統(tǒng)管理界面自由設(shè)定和添加,組與其分配條目(包括用戶(hù)和資源/服務(wù))是多對(duì)多的關(guān)系, 一個(gè)用戶(hù)可以屬于多個(gè)組, 一條資源可以屬于多個(gè)組, 一個(gè)組中可能有多個(gè)用戶(hù)或資源/服務(wù)。具有相交分組的用戶(hù)和資源/服務(wù)具有訪(fǎng)問(wèn)與被訪(fǎng)問(wèn)的權(quán)限。
步驟S202,當(dāng)用戶(hù)通過(guò)分級(jí)訪(fǎng)問(wèn)控制的驗(yàn)證,并訪(fǎng)問(wèn)細(xì)粒度資源或服務(wù)時(shí),通過(guò)部署在應(yīng)用系統(tǒng)的分組訪(fǎng)問(wèn)控制邏輯檢測(cè)用戶(hù)分組與細(xì)粒度資源或服務(wù)分組的匹配關(guān)系決定用戶(hù)的訪(fǎng)問(wèn)權(quán)限,匹配則能訪(fǎng)問(wèn),否則拒絕訪(fǎng)問(wèn)并發(fā)出相關(guān)的提示信息。
用戶(hù)訪(fǎng)問(wèn)分布式系統(tǒng)中需要訪(fǎng)問(wèn)控制的細(xì)粒度的資源或服務(wù),部署在應(yīng)用系統(tǒng)的分組訪(fǎng)問(wèn)控制邏輯運(yùn)作,它檢測(cè)用戶(hù)是否和資源或服務(wù)是否具有相交分組來(lái)判斷是否可以訪(fǎng)問(wèn)資源或服務(wù),相當(dāng)于為資源或服務(wù)加了一把鎖。
圖2是后臺(tái)資源/服務(wù)和用戶(hù)的分組管理界面示意圖,分別表示一個(gè)用戶(hù)所具有的分組和一個(gè)資源/服務(wù)所具有的分組,由于他們沒(méi)有相重疊的分組,所以上述的用戶(hù)無(wú)法訪(fǎng)問(wèn)編號(hào)為"100101-0-361"這一資源/服務(wù)。為了簡(jiǎn)化實(shí)施,如果某一資源或服務(wù)沒(méi)有分配組的時(shí)候,該資源或服務(wù)是開(kāi)放的,可以被任何用戶(hù)訪(fǎng)問(wèn)。
除了權(quán)限設(shè)定,本方案可以允許多種擴(kuò)展,如可在分級(jí)和分組兩個(gè)層面增加訪(fǎng)問(wèn)保護(hù)期功能,通過(guò)增加保護(hù)期管理界面來(lái)實(shí)現(xiàn)設(shè)定,各自的訪(fǎng)問(wèn)控制邏輯只需增加適當(dāng)?shù)尿?yàn)證條件。如圖3所示,圖3示出了一種數(shù)據(jù)保護(hù)期管理界面示意, 一類(lèi)或某一資源或服務(wù)如果由于某種原因當(dāng)前不允許被訪(fǎng)問(wèn)使用的話(huà),可以在后臺(tái)設(shè)置中對(duì)其添加一個(gè)解除保護(hù)的時(shí)間點(diǎn),沒(méi)有到達(dá)解除保護(hù)時(shí)間點(diǎn)的資源或服務(wù)則稱(chēng)為在保護(hù)期以?xún)?nèi),這樣當(dāng)用戶(hù)訪(fǎng)問(wèn)的時(shí)候,訪(fǎng)問(wèn)控制模塊會(huì)自動(dòng)檢測(cè)數(shù)據(jù)是否已經(jīng)過(guò)保護(hù)期,并滿(mǎn)足訪(fǎng)問(wèn)條件,如果當(dāng)前時(shí)間還在保護(hù)期以?xún)?nèi),則提示用戶(hù)該條資源或服務(wù)不能被訪(fǎng)問(wèn)。
本發(fā)明的方法,對(duì)用戶(hù)和資源/服務(wù)的授權(quán)在本地應(yīng)用系統(tǒng),訪(fǎng)問(wèn)控制邏輯也位于各個(gè)分布式應(yīng)用系統(tǒng)中。實(shí)現(xiàn)了資源或服務(wù)可拓的管理模式,為了能
將各個(gè)不同的應(yīng)用系統(tǒng)中的資源或服務(wù)的權(quán)限分組統(tǒng)一管理,在CA部署一個(gè)用戶(hù)信息發(fā)布Web服務(wù),它的目的是讓其它應(yīng)用系統(tǒng)查詢(xún)并獲取所需要設(shè)定的用戶(hù)簡(jiǎn)單信息。當(dāng)應(yīng)用系統(tǒng)需要對(duì)某一用戶(hù)進(jìn)行權(quán)限分組時(shí),通過(guò)調(diào)用認(rèn)證授權(quán)服務(wù)器的用戶(hù)信息發(fā)布Web服務(wù)來(lái)獲取,然后將需要賦予用戶(hù)分組的用戶(hù)駐留本地?cái)?shù)據(jù)庫(kù)中,由于只有登錄的用戶(hù),也就是有效的用戶(hù)最終可能使用應(yīng)用系統(tǒng)的用戶(hù)分組訪(fǎng)問(wèn)控制,所以,應(yīng)用系統(tǒng)通過(guò)這個(gè)Web服務(wù)得到的用戶(hù)不會(huì)受到CA上用戶(hù)刪除或變更的影響,而應(yīng)用系統(tǒng)通過(guò)Web服務(wù)獲取需要的用戶(hù)信息。
進(jìn)一步的,本發(fā)明還提供了一種實(shí)現(xiàn)上述方法的系統(tǒng),圖4示出了本發(fā)明系統(tǒng)模型示意框圖,參考圖4,該系統(tǒng)包括一個(gè)通用認(rèn)證授權(quán)服務(wù)器10和多個(gè)不同類(lèi)型應(yīng)用系統(tǒng)20,其中,通用認(rèn)證授權(quán)服務(wù)器用于提供用戶(hù)的統(tǒng)一登錄認(rèn)證功能、用戶(hù)分級(jí)設(shè)定功能及存儲(chǔ)用戶(hù)信息的數(shù)據(jù)庫(kù),并利用Web服務(wù)實(shí)現(xiàn)用戶(hù)信息的發(fā)布功能。在用戶(hù)完成統(tǒng)一登錄認(rèn)證后,CA傳遞用戶(hù)分級(jí)信息給應(yīng)用系統(tǒng),而分組設(shè)置模塊對(duì)用戶(hù)和資源/服務(wù)分別進(jìn)行分組設(shè)定。應(yīng)用系統(tǒng)上部署的訪(fǎng)問(wèn)控制邏輯通過(guò)驗(yàn)證用戶(hù)級(jí)別與應(yīng)用系統(tǒng)的資源或服務(wù)的級(jí)別的匹配關(guān)系,決定用戶(hù)對(duì)粗粒度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限,驗(yàn)證用戶(hù)分組與數(shù)據(jù)服務(wù)分組之間的相交關(guān)系決定用戶(hù)對(duì)細(xì)粒度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限。
上述通用認(rèn)證授權(quán)服務(wù)器10進(jìn)一步包括了用戶(hù)分級(jí)設(shè)定模塊101,用戶(hù)信息發(fā)布模塊102;各個(gè)應(yīng)用系統(tǒng)包括了資源分級(jí)訪(fǎng)問(wèn)控制模塊201,用戶(hù)分組設(shè)定模塊202,資源分組設(shè)定模塊203和資源分組訪(fǎng)問(wèn)控制模塊204。
為實(shí)現(xiàn)資源或服務(wù)可拓的管理模式,本發(fā)明要求對(duì)用戶(hù)和資源/服務(wù)的分組授權(quán)在分布式應(yīng)用系統(tǒng)中,權(quán)限驗(yàn)證邏輯也在分布式應(yīng)用系統(tǒng)中。為了能將各個(gè)不同的應(yīng)用系統(tǒng)中的資源或服務(wù)的權(quán)限分組統(tǒng)一管理,在認(rèn)證授權(quán)服務(wù)器部署了一個(gè)用戶(hù)信息發(fā)布Web服務(wù),它的目的是讓其它應(yīng)用系統(tǒng)查詢(xún)并獲取所需要的簡(jiǎn)單的用戶(hù)信息。當(dāng)應(yīng)用系統(tǒng)需要對(duì)某一用戶(hù)進(jìn)行權(quán)限分組時(shí),就可以通過(guò)調(diào)用認(rèn)證授權(quán)服務(wù)器的這個(gè)Web服務(wù)來(lái)獲取,然后將需要賦予用戶(hù)分組的用戶(hù)駐留本地?cái)?shù)據(jù)庫(kù)中,由于只有登錄的用戶(hù),也就是有效的用戶(hù)最終可能使用應(yīng)用系統(tǒng)的用戶(hù)分組訪(fǎng)問(wèn)控制,所以,應(yīng)用系統(tǒng)通過(guò)Web服務(wù)獲取用戶(hù)不會(huì)受到用戶(hù)刪除或變更的影響,而應(yīng)用系統(tǒng)也只通過(guò)Web服務(wù)獲取所需的用戶(hù)信息。下面對(duì)本發(fā)明授權(quán)和訪(fǎng)問(wèn)控制的核心功能模塊進(jìn)行詳細(xì)說(shuō)明
用戶(hù)級(jí)別設(shè)定模塊101:具有對(duì)用戶(hù)分級(jí)等相關(guān)信息的設(shè)定功能,用戶(hù)的分級(jí)成為用戶(hù)信息的一個(gè)屬性,它能在用戶(hù)完成統(tǒng)一登錄認(rèn)證以后,通過(guò)約定
格式文件返回給應(yīng)用系統(tǒng);如可以是通過(guò)XML文件封裝后返回給應(yīng)用系統(tǒng)。CA具有存儲(chǔ)用戶(hù)信息的數(shù)據(jù)庫(kù)表,實(shí)現(xiàn)用戶(hù)進(jìn)行級(jí)別設(shè)定,可以在用戶(hù)信息數(shù)據(jù)庫(kù)表中增加字段USER—LEVEL用于標(biāo)識(shí)用戶(hù)的級(jí)別,這個(gè)字段類(lèi)型為數(shù)字型。在用戶(hù)級(jí)別復(fù)雜的情況下,也可以單獨(dú)設(shè)立權(quán)限控制表(Access ControlList, ACL)等,專(zhuān)門(mén)用于用戶(hù)的權(quán)限角色管理,用戶(hù)的級(jí)別可以在后臺(tái)管理界面中提供設(shè)置入口,由系統(tǒng)管理員通過(guò)管理界面對(duì)注冊(cè)用戶(hù)進(jìn)行級(jí)別設(shè)定。用戶(hù)信息發(fā)布模塊102:它主要是用戶(hù)信息發(fā)布Web服務(wù),以便于分布式應(yīng)用系統(tǒng)對(duì)用戶(hù)信息進(jìn)行査詢(xún)和下載??梢酝ㄟ^(guò)管理界面決定將哪些用戶(hù)對(duì)外提供,以及對(duì)外提供信息的詳細(xì)程度。用戶(hù)的分組設(shè)定在具體的應(yīng)用系統(tǒng)中部署,這樣有利于各個(gè)應(yīng)用系統(tǒng)權(quán)限的自制。認(rèn)證授權(quán)服務(wù)器發(fā)布的可用于訪(fǎng)問(wèn)用戶(hù)信息的Web服務(wù)為L(zhǎng)istUserSVR,其相關(guān)的操作(方法)有g(shù)etSimpleUserlnfoList:用于獲取用戶(hù)信息類(lèi)的列表,getCount:用于獲取一次搜索得到的用戶(hù)的條目,getTotal:用于獲取本次返回的用戶(hù)的索引。在此Web服務(wù)的設(shè)計(jì)當(dāng)中,構(gòu)建一個(gè)簡(jiǎn)單的描述用戶(hù)類(lèi)型的類(lèi)SimpleUserlnfo,其中存儲(chǔ)的信息包含用戶(hù)ID,用戶(hù)的真實(shí)姓名,電子郵件地址以及用戶(hù)單位。部署在應(yīng)用系統(tǒng)中的用戶(hù)分組設(shè)定模塊操作的時(shí)候能訪(fǎng)問(wèn)該服務(wù),通過(guò)搜索得到的一系列用戶(hù)的信息,用一個(gè)定長(zhǎng)類(lèi)數(shù)組來(lái)對(duì)所有返回的SimpleUserlnfo類(lèi)進(jìn)行封閉(通過(guò)方法getSimpleUserlnfoList實(shí)現(xiàn)),同時(shí)帶上相關(guān)的索引信息,如一次査詢(xún)共有多少符合條件的用戶(hù)(通過(guò)方法getCount實(shí)現(xiàn)),本次返回了多少個(gè)用戶(hù)(通過(guò)方法getTotal實(shí)現(xiàn)),getCount和getTotal的返回值實(shí)現(xiàn)對(duì)用戶(hù)搜索和分頁(yè)顯示。然后根據(jù)設(shè)定的需要將用戶(hù)的信息入本地庫(kù)并實(shí)現(xiàn)分組設(shè)定。用戶(hù)信息發(fā)布Web服務(wù)中應(yīng)啟用一定的安全機(jī)制才能防止用戶(hù)信息被第三方竊取,通??刹捎每诹铗?yàn)證和XML加密的方法。另一個(gè)層面,在認(rèn)證授權(quán)服務(wù)器增加對(duì)用戶(hù)信息開(kāi)放的管理控制功能,可以設(shè)定對(duì)一些用戶(hù)不被訪(fǎng)問(wèn)和分組,還可以針對(duì)一些用戶(hù)對(duì)外開(kāi)放,但是不提供詳細(xì)信息。而其它用戶(hù)則可以被搜索出更詳細(xì)的信息并被使用。這涉及到對(duì)SimpleUserlnfo類(lèi)的擴(kuò)展和對(duì)ListUserSVR的加強(qiáng)。資源分級(jí)訪(fǎng)問(wèn)控制模塊201:具有對(duì)用戶(hù)級(jí)別設(shè)定模塊101返回應(yīng)用系統(tǒng)
包含用戶(hù)分級(jí)格式文件解析的能力,如具有對(duì)XML文件進(jìn)行解析的能力,以 從中解析出用戶(hù)名信息和用戶(hù)的級(jí)別信息,并根據(jù)約定對(duì)粗粒度、某一類(lèi)的資 源或某一域內(nèi)的資源或服務(wù)根據(jù)用戶(hù)的級(jí)別提供訪(fǎng)問(wèn)控制。
用戶(hù)分組設(shè)定模塊202:它提供管理界面,可以通過(guò)訪(fǎng)問(wèn)用戶(hù)信息發(fā)布模 塊102的用戶(hù)信息發(fā)布Web服務(wù)獲取用戶(hù)信息入庫(kù),通過(guò)本地管理界面提供 針對(duì)具體用戶(hù)的系統(tǒng)中的資源或服務(wù)的多元分組授權(quán)功能。
資源分組設(shè)定模塊203:提供本地管理界面對(duì)應(yīng)用系統(tǒng)中的資源或服務(wù)進(jìn) 行的分組授權(quán)。該資源分組設(shè)定模塊203可將應(yīng)用系統(tǒng)中細(xì)粒度的資源或服務(wù) 進(jìn)行多元分組。組與其分配條目是多對(duì)多的關(guān)系, 一條資源或服務(wù)可以屬于多 個(gè)組, 一個(gè)組中可能有多個(gè)資源或服務(wù)。
資源分組訪(fǎng)問(wèn)控制模塊204:對(duì)用戶(hù)的訪(fǎng)問(wèn),分組訪(fǎng)問(wèn)控制邏輯動(dòng)態(tài)檢測(cè) 本地所設(shè)定的用戶(hù)和資源/服務(wù)的分組,根據(jù)用戶(hù)與資源的分組的對(duì)應(yīng)關(guān)系實(shí) 現(xiàn)訪(fǎng)問(wèn)控制功能。
控制邏輯部署在應(yīng)用系統(tǒng)中,對(duì)用戶(hù)的訪(fǎng)問(wèn),它檢測(cè)用戶(hù)是否和資源或服 務(wù)所處的分組交集來(lái)進(jìn)行訪(fǎng)問(wèn)控制。
本發(fā)明所進(jìn)行的分布式授權(quán)和訪(fǎng)問(wèn)控制是在統(tǒng)一認(rèn)證的基礎(chǔ)上進(jìn)行的,在 統(tǒng)一認(rèn)證完成以后,可以根據(jù)資源或服務(wù)的權(quán)限需要來(lái)選擇一個(gè)層次的授權(quán)或 兩個(gè)層次的授權(quán),分級(jí)授權(quán)層次對(duì)較粗粒度的資源展開(kāi)的,用戶(hù)的分級(jí)是按照 一定的標(biāo)準(zhǔn)對(duì)注冊(cè)用戶(hù)進(jìn)行劃分,而應(yīng)用系統(tǒng)中的資源服務(wù)根據(jù)約定對(duì)應(yīng)于不 同的用戶(hù)予以不同的訪(fǎng)問(wèn)權(quán)限,高級(jí)別的用戶(hù)具有較高的權(quán)限,從而實(shí)現(xiàn)對(duì)信 息系統(tǒng)中資源的授權(quán)。采用本發(fā)明的方法及系統(tǒng),訪(fǎng)問(wèn)CA,獲取用戶(hù)的級(jí)別 信息,應(yīng)用系統(tǒng)中的分級(jí)訪(fǎng)問(wèn)控制模塊根據(jù)約定來(lái)判斷用戶(hù)是否具有粗粒度資 源或服務(wù)的訪(fǎng)問(wèn)權(quán)限,如果有訪(fǎng)問(wèn)權(quán)限,則可以訪(fǎng)問(wèn)相應(yīng)的資源,否則如果需 要細(xì)粒度的權(quán)限控制,則應(yīng)用系統(tǒng)中的資源分組訪(fǎng)問(wèn)控制模塊可以通過(guò)在應(yīng)用 系統(tǒng)中的用戶(hù)分組設(shè)定模塊和資源分組設(shè)定模塊所設(shè)置的結(jié)果來(lái)完成訪(fǎng)問(wèn)控 制,授權(quán)和訪(fǎng)問(wèn)控制過(guò)程簡(jiǎn)單、靈活和安全。
本發(fā)明提供的分布式分級(jí)分組雙重授權(quán)及訪(fǎng)問(wèn)控制方法和系統(tǒng)是一種輕 量級(jí)的解決方案,認(rèn)證授權(quán)服務(wù)器可以作為一個(gè)獨(dú)立的網(wǎng)絡(luò)應(yīng)用,權(quán)限設(shè)置及 控制客戶(hù)端軟件可以部署在各個(gè)需要加入統(tǒng)一認(rèn)證和權(quán)限控制的信息系統(tǒng)中,這種機(jī)制靈活、簡(jiǎn)單,可實(shí)施性強(qiáng);此外,可用多種網(wǎng)絡(luò)編程語(yǔ)言來(lái)編寫(xiě)用于 實(shí)現(xiàn)本發(fā)明的操作的計(jì)算機(jī)代碼,不同部分的代碼可以作為獨(dú)立的模塊部署在 不同的應(yīng)用系統(tǒng)和認(rèn)證授權(quán)服務(wù)器,并實(shí)現(xiàn)網(wǎng)絡(luò)環(huán)境下的交互,模塊化的設(shè)計(jì) 方案使應(yīng)用系統(tǒng)幾乎不涉及太多的交互代碼就能實(shí)現(xiàn)權(quán)限控制,簡(jiǎn)化系統(tǒng)的設(shè) 計(jì),降低了權(quán)限控制與業(yè)務(wù)應(yīng)用系統(tǒng)的邏輯的耦合度,有較強(qiáng)的易用性。
雖然本發(fā)明已以一較佳實(shí)施例揭露如上,然其并非用以限定本發(fā)明,在不 背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明做 出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán) 利要求的保護(hù)范圍。
權(quán)利要求
1、一種分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,應(yīng)用于包括一個(gè)通用認(rèn)證授權(quán)服務(wù)器和多個(gè)不同類(lèi)型應(yīng)用系統(tǒng)的控制系統(tǒng),其特征在于,包括分級(jí)權(quán)限控制步驟,用于通過(guò)所述通用認(rèn)證授權(quán)服務(wù)器設(shè)定用戶(hù)級(jí)別,并傳遞用戶(hù)分級(jí)信息給所述應(yīng)用系統(tǒng),通過(guò)驗(yàn)證用戶(hù)級(jí)別與應(yīng)用系統(tǒng)的資源或服務(wù)的級(jí)別匹配關(guān)系決定用戶(hù)對(duì)粗粒度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限;分組權(quán)限控制步驟,用于通過(guò)所述應(yīng)用系統(tǒng)對(duì)用戶(hù)和資源/服務(wù)分別進(jìn)行分組設(shè)定,通過(guò)驗(yàn)證用戶(hù)分組與資源/服務(wù)分組之間的相交關(guān)系決定用戶(hù)對(duì)細(xì)粒度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限。
2、 根據(jù)權(quán)利要求1所述的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,其特征在于,所述分級(jí)訪(fǎng)問(wèn)控制步驟進(jìn)一步包括步驟S101,通過(guò)所述通用認(rèn)證授權(quán)服務(wù)器設(shè)定用戶(hù)級(jí)別,并在用戶(hù)完成統(tǒng)一登錄認(rèn)證后,傳遞用戶(hù)分級(jí)信息給應(yīng)用系統(tǒng);步驟S102,所述應(yīng)用系統(tǒng)解析該用戶(hù)分級(jí)信息,獲取用戶(hù)名和用戶(hù)級(jí)別"(曰息;步驟S103,用戶(hù)訪(fǎng)問(wèn)受限資源,本地應(yīng)用系統(tǒng)根據(jù)預(yù)先約定的資源或服務(wù)的級(jí)別與該用戶(hù)的級(jí)別比對(duì),決定用戶(hù)的訪(fǎng)問(wèn)權(quán)限;當(dāng)甩戶(hù)級(jí)別高于或等于數(shù)據(jù)資源的級(jí)別時(shí),能訪(fǎng)問(wèn);否則拒絕訪(fǎng)問(wèn)并發(fā)出相關(guān)的提示信息。
3、 根據(jù)權(quán)利要求1或2所述的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,其特征在于,所述分組訪(fǎng)問(wèn)控制步驟進(jìn)一步包括步驟S201,預(yù)先在本地應(yīng)用系統(tǒng)對(duì)用戶(hù)和資源/服務(wù)分別進(jìn)行分組設(shè)定;步驟S202,當(dāng)用戶(hù)通過(guò)級(jí)別驗(yàn)證,需要訪(fǎng)問(wèn)受分組權(quán)限控制的細(xì)粒度資源時(shí),部署在應(yīng)用系統(tǒng)的分組訪(fǎng)問(wèn)控制邏輯檢測(cè)用戶(hù)分組與細(xì)粒度數(shù)據(jù)資源分組的關(guān)系決定用戶(hù)的訪(fǎng)問(wèn)權(quán)限,如果有相交的分組則能訪(fǎng)問(wèn),否則拒絕訪(fǎng)問(wèn)并發(fā)出相關(guān)的提示信息。
4、 根據(jù)權(quán)利要求2所述的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法,其特征在于,在所述步驟S101中,傳遞用戶(hù)分級(jí)信息時(shí),用戶(hù)的級(jí)別信息與用戶(hù)名信息通過(guò)XML文檔進(jìn)行傳遞,在所述步驟S102中,采用一個(gè)基于SAX的解析器對(duì)該XML文檔進(jìn)行解析。
5、 一種分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),包括一通用認(rèn)證授權(quán)服務(wù)器及 多個(gè)不同類(lèi)型應(yīng)用系統(tǒng),其特征在于,包括其中,所述通用認(rèn)證授權(quán)服務(wù)器,用于提供用戶(hù)的統(tǒng)一登錄認(rèn)證功能、用戶(hù)分級(jí) 設(shè)定功能及用戶(hù)信息的發(fā)布功能,在用戶(hù)完成統(tǒng)一登錄認(rèn)證后,傳遞用戶(hù)分級(jí) 信息給應(yīng)用系統(tǒng);所述應(yīng)用系統(tǒng),用于部署分級(jí)和分組訪(fǎng)問(wèn)控制邏輯,并通過(guò)驗(yàn)證用戶(hù)級(jí)別 與應(yīng)用系統(tǒng)的數(shù)據(jù)服務(wù)的級(jí)別的匹配關(guān)系決定用戶(hù)對(duì)粗粒度資源或服務(wù)的訪(fǎng) 問(wèn)權(quán)限,驗(yàn)證用戶(hù)分組與資源或服務(wù)分組之間相交關(guān)系決定用戶(hù)對(duì)細(xì)粒度資源 或服務(wù)的訪(fǎng)問(wèn)權(quán)限。
6、 根據(jù)權(quán)利要求5所述的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于, 所述通用認(rèn)證授權(quán)服務(wù)器上進(jìn)一步設(shè)置一用戶(hù)分級(jí)設(shè)定模塊,用于對(duì)用戶(hù)分級(jí)相關(guān)信息進(jìn)行設(shè)定,并在用戶(hù)完成統(tǒng)一登錄認(rèn)證后,將該用戶(hù)分級(jí)相關(guān)信息按設(shè)定格式文件返回給應(yīng)用系統(tǒng); 一用戶(hù)信息發(fā)布模塊,基于用戶(hù)庫(kù)中的信息提供用戶(hù)信息發(fā)布Web服務(wù)。
7、 根據(jù)權(quán)利要求5所述的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于, 所述應(yīng)用系統(tǒng)中進(jìn)一步設(shè)置-一資源分級(jí)訪(fǎng)問(wèn)控制模塊,用于從所述格式文件中解析出用戶(hù)名信息和 用戶(hù)級(jí)別信息,并根據(jù)約定對(duì)相關(guān)資源或服務(wù)根據(jù)用戶(hù)的級(jí)別提供訪(fǎng)問(wèn)控制;一用戶(hù)分組設(shè)定模塊,用于提供管理界面,為本地管理提供針對(duì)具體用 戶(hù)的分組設(shè)定功能;一資源分組設(shè)定模塊,用于提供本地管理對(duì)應(yīng)用系統(tǒng)中的資源或服務(wù)的 分組設(shè)定功能;—資源分組訪(fǎng)問(wèn)控制模塊,用于針對(duì)用戶(hù)的訪(fǎng)問(wèn),動(dòng)態(tài)檢測(cè)本地所設(shè)定 的用戶(hù)和資源/服務(wù)的分組,根據(jù)該用戶(hù)與資源的分組的關(guān)系實(shí)現(xiàn)訪(fǎng)問(wèn)控制功 能。
8、 根據(jù)權(quán)利要求6所述的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于, 所述用戶(hù)分級(jí)設(shè)定模塊中的用戶(hù)信息數(shù)據(jù)庫(kù)表中增加控制用戶(hù)級(jí)別的 USER_LEVEL字段用于標(biāo)識(shí)用戶(hù)的級(jí)別。
9、 根據(jù)權(quán)利要求6所述的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于,所述用戶(hù)分級(jí)設(shè)定模塊中,如果需要更詳細(xì)的用戶(hù)分級(jí)權(quán)限分配,單獨(dú)設(shè)置一 權(quán)限控制表,專(zhuān)門(mén)用于用戶(hù)的權(quán)限角色管理。
10、根據(jù)權(quán)利要求7所述的分布式雙重授權(quán)及訪(fǎng)問(wèn)控制系統(tǒng),其特征在于, 所述資源分級(jí)訪(fǎng)問(wèn)控制模塊中包括一個(gè)基于SAX的解析器,用于對(duì)用戶(hù)分級(jí) 設(shè)定模塊返回給應(yīng)用系統(tǒng)的包含用戶(hù)分級(jí)信息分級(jí)XML文件進(jìn)行解析,獲取 其中的用戶(hù)名和用戶(hù)級(jí)別信息。
全文摘要
本發(fā)明公開(kāi)了一種分布式雙重授權(quán)及訪(fǎng)問(wèn)控制方法及系統(tǒng),該方法應(yīng)用于包括一個(gè)通用認(rèn)證授權(quán)服務(wù)器和多個(gè)不同類(lèi)型應(yīng)用系統(tǒng)的控制系統(tǒng),該方法包括分級(jí)權(quán)限控制步驟,用于通過(guò)所述通用認(rèn)證授權(quán)服務(wù)器設(shè)定用戶(hù)級(jí)別,并傳遞用戶(hù)分級(jí)信息給所述應(yīng)用系統(tǒng),通過(guò)驗(yàn)證用戶(hù)級(jí)別與應(yīng)用系統(tǒng)的粗粒度資源或服務(wù)的級(jí)別的匹配關(guān)系決定用戶(hù)對(duì)此資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限;分組權(quán)限控制步驟,用于通過(guò)所述應(yīng)用系統(tǒng)對(duì)用戶(hù)和資源/服務(wù)分別進(jìn)行分組設(shè)定,通過(guò)驗(yàn)證用戶(hù)分組與數(shù)據(jù)服務(wù)分組之間相交關(guān)系決定用戶(hù)對(duì)細(xì)粒度資源或服務(wù)的訪(fǎng)問(wèn)權(quán)限。
文檔編號(hào)H04L29/06GK101631116SQ20091009083
公開(kāi)日2010年1月20日 申請(qǐng)日期2009年8月10日 優(yōu)先權(quán)日2009年8月10日
發(fā)明者劉潤(rùn)達(dá), 佳 杜, 諸云強(qiáng) 申請(qǐng)人:中國(guó)科學(xué)院地理科學(xué)與資源研究所
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1