專(zhuān)利名稱:網(wǎng)絡(luò)訪問(wèn)控制模型及其方法和終端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)技術(shù),尤其涉及一種對(duì)網(wǎng)絡(luò)資源訪問(wèn)進(jìn)行控制的方法和系統(tǒng)。
背景技術(shù):
在Web服務(wù)中,服務(wù)的請(qǐng)求與響應(yīng)通常通過(guò)簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議(Simple ObjectAccess Protocol, SOAP)消息基于超文本傳輸協(xié)議(HyperText Transport Protocol,HTTP)進(jìn)行傳遞,這使得傳統(tǒng)網(wǎng)絡(luò)層防火墻視SOAP消息為合法應(yīng)用層協(xié)議。如果非法用戶通過(guò)SOAP消息訪問(wèn)未經(jīng)保護(hù)的Web服務(wù),可能導(dǎo)致未授權(quán)的訪問(wèn),甚至對(duì)內(nèi)部應(yīng)用帶來(lái)危害。此外,一些Web服務(wù)可能只是針對(duì)特定用戶群開(kāi)放,只有經(jīng)過(guò)認(rèn)證和授權(quán)的請(qǐng)求者才能訪問(wèn)相應(yīng)的服務(wù)。因此,對(duì)服務(wù)請(qǐng)求進(jìn)行有效的訪問(wèn)控制是Web服務(wù)應(yīng)用中需重點(diǎn)解決的 問(wèn)題。Web服務(wù)環(huán)境具有開(kāi)放、動(dòng)態(tài)和分布式的特征,交互雙方通常都是陌生主體,可能位于不同安全域(不同安全域中的計(jì)算機(jī)通常具有不同的安全等級(jí)和安全需求),用戶身份和數(shù)量不可預(yù)知,進(jìn)行預(yù)先的身份信息存儲(chǔ)和權(quán)限分配是不現(xiàn)實(shí)的。因此,Web服務(wù)最好能夠進(jìn)行跨安全域的訪問(wèn)控制,實(shí)現(xiàn)對(duì)跨域的未知用戶的訪問(wèn)授權(quán)。傳統(tǒng)方法在假定用戶身份(identity)已經(jīng)確定的基礎(chǔ)上進(jìn)行訪問(wèn)控制,比如、在數(shù)據(jù)庫(kù)或訪問(wèn)控制策略中存在用戶身份與權(quán)限的固定關(guān)聯(lián),因而不適應(yīng)Web服務(wù)環(huán)境的需求。為了克服基于身份方法在開(kāi)放分布式環(huán)境中的局限性,行業(yè)內(nèi)提出了一種稱為基于角色的訪問(wèn)控制(Role-Based Access Control, RBAC)的方法,引入了角色的概念,管理員首先分配好各個(gè)角色的權(quán)限,然后將系統(tǒng)的用戶分配到各個(gè)不同的角色中,從而完成用戶權(quán)限的設(shè)定,而不用逐個(gè)設(shè)置用戶的使用權(quán)限。然而在上述方法中,用戶的權(quán)限仍然需要管理員設(shè)定,仍然存在著在陌生用戶的訪問(wèn)問(wèn)題。
發(fā)明內(nèi)容
本發(fā)明目的在于提供一種網(wǎng)絡(luò)訪問(wèn)控制模型及其方法和終端,從而能更好地提高網(wǎng)絡(luò)的安全訪問(wèn)性能。本發(fā)明提供的網(wǎng)絡(luò)訪問(wèn)控制模型用于對(duì)訪問(wèn)一網(wǎng)絡(luò)資源的用戶分配恰當(dāng)?shù)脑L問(wèn)權(quán)限,其特征在于,包括用戶模塊,用于提取所述用戶的至少一屬性;權(quán)限模塊,定義了對(duì)所述網(wǎng)絡(luò)資源的若干訪問(wèn)權(quán)限;角色模塊,定義了若干角色,每個(gè)角色預(yù)設(shè)有若干所述的訪問(wèn)權(quán)限;本體模塊,至少定義了用戶的所述屬性;規(guī)則模塊,至少定義了一規(guī)則,該規(guī)則基于所述屬性而分配給所述用戶一匹配的角色,從而使該用戶訪問(wèn)所述網(wǎng)絡(luò)資源;會(huì)話模塊,建立、維持和撤消所述匹配的角色與所屬用戶的關(guān)聯(lián)。
本發(fā)明還公開(kāi)了該網(wǎng)絡(luò)訪問(wèn)控制模型所采用的方法及其所應(yīng)用的服務(wù)終端。本發(fā)明能對(duì)訪問(wèn)控制的策略執(zhí)行與訪問(wèn)授權(quán)實(shí)現(xiàn)自動(dòng)的推理,允許合法的用戶訪問(wèn),禁止非法用戶訪問(wèn)。
圖I為本發(fā)明網(wǎng)絡(luò)資源的訪問(wèn)控制系統(tǒng)的一實(shí)施例的模塊圖;圖2為圖I中用戶模塊的一實(shí)施例的模塊圖。
具體實(shí)施例方式如圖I所示,本發(fā)明的較佳實(shí)施例中所提出的網(wǎng)絡(luò)訪問(wèn)控制策略模型包括RBAC本體、用戶模塊、會(huì)話模塊、角色模塊、權(quán)限模塊和規(guī)則模塊,其中規(guī)則模塊用來(lái)實(shí)現(xiàn)用戶模塊、角色模塊、權(quán)限模塊之間或內(nèi)部的推導(dǎo),從而自動(dòng)地分配用戶與角色、角色與權(quán)限之間 的對(duì)應(yīng)關(guān)系,并且根據(jù)實(shí)際需要,也可以對(duì)角色的分配進(jìn)行限制。本實(shí)施例中所說(shuō)的模塊,可以是單獨(dú)實(shí)現(xiàn)某一特定功能的軟件、硬件、固件或其組合,如程序、存儲(chǔ)介質(zhì)、集成電路等,也可以存儲(chǔ)在同一網(wǎng)絡(luò)實(shí)體或者分布式地存儲(chǔ)在不同網(wǎng)絡(luò)實(shí)體中,本發(fā)明并不想當(dāng)然的局限在特定的實(shí)施方式上。以下分別對(duì)各模塊做具體介紹。用戶模塊(Users/Credentials)為了增強(qiáng)角色分配的靈活性和動(dòng)態(tài)性,以適應(yīng)Web服務(wù)環(huán)境需求,本實(shí)施例直接使用用戶所提供的信任證(credential)來(lái)表征用戶,然后基于信任證及其屬性來(lái)進(jìn)行用戶-角色分配。這些信任證是由可信權(quán)威發(fā)布并簽名,能夠進(jìn)行跨域的驗(yàn)證和接受。如圖2所示,為了在語(yǔ)義層次上對(duì)各種信任證進(jìn)行概念、屬性以及關(guān)系的提取,本實(shí)施例構(gòu)造了一個(gè)信任證模塊(Credential),在用信任證表征用戶的前提下,該信任證模塊即用戶模塊,該模塊中對(duì)各種信任證進(jìn)行了分層次的提取,其中,用戶名令牌(UserNameToken)子類(lèi)表示其身份是由用戶名和密碼確定的用戶集合;二進(jìn)制安全令牌(BinarySecurityToken)子類(lèi)表示其身份是由某種二進(jìn)制安全令牌確定的用戶集合,如X. 509證書(shū)或Kerberos票據(jù);密鑰(Key)子類(lèi)表征其身份是由公鑰或?qū)ΨQ密鑰確定的用戶集合,等等。另外,Credential類(lèi)還包含了各種屬性(property)來(lái)提取和描述信任證中的相關(guān)屬性。比如,屬性被發(fā)布(issuedBy)用來(lái)指明用戶提供的信任證是由誰(shuí)發(fā)布的、屬性是否內(nèi)部(islnternal)用來(lái)表明用戶信任證針對(duì)服務(wù)提供者來(lái)說(shuō)是由外部權(quán)威還是內(nèi)部權(quán)威發(fā)布的、屬性是否有效(isValid)用來(lái)表示用戶提供的信任證當(dāng)前是否是有效的,等等?;谟脩裟K的各種概念和屬性斷言可作為后面提到的相關(guān)語(yǔ)義規(guī)則的前提條件,用來(lái)執(zhí)行動(dòng)態(tài)的角色分配。權(quán)限模塊(Permissions)權(quán)限是RBAC中對(duì)受保護(hù)對(duì)象執(zhí)行某個(gè)動(dòng)作的一種許可。在Web服務(wù)中,受保護(hù)對(duì)象包括服務(wù)以及服務(wù)的操作,其動(dòng)作就是對(duì)服務(wù)或服務(wù)操作的調(diào)用。因此,這里直接使用服務(wù)和操作來(lái)表不RBAC中權(quán)限的概念。權(quán)限模塊中分別定義服務(wù)模塊(Service)和操作模塊(Operation)來(lái)表示服務(wù)集和操作集,對(duì)象屬性具有操作(hasOperation)用來(lái)將類(lèi)Service和Operation關(guān)聯(lián)在一起,表示通過(guò)屬性hasOperation可以獲取一個(gè)服務(wù)對(duì)應(yīng)的操作的信息。被發(fā)布(publishedBy)和安全等級(jí)(securityLevel)是為類(lèi)Service和Operation定義的兩個(gè)數(shù)據(jù)類(lèi)型屬性,前者用來(lái)指明誰(shuí)是服務(wù)的發(fā)布者,而后者用來(lái)表示服務(wù)或操作所需要的安全級(jí)別。此外,還可以根據(jù)需求定義其他類(lèi)似的屬性,基于這些屬性的斷言可以作為后面提到的許可-角色分配的前提條件。服務(wù)模塊還可以進(jìn)一步劃分為兩個(gè)子模塊內(nèi)部服務(wù)模塊(InternalServie)和外部服務(wù)模塊(ExternalService),分別表示內(nèi)部服務(wù)集和外部服務(wù)集。不過(guò),在實(shí)際應(yīng)用中,一個(gè)服務(wù)既可能是內(nèi)部服務(wù)模塊的實(shí)例,又可能是外部服務(wù)模塊的實(shí)例,即這個(gè)服務(wù)既可以在內(nèi)部域使用,又允許被外部域?qū)嶓w調(diào)用,因此,內(nèi)部服務(wù)模塊和外部服務(wù)模塊通常是相交的。需要指出的是,根據(jù)具體應(yīng)用需求,可以在 服務(wù)模塊和操作模塊中構(gòu)造新的服務(wù)或操作以及新的屬性。此外,為了在權(quán)限模塊與角色模塊以及權(quán)限模塊與用戶模塊之間建立關(guān)聯(lián),本實(shí)施例還定義了一些特定的屬性。比如,對(duì)象類(lèi)型屬性分配服務(wù)(assignedService)和分配操作(assignedOperation)將角色模塊分別與權(quán)限模塊的服務(wù)模塊和操作模塊關(guān)聯(lián)在一起,表示通過(guò)這兩個(gè)屬性可以獲取角色有權(quán)訪問(wèn)的服務(wù)和操作信息;對(duì)象類(lèi)型屬性允許服務(wù)(permittedService)和允許操作(permittedOperation)將用戶模塊分別與權(quán)限模塊的服務(wù)模塊和操作模塊關(guān)聯(lián)在一起,表示通過(guò)這兩個(gè)屬性可以獲取擁有某信任證的用戶所有的有權(quán)訪問(wèn)的服務(wù)和操作信息;對(duì)象類(lèi)型屬性激活服務(wù)(activatedService)和激活操作(activatedOperation)也將用戶模塊與所述服務(wù)模塊和操作模塊關(guān)聯(lián)在一起,表示在當(dāng)前會(huì)話中用戶通過(guò)激活的角色而有權(quán)訪問(wèn)的服務(wù)和操作信息。角色模塊(Roles)角色模塊用來(lái)關(guān)聯(lián)前述的用戶模塊和權(quán)限模塊,即用戶通過(guò)其在角色模塊中對(duì)應(yīng)的具體角色而具有該角色的權(quán)限,進(jìn)而對(duì)服務(wù)進(jìn)行訪問(wèn)。為了避免角色的重復(fù)定義,本實(shí)施例中的角色模塊中定義了一個(gè)頂層角色類(lèi)(Role)來(lái)描述角色這個(gè)核心概念,每個(gè)具體的角色都是類(lèi)Role的一個(gè)實(shí)例,并且定義了對(duì)象屬性具有角色(hasRole)用來(lái)將用戶模塊與角色模塊相關(guān)聯(lián),表示通過(guò)屬性hasRole可以獲取賦予當(dāng)前用戶的角色信息。為了表示各角色之間的權(quán)限繼承關(guān)系,角色模塊定義了具有傳遞性(transitive)的對(duì)象屬性從屬于角色(subRoleOf),用來(lái)將角色模塊與其自身進(jìn)行關(guān)聯(lián)。比如,subRoleOf (rl, r2)表示角色rl繼承了角色r2的所有權(quán)限。另外,由屬性subRoleOf的傳遞性可知,若有 subRoleOf (rl, r2)并且 subRoleOf (r2, r3),則可直接得到 subRoleOf (rl, r3)的結(jié)論。此外,本實(shí)施例還定義兩個(gè)具有對(duì)稱性(symmetric)的對(duì)象屬性靜態(tài)職責(zé)分離屬性(SSd)和動(dòng)態(tài)職責(zé)分離屬性(dsd),分別用來(lái)表示角色之間的靜態(tài)職責(zé)分離(StaticSeparation of Duty, SSD)和動(dòng)態(tài)職責(zé)分離(Dynamic Separation of Duty, DSD)關(guān)系,這兩個(gè)對(duì)象屬性的定義域和值域均為角色模塊自身。比如,SSd(rl,r2)表示rl和r2不能同時(shí)分配給一個(gè)用戶,dsd (rI,r2)表示rl和r2不能同時(shí)被激活。由屬性ssd的對(duì)稱性可知,ssd(rl,r2)和ssd(r2,rl)的語(yǔ)義是相同的,屬性dsd與此類(lèi)似。會(huì)話模塊(Sessions)會(huì)話模塊定義了用戶模塊中的各用戶與角色模塊的各角色之間的映射關(guān)系,當(dāng)一個(gè)用戶激活它所有角色的一個(gè)子集時(shí),用戶模塊與角色模塊之間建立一個(gè)會(huì)話。在實(shí)際應(yīng)用中,每個(gè)會(huì)話通常只與一個(gè)用戶關(guān)聯(lián),而一個(gè)用戶可以和一個(gè)或多個(gè)會(huì)話關(guān)聯(lián),用以表示一個(gè)用戶具有多個(gè)不同的角色。會(huì)話模塊中,具有反函數(shù)性質(zhì)(inverse functional)的對(duì)象類(lèi)型屬性建立(establish)將用戶模塊與會(huì)話模塊關(guān)聯(lián)在一起,表明通過(guò)屬性establish可以獲取用戶建立的會(huì)話信息,establish的反函數(shù)性質(zhì)能很好地表示用戶和會(huì)話之間一對(duì)多的特性。 會(huì)話模塊通過(guò)對(duì)象類(lèi)型屬性激活角色(activatedRole)與角色模塊關(guān)聯(lián)在一起,表示通過(guò)屬性activatedRole可以獲取會(huì)話中激活的角色信息。當(dāng)用戶建立一個(gè)會(huì)話時(shí),會(huì)話斷言以及相關(guān)事實(shí)需要在訪問(wèn)控制執(zhí)行過(guò)程中動(dòng)態(tài)產(chǎn)生。RBAC 本體RBAC本體用來(lái)定義前述訪問(wèn)控制策略模型中的所有模塊及其屬性、關(guān)系和層級(jí)結(jié)構(gòu)。在本實(shí)施例中,米用Web本體語(yǔ)言(Web Ontology Language,OWL)對(duì)RBAC進(jìn)行定義,具體描述如下所示Class (rbac: Credential partial owl: Thing)Class(rbac:UserNameToken partial rbac: Credential)Class (rbac:BinarySecurityToken partial rbac: Credential)Class (rbac:Key partial rbac:Credential)Class (rbac:SAMLAssertion partial rbac: Credential)Class (rbac:X509Certif icate partial rbac:BinarySecurityToken)Class (rbac:Kerboros partial rbac:BinarySecurityToken)Class (rbac:SymmetricKey partial rbac:Key)Class (rbac:PublicKey partial rbac:Key)DatatypeProperty (rbac : issuedBy domain (rbac : Credential)range (xsd:string))DatatypeProperty (rbac: i s Internal domain (rbac !Credential)range(xsd:boolean))DatatypeProperty (rbac : isValid domain (rbac : Credential)range(xsd:boolean))//以上定義了圖2所示用戶模塊及其層級(jí)結(jié)構(gòu)、屬性Class (rbac:Role partial owl:Thing)ObjectProperty(rbac:hasRole domain(rbac:Credential)range (rbac:Role))ObjectProperty (rbac:subRoleOf domain (rbac: Role)range(rbac: Role)TransitiveProperty)ObjectProperty (rbac : ssd domain (rbac : Role) range (rbac : Role)SymmetricProperty)ObjectProperty (rbac : dsd domain (rbac : Role) range (rbac : Role)SymmetricProperty)//以上定義了角色模塊及其屬性、操作Class (rbac:Servcie partial owl: Thing)Class (rbac:Operation partial rbac:Thing)Class (rbac:ExternalService partial rbac: Service)Class (rbac:InternalService partial rbac: Service)DatatypeProperty(rbac:publishedBy range (xsd: string))DatatypeProperty (rbac:securityLevel range (xsd:integer)) ObjectProperty (rbac : hasOperation domain (rbac : Service)range (rbac: Operation))ObjectProperty (rbac : assignedService domain (rbac : Role)range(rbac: Service))ObjectProperty (rbac : assignedOperation domain (rbac : Role)range (rbac: Operation))ObjectProperty (rbac:permittedService domain (rbac: Credential)range(rbac: Service))Obj ectProperty(rbac:permittedOperation domain (rbac: Credential)range(rbac: Operation))ObjectProperty (rbac: activatedService domain (rbac: Credential)range(rbac: Service))ObjectProperty (rbac:activatedOperation domain(rbac: Credential)range(rbac: Operation))//以上定義了權(quán)限模塊及其結(jié)構(gòu)、屬性及操作Class (rbac: Session partial owl:Thing)ObjectProperty (rbac : activatedRole domain (rbac : Session)range(rbac: Role)ObjectProperty (rbac : establish domain (rbac : Credential)range(rbac: Session)InverseFunctional)Η以上定義了會(huì)話模塊及其屬性規(guī)則模塊(Rules)為了使本發(fā)明實(shí)施例訪問(wèn)控制策略模型中的操作,比如動(dòng)態(tài)角色分配、職責(zé)分離約束、角色激活與撤銷(xiāo)等能夠通過(guò)本體層的簡(jiǎn)單推理而得以執(zhí)行,本實(shí)施例定義了規(guī)則模塊并將其加入到RBAC本體中,該規(guī)則模塊包括一系列語(yǔ)義規(guī)則,并基于這些語(yǔ)義規(guī)則的推理來(lái)實(shí)現(xiàn)本實(shí)施例網(wǎng)絡(luò)訪問(wèn)控制策略模型所要求的各種操作。本實(shí)施例采用語(yǔ)義Web邏輯層的推薦標(biāo)準(zhǔn)SWRL來(lái)定義所需規(guī)則。定義的規(guī)則劃可分成五個(gè)類(lèi)型,分別用來(lái)實(shí)現(xiàn)模型中的各種關(guān)鍵操作,其規(guī)則實(shí)例列舉說(shuō)明所下·用戶-角色分配規(guī)則主要根據(jù)用戶模塊中相關(guān)概念及屬性來(lái)執(zhí)行動(dòng)態(tài)的用戶-角色分配。如、一個(gè)用戶能提供由某外部權(quán)威證書(shū)授權(quán)中心(CertificationAuthority, CA)發(fā)布的、有效的X. 509證書(shū),則它可以分配給角色Rl
Rl. IhasRole ( u, Rl) —X509Certificate ( u) Λ islnternal ( u, false) Λ issuedBy ( u, 〃ca〃)Λ isValid( u, true)?!?quán)限-角色分配規(guī)則基于服務(wù)模塊和操作模塊的相關(guān)概念和屬性斷言來(lái)執(zhí)行權(quán)限-角色分配。如、對(duì)于安全級(jí)別大于"3"的任意一個(gè)服務(wù),其訪問(wèn)權(quán)限只能分配給角色R2 R2. 2assignedService (R2, so) — Service ( so) Λ securityLevel ( so, i) Λ swrlb: g reaterThan( i, 3)。·職責(zé)分離約束規(guī)則I)靜態(tài)職責(zé)分離約束規(guī)則,表示如果在任意兩個(gè)角色之間存在基于ssd的關(guān)系斷言,那么這兩個(gè)角色不能同時(shí)分配給一個(gè)用戶R3. I hasRole ( u, r2) — hasRole ( u, rl) Λ ssd ( rl, r2)。2)動(dòng)態(tài)職責(zé)分離約束規(guī)則,表示如果在任意兩個(gè)角色之間存在基于dsd的關(guān)系斷言,那么這兩個(gè)角色不能同時(shí)在一個(gè)用戶的會(huì)話中被激活R3. 2 activatedRole ( s, r2) activatedRole ( s, rl) Λ dsd ( rl, r2) 角色層次推理規(guī)則表示基于角色層次的相關(guān)推理。比如,對(duì)于任意用戶U以及任意角色rl和r2,如果用戶u分配了角色rl并且在角色rl與r2之間存在subRoleOf關(guān)系斷言,那么可推斷r2也是用戶u的一個(gè)角色,這是通過(guò)角色繼承獲得的一個(gè)隱含角色R4. I hasRole( u, r2) — hasRole( u, rl) Λ subRoleOf( rl, r2) 輔助規(guī)則,這些規(guī)則的建立是為了便于系統(tǒng)的查詢和管理。如,直接獲取一個(gè)用戶有權(quán)訪問(wèn)的所有服務(wù)R5. IpermittedService( u, so) — hasRole( u, r) Λ assignedService ( r, so) 上述語(yǔ)義規(guī)則具有較好的分類(lèi)性和組件化特征,可以通過(guò)添加或禁用一類(lèi)規(guī)則來(lái)實(shí)現(xiàn)或取消相應(yīng)的功能。以上結(jié)合實(shí)施例對(duì)本發(fā)明做了介紹,在具體實(shí)施中,網(wǎng)絡(luò)的服務(wù)端應(yīng)用該網(wǎng)絡(luò)訪問(wèn)控制策略模型,對(duì)服務(wù)訪問(wèn)進(jìn)行有效控制。以下結(jié)合操作示例對(duì)利用該實(shí)施例的網(wǎng)絡(luò)訪問(wèn)控制方法作一簡(jiǎn)單描述。當(dāng)一陌生的終端用戶想要對(duì)服務(wù)端的服務(wù)申請(qǐng)某一操作時(shí),它首先向服務(wù)端發(fā)送一建立會(huì)話的請(qǐng)求。服務(wù)端提取該用戶的信任證信息,并利用規(guī)則模塊對(duì)其所適合的角色信息進(jìn)行推理。如果該用戶提供的是由某外部權(quán)威證書(shū)授權(quán)中心(CertificationAuthority, CA)發(fā)布的、有效的X. 509證書(shū),則根據(jù)推理規(guī)則Rl. I而給該用戶分配角色Rl,并建立會(huì)話,依該角色Rl的權(quán)限對(duì)服務(wù)進(jìn)行訪問(wèn)。如果沒(méi)有匹配的角色,則服務(wù)端拒絕該請(qǐng)求。對(duì)服務(wù)端的其他訪問(wèn)操作依據(jù)具體的規(guī)則、用戶能提供的具體信任證信息等推理內(nèi)容而實(shí)現(xiàn)基于對(duì)應(yīng)角色的訪問(wèn)授權(quán)。以上的描述是基于本發(fā)明的一個(gè)較佳實(shí)施例。所謂較佳,主要是從該實(shí)施例所具有的特征、實(shí)現(xiàn)的功能及達(dá)成的效果而言的。在本發(fā)明的公開(kāi)范圍內(nèi),本領(lǐng)域的普通技術(shù)人員還可以根據(jù)具體的需求,對(duì)該較佳實(shí)施例做適應(yīng)性的變動(dòng),例如當(dāng)僅需要實(shí)現(xiàn)根據(jù)用戶信息、分配恰當(dāng)?shù)慕巧珪r(shí),前述RBAC本體中完全可以僅定義信任證/用戶模塊的信息,而不必定義其他模塊的信息;對(duì)應(yīng)的,規(guī)則模塊中也可以僅定義“用戶-角色分配規(guī)則”。原因是,在一些實(shí)施例中,完全可以僅通過(guò)用戶提供的信任證信息推理就可以給該用戶分配適當(dāng)?shù)慕巧?。在其他?shí)施例中,也可以利用用戶的其他屬性進(jìn)行動(dòng)態(tài)的角色分配。此時(shí),僅需要根據(jù)具體需要、設(shè)定合適的推理規(guī)則即可。在特定的實(shí)施例中,當(dāng)需要進(jìn)行“權(quán)限-角色分配”、“職責(zé)分離約束”、“角色層次推理”等控制時(shí),本領(lǐng)域的普通技術(shù)人員可以依實(shí)際需求而選擇前述RBAC本體的元素和規(guī)定恰當(dāng)?shù)耐评硪?guī)則。在所有的實(shí)施例中,推理規(guī)則可以依據(jù)實(shí)際的需求而定義,可以以邏輯推理規(guī)則、映射規(guī)則等任意的合理形式或其組合實(shí)現(xiàn)。此外,本實(shí)施例中所提取的用戶屬性是其信任證信息,但本發(fā)明并非限定在此屬性信息上。在不同的適用場(chǎng)合中,可以自行定義提取用戶所具有的各種信息。例如,僅需對(duì)通過(guò)不同網(wǎng)絡(luò)訪問(wèn)的用戶進(jìn)行訪問(wèn)限制時(shí),也可以根據(jù)其各自的地址信息而分配不同的角色。雖然本發(fā)明已以較佳實(shí)施例揭露如上,然其并非用以限定本發(fā)明。本發(fā)明所屬技術(shù)領(lǐng)域中具有通常知識(shí)者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作各種的更動(dòng)與潤(rùn)飾。因此,本發(fā)明的保護(hù)范圍當(dāng)視權(quán)利要求書(shū)所界定者為準(zhǔn)。
權(quán)利要求
1.一種網(wǎng)絡(luò)訪問(wèn)控制模型,用于對(duì)訪問(wèn)一網(wǎng)絡(luò)資源的用戶分配訪問(wèn)權(quán)限,其特征在于,包括 用戶模塊,用于提取所述用戶的至少一屬性; 權(quán)限模塊,定義了對(duì)所述網(wǎng)絡(luò)資源的若干訪問(wèn)權(quán)限; 角色模塊,定義了若干角色,每個(gè)角色預(yù)設(shè)有若干所述的訪問(wèn)權(quán)限; 本體模塊,至少定義了用戶的所述屬性; 規(guī)則模塊,至少定義了一規(guī)則,該規(guī)則基于所述屬性而分配給所述用戶一匹配的角色,從而使該用戶訪問(wèn)所述網(wǎng)絡(luò)資源; 會(huì)話模塊,建立、維持和撤消所述匹配的角色與所屬用戶的關(guān)聯(lián)。
2.根據(jù)權(quán)利要求I所述的網(wǎng)絡(luò)訪問(wèn)控制模型,其特征是所述用戶模塊提取所述用戶的 目任證 目息。
3.根據(jù)權(quán)利要求2所述的網(wǎng)絡(luò)訪問(wèn)控制模型,其特征是所述本體模塊中以層次結(jié)構(gòu)定義所述信任證信息。
4.根據(jù)權(quán)利要求I所述的網(wǎng)絡(luò)訪問(wèn)控制模型,其特征是所述規(guī)則模塊基于對(duì)所述屬性的語(yǔ)義推理而分配角色。
5.根據(jù)權(quán)利要求I所述的網(wǎng)絡(luò)訪問(wèn)控制模型,其特征是所述本體模塊以層次結(jié)構(gòu)定義了所述角色模塊,所述規(guī)則模塊基于所述角色的層次關(guān)系進(jìn)行角色推理。
6.根據(jù)權(quán)利要求5所述的網(wǎng)絡(luò)訪問(wèn)控制模型,其特征是所述規(guī)則模塊對(duì)所述角色之間進(jìn)行職責(zé)分離約束。
7.根據(jù)權(quán)利要求I所述的網(wǎng)絡(luò)訪問(wèn)控制模型,其特征是所述規(guī)則模塊對(duì)所述權(quán)限模塊進(jìn)行權(quán)限-角色分配。
8.—種對(duì)網(wǎng)絡(luò)資源的訪問(wèn)控制方法,該方法包括以下步驟 提取一用戶的預(yù)定屬性; 根據(jù)所預(yù)定屬性匹配一角色; 依據(jù)所述角色所具有的權(quán)限,對(duì)所述網(wǎng)絡(luò)資源進(jìn)行訪問(wèn)。
9.根據(jù)權(quán)利要求8所述的方法,其特征是所述預(yù)定屬性是該用戶的信任證。
10.一種實(shí)現(xiàn)所述權(quán)利要求8的網(wǎng)絡(luò)終端。
全文摘要
本發(fā)明提供一種網(wǎng)絡(luò)訪問(wèn)控制模型及其方法和終端,用于對(duì)訪問(wèn)一網(wǎng)絡(luò)資源的用戶分配恰當(dāng)?shù)脑L問(wèn)權(quán)限。該網(wǎng)絡(luò)訪問(wèn)控制模型包括用戶模塊,用于提取所述用戶的至少一屬性;權(quán)限模塊,定義對(duì)受保護(hù)對(duì)象執(zhí)行某個(gè)動(dòng)作的一種許可,定義了對(duì)所述網(wǎng)絡(luò)資源的若干訪問(wèn)權(quán)限;角色模塊,定義了若干角色,每個(gè)角色預(yù)設(shè)有若干所述的訪問(wèn)權(quán)限;本體模塊,至少定義了用戶的所述屬性;規(guī)則模塊,至少定義了一規(guī)則,該規(guī)則基于所述屬性而分配給所述用戶一匹配的角色,從而使該用戶訪問(wèn)所述網(wǎng)絡(luò)資源;會(huì)話模塊,用于建立、維持和撤消所述用戶與相匹配的角色的關(guān)聯(lián)。本發(fā)明可以動(dòng)態(tài)地給一陌生的訪問(wèn)用戶分配合適的訪問(wèn)權(quán)限,從而增強(qiáng)網(wǎng)絡(luò)訪問(wèn)的安全。
文檔編號(hào)H04L9/32GK102857488SQ20121014289
公開(kāi)日2013年1月2日 申請(qǐng)日期2012年5月10日 優(yōu)先權(quán)日2012年5月10日
發(fā)明者吳禮發(fā), 李華波, 曾曉光, 鄭成輝, 賴海光, 賀正求 申請(qǐng)人:中國(guó)人民解放軍理工大學(xué)