本申請涉及計算機(jī)技術(shù)領(lǐng)域,尤其涉及一種基于角色訪問控制的權(quán)限管理方法及裝置。
背景技術(shù):
目前,常見的權(quán)限管理功能,可以基于角色訪問控制(Role-Based Access Control,RBAC)技術(shù)實現(xiàn)。RBAC技術(shù)包含用戶(USERS)、角色(ROLES)、目標(biāo)objects(OBS)、操作operations(OPS)、許可權(quán)permissions(PRMS)五個基本數(shù)據(jù)元素,權(quán)限賦予角色,角色指定給一個用戶,此用戶就擁有了該角色所具有的元操作的權(quán)限。其中,元操作,是最小的權(quán)限管理單元。
為了在用戶請求執(zhí)行某項元操作(如請求訪問某統(tǒng)一資源定位符URL對應(yīng)的網(wǎng)絡(luò)資源)時,查詢用戶是否具備執(zhí)行該項元操作的權(quán)限,按照現(xiàn)有的RBAC技術(shù),會為用戶分配角色標(biāo)識,以使得后續(xù)可以根據(jù)用戶具備的角色標(biāo)識確定用戶的角色,進(jìn)而確定用戶的角色具有的元操作的權(quán)限。
按照上述現(xiàn)有技術(shù),只能建立起用戶與角色標(biāo)識的對應(yīng)關(guān)系,因此在確定用戶具有的元操作的權(quán)限時,只能依據(jù)該對應(yīng)關(guān)系確定出用戶的角色,進(jìn)而確定用戶的角色具備的元操作的權(quán)限,從而靈活性較低。比如,針對具備三個角色(角色標(biāo)識分別為A、B和C)的用戶而言,在確定該用戶具備的元操作的權(quán)限時,只能根據(jù)用戶與角色標(biāo)識A、B和C的對應(yīng)關(guān)系,先確定出用戶的角色,而后確定用戶的角色具備的元操作的權(quán)限,靈活性較低。
技術(shù)實現(xiàn)要素:
本申請實施例提供一種基于角色訪問控制的權(quán)限管理方法,用以解決現(xiàn)有技術(shù)中的基于角色訪問控制的權(quán)限管理方法僅能夠建立用戶與角色標(biāo)識的對應(yīng)關(guān)系,從而靈活性較低的問題。
本申請實施例還提供一種基于角色訪問控制的權(quán)限管理裝置,用以解決現(xiàn)有技術(shù)中的基于角色訪問控制的權(quán)限管理方法僅能夠建立用戶與角色標(biāo)識的對應(yīng)關(guān)系,從而靈活性較低的問題。
本申請實施例采用下述技術(shù)方案:
一種基于角色訪問控制的權(quán)限查詢方法,該方法包括:
在用戶執(zhí)行目標(biāo)元操作前,根據(jù)預(yù)先建立的用戶與元操作的權(quán)限關(guān)系,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi);其中,所述元操作是最小的權(quán)限管理單元;所述用戶與元操作的權(quán)限關(guān)系通過如下方式建立:用戶與角色組之間的第一對應(yīng)關(guān)系,用戶具有所屬角色組中各角色的權(quán)限,每一個角色具有至少一種元操作的權(quán)限;
如果是,則允許所述用戶執(zhí)行所述目標(biāo)元操作,否則,拒絕所述用戶執(zhí)行所述目標(biāo)元操作。
一種基于角色訪問控制的權(quán)限查詢裝置,該裝置包括:
判斷模塊,用于在用戶執(zhí)行目標(biāo)元操作前,根據(jù)預(yù)先建立的用戶與元操作的權(quán)限關(guān)系,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi);其中,所述元操作是最小的權(quán)限管理單元;所述用戶與元操作的權(quán)限關(guān)系通過如下方式建立:用戶與角色組之間的第一對應(yīng)關(guān)系,用戶具有所屬角色組中各角色的權(quán)限,每一個角色具有至少一種元操作的權(quán)限;
執(zhí)行模塊,用于如果是,則允許所述用戶執(zhí)行所述目標(biāo)元操作,否則,拒絕所述用戶執(zhí)行所述目標(biāo)元操作。
本申請實施例采用的上述至少一個技術(shù)方案能夠達(dá)到以下有益效果:
通過該方案,作為用戶是否能夠執(zhí)行目標(biāo)元操作的判斷依據(jù)的所述權(quán)限關(guān)系,它的建立方式可以包括:用戶與角色組之間的第一對應(yīng)關(guān)系,用戶具有所屬角色組中角色的權(quán)限,每一個角色具有至少一種元操作的權(quán)限。也就是說,本方案中可以建立用戶與角色組之間的對應(yīng)關(guān)系,基于該對應(yīng)關(guān)系,可以確定出用戶具備所屬角色組中角色具有的元操作的權(quán)限,從而在可以建立用戶與角色(角色標(biāo)識)之間的對應(yīng)關(guān)系作為所述判斷依據(jù)之外,還可以建立用戶與角色之間的對應(yīng)關(guān)系作為所述判斷依據(jù),因此解決了現(xiàn)有技術(shù)中的基于角色訪問控制的權(quán)限管理方法僅能夠建立用戶與角色標(biāo)識的對應(yīng)關(guān)系,靈活性較低的問題。
附圖說明
此處所說明的附圖用來提供對本申請的進(jìn)一步理解,構(gòu)成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構(gòu)成對本申請的不當(dāng)限定。在附圖中:
圖1a為本申請實施例提供的一種基于角色訪問控制的權(quán)限管理方法的流程圖;
圖1b為本申請實施例1中的第一對應(yīng)關(guān)系~第四對應(yīng)關(guān)系的示意圖;
圖2為本申請實施例提供的一種基于角色訪問控制的權(quán)限管理方法中步驟103的具體流程圖一;
圖3a為本申請實施例中不同角色組的層級關(guān)系示意圖;
圖3b為本申請實施例中項目執(zhí)行人員的層級關(guān)系示意圖;
圖4為本申請實施例提供的一種基于角色訪問控制的權(quán)限管理方法中存在負(fù)向角色的角色組的組成圖;
圖5為本申請實施例提供的一種基于角色訪問控制的權(quán)限管理方法中步驟103的具體流程圖二;
圖6為本申請實施例提供的一種基于角色訪問控制的權(quán)限管理方法在實際中的一種實施場景示意圖;
圖7為本申請實施例提供的一種基于角色訪問控制的權(quán)限管理裝置的結(jié)構(gòu)示意圖。
具體實施方式
為使本申請的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本申請具體實施例及相應(yīng)的附圖對本申請技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實施例僅是本申請一部分實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├绢I(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本申請保護(hù)的范圍。
以下結(jié)合附圖,詳細(xì)說明本申請各實施例提供的技術(shù)方案。
實施例1
本申請實施例1提供一種基于角色訪問控制的權(quán)限管理方法,該方法的執(zhí)行主體,可以但不限于為服務(wù)器,或者,該方法的執(zhí)行主體,可以但不限于手機(jī)、平板電腦、個人電腦(Personal Computer,PC)等能夠被配置為執(zhí)行本申請實施例提供的該方法的用戶終端中的至少一種。
為了便于清楚的描述本申請實施例1提供的該方法,下文以方法的執(zhí)行主體為服務(wù)器為例,詳細(xì)介紹本申請實施例提供的方法。本領(lǐng)域技術(shù)人員可以理解,該方法的執(zhí)行主體為服務(wù)器只是一種示例性說明,并不是對本方法的執(zhí)行主體的具體限定。
具體的,實施例1提供的一種基于角色訪問控制的權(quán)限管理方法的實現(xiàn)流程示意圖如圖1a所示。所述方法包括如下主要步驟:
步驟101:服務(wù)器在用戶執(zhí)行目標(biāo)元操作前,根據(jù)預(yù)先建立的用戶與元操作的權(quán)限關(guān)系,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi);若判斷結(jié)果為是,則執(zhí)行步驟102;若判斷結(jié)果為否,則執(zhí)行步驟103;
這里所說的用戶,是指具備角色從而享有角色所具有的至少一種元操作的權(quán)限的對象。所述對象,可以是用戶終端也可以是客戶端。
這里所說的目標(biāo)元操作,是指用戶期望進(jìn)行的元操作。用戶可以通過向服務(wù)器發(fā)送請求(請求中可以包含目標(biāo)元操作的唯一標(biāo)識)的方式,請求服務(wù)器執(zhí)行目標(biāo)元操作,也即請求服務(wù)器運(yùn)行用戶執(zhí)行目標(biāo)元操作。服務(wù)器在接收到該請求后,響應(yīng)于該請求,可以執(zhí)行步驟101。
所述預(yù)先建立的用戶與元操作的權(quán)限關(guān)系,包括通過角色組關(guān)聯(lián)起來的用戶與元操作的權(quán)限關(guān)系。在本實施例中,角色組,是角色構(gòu)成的集合。本申請實施例中,角色組中一般包含至少兩個角色。比如,角色A和角色B構(gòu)成的集合,就是一個角色組。通過角色組關(guān)聯(lián)起來的用戶與元操作的權(quán)限關(guān)系,是指:用戶與角色組之間的對應(yīng)關(guān)系(后稱第一對應(yīng)關(guān)系),用戶具有用戶所屬角色組中各角色的權(quán)限。其中,角色組中的每一個角色具有至少一種元操作的權(quán)限。
本申請實施例中,用戶與角色組之間的第一對應(yīng)關(guān)系,可以是指用戶與角色組標(biāo)識之間的對應(yīng)關(guān)系。其中,角色組標(biāo)識,是指角色組具備的唯一標(biāo)識符。
在本實施例中,針對每個用戶,為了建立起用戶與角色組標(biāo)識之間的第一對應(yīng)關(guān)系,可以預(yù)先根據(jù)用戶的角色所屬角色組為用戶分配角色組標(biāo)識。用戶被分配角色組標(biāo)識后,后續(xù)若期望查詢自身具備的權(quán)限,則可以采用向服務(wù)器發(fā)送所述請求(該請求除包含所述目標(biāo)元操作的唯一標(biāo)識外,還可以包含用戶的角色組標(biāo)識)的方式,觸發(fā)服務(wù)器執(zhí)行如圖1a所示的流程。
針對為用戶分配角色組標(biāo)識的具體實現(xiàn)方式而言,本實施例中,可以采用以下兩種方式之一:
第一種,人工分配方式。
以某軟件開發(fā)項目為例進(jìn)行說明,假設(shè)對該項目所開發(fā)的代碼進(jìn)行的不同操作(增、刪、改和查看)對應(yīng)不同角色,每個角色具有相應(yīng)的元操作的權(quán)限。比如,完成該項目所需要的角色包括代碼增加角色(角色標(biāo)識為Ⅰ,后將該角色簡寫為角色Ⅰ)、代碼刪除角色(角色標(biāo)識為Ⅱ,后將該角色簡寫為角色Ⅱ)、代碼修改角色(角色標(biāo)識為Ⅲ,后將該角色簡寫為角色Ⅲ)和代碼查看角色(角色標(biāo)識為Ⅳ,后將該角色簡寫為角色Ⅳ)。其中,代碼增加角色、代碼增加角色和代碼修改角色,分別具備對服務(wù)器保存的該項目的代碼進(jìn)行增、刪、改(對代碼進(jìn)行增、刪、改均為元操作)的權(quán)限;代碼查看角色具備查看所述代碼(查看所述代碼也是一種元操作)的權(quán)限,但不能對所述代碼進(jìn)行增、刪、改。
上述角色的標(biāo)識以及關(guān)于角色具備的元操作的權(quán)限的文字描述,可以保存在服務(wù)器中;此外,參與該項目且待分配角色的項目執(zhí)行人員的信息(如項目執(zhí)行人員的名稱和項目執(zhí)行人員使用的個人電腦的IP地址)也可以保存在服務(wù)器中。保存在服務(wù)器中的該些信息,均可以由服務(wù)器展示在同一頁面中,以便于該項目的管理人員進(jìn)行查看;為了便于該項目的管理人員進(jìn)行操作,該頁面中還可以包含一些控件。
基于上述假設(shè),該項目的管理人員可以通過對所述頁面進(jìn)行操作,將上述多個角色進(jìn)行歸類分組形成多個角色組——比如,管理人員可以選中所述頁面中展示的角色標(biāo)識,并點擊頁面中顯示有文字“合并”的按鈕一,使得服務(wù)器將被選中的角色標(biāo)識對應(yīng)的角色合并為一個角色組,而后,服務(wù)器為該角色組分配角色組標(biāo)識。其中,服務(wù)器合并角色以及為角色組分配角色組標(biāo)識,實質(zhì)上就是建立角色組標(biāo)識與角色標(biāo)識的對應(yīng)關(guān)系。
假設(shè)管理人員通過該操作,觸發(fā)服務(wù)器合并得到兩個角色組,這兩個角色組各自的角色組標(biāo)識分別為x和y。其中,角色組x中的角色包括角色Ⅰ和角色Ⅱ,即角色組標(biāo)識映射角色標(biāo)識Ⅰ和Ⅱ;角色組y中的角色包括角色Ⅲ和角色Ⅳ,即角色組標(biāo)識映射角色標(biāo)識Ⅲ和Ⅳ。
服務(wù)器在完成角色組標(biāo)識x和y的分配后,可以顯示分配的角色組標(biāo)識x和y,若管理人員進(jìn)一步選中x和y這兩個標(biāo)識,并點擊頁面中顯示有文字“合并”的按鈕二,則可以觸發(fā)服務(wù)器合并x和y對應(yīng)的這兩個角色組,并為合并得到的角色組分配角色組標(biāo)識z。
而后,管理人員根據(jù)項目需求,通過操作服務(wù)器,將角色組的標(biāo)識分別分配給項目執(zhí)行人員。比如,將x分配給項目執(zhí)行人員1(姓名張三,對應(yīng)的IP地址為192.168.1.07),將y分配給項目執(zhí)行人員2(姓名李四,對應(yīng)的IP地址為192.168.1.08)。其中,這里所說的分配,其實質(zhì)可以等同于建立起對應(yīng)關(guān)系,即建立起x和張三以及192.168.1.07的對應(yīng)關(guān)系,以及建立起y和李四以及192.168.1.08的對應(yīng)關(guān)系;而分配的具體實現(xiàn)方式,比如可以包括:管理人員通過操作服務(wù)器先后選中x這一標(biāo)識和項目執(zhí)行人員張三的姓名及IP地址,然后點擊“確定”按鈕,則服務(wù)器建立起被選中的x、張三的姓名及IP地址的對應(yīng)關(guān)系。至此,人工分配方式完畢。
為便于項目執(zhí)行人員后續(xù)查詢自身的具備的權(quán)限,服務(wù)器可以根據(jù)項目執(zhí)行人員的IP地址,將項目執(zhí)行人員被分配的項目組標(biāo)識發(fā)送給項目執(zhí)行人員。這樣,當(dāng)項目執(zhí)行人員在查詢自身具備的元操作的權(quán)限時,就可以根據(jù)獲知的角色組標(biāo)識查詢服務(wù)器,以使得服務(wù)器根據(jù)角色組標(biāo)識,確定與用戶相對應(yīng)的角色組,進(jìn)而根據(jù)與用戶相對應(yīng)的角色組中角色具有的元操作的權(quán)限,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi)。具體而言,當(dāng)與用戶相對應(yīng)的角色組中角色具有的元操作的權(quán)限中,存在與所述目標(biāo)元操作相匹配的元操作的權(quán)限時,判定所述目標(biāo)元操作在用戶的權(quán)限范圍內(nèi);否則,判定所述目標(biāo)元操作不在用戶的權(quán)限范圍內(nèi)。
需要特別說明的是,在軟件開發(fā)項目中,項目執(zhí)行人員之間可能會有不同層級關(guān)系,具備層級關(guān)系的項目執(zhí)行人員,他們各自的角色組標(biāo)識對應(yīng)的角色組之間往往也存在一定的層級關(guān)系。管理人員在為項目執(zhí)行人員分配角色組標(biāo)識時,可以基于管理人員所獲知的項目執(zhí)行人員之間的層級關(guān)系,為項目執(zhí)行人員分配具備層級關(guān)系的角色組的角色組標(biāo)識。
請參照圖3a,為申請實施例中不同角色組的層級關(guān)系示意圖。圖3a中共存在三個層級的角色組,從上至下依次包含第一層角色組、第二層角色組和第三層角色組,其中,層級相對而言最靠近角色的角色組,可稱為底層角色組。結(jié)合項目執(zhí)行人員的層級關(guān)系,以下對圖3a中所示的層級關(guān)系進(jìn)行介紹。
項目執(zhí)行人員的層級關(guān)系,如圖3b所示。圖3b中:
項目總經(jīng)理處于最高的層級,對應(yīng)于第一層角色組;
項目1經(jīng)理和項目2經(jīng)理所處層級低于項目總經(jīng)理所在層級,對應(yīng)于第二層角色組,其中,項目2經(jīng)理也對應(yīng)于底層角色組;
項目1組長1和項目1組長2所處層級低于項目1經(jīng)理和項目2經(jīng)理所處層級,對應(yīng)于第三層角色組,也對應(yīng)于底層角色組。
本申請實施例中,管理人員可以預(yù)先獲知如圖3b所示的層級關(guān)系,從而基于該層級關(guān)系,通過操作服務(wù)器實現(xiàn)為項目執(zhí)行人員分配角色組標(biāo)識,并建立起如圖3a所示的層級關(guān)系。
繼續(xù)沿用上例,假設(shè)服務(wù)器當(dāng)前已經(jīng)完成了為不同的角色組分配角色組標(biāo)識x、y和z,以下對管理人員如何通過操作服務(wù)器實現(xiàn)建立起如圖3a所示的層級關(guān)系進(jìn)行介紹:
由于管理人員獲知如圖3b所示的層級關(guān)系,并且,也獲知第一層角色組1的角色組標(biāo)識(比如為z),那么,管理人員可以通過操作服務(wù)器,將z分配給項目總經(jīng)理。按照類似的操作方式,管理人員可以實現(xiàn)為如圖3b所示的各項目執(zhí)行人員分配相應(yīng)的角色組標(biāo)識。在這樣的情況下,服務(wù)器除了可以保存各項目執(zhí)行人員的信息(如姓名、IP地址等)、角色組標(biāo)識、角色組中包含的角色的角色標(biāo)識的對應(yīng)關(guān)系外,還可以保存如圖3a所示的層級關(guān)系,以方便后續(xù)查詢角色組之間的層級關(guān)系。
以下,對保存的如圖3a所示的層級關(guān)系如何發(fā)揮它的作用,進(jìn)行詳細(xì)介紹。
由前文的介紹可知,在本實施例中,每個角色組都有與其對應(yīng)的角色組標(biāo)識,角色組標(biāo)識用于標(biāo)識角色組,因此,服務(wù)器根據(jù)用戶發(fā)送來的請求中包含的角色組標(biāo)識,可以確定出具備角色組標(biāo)識的角色組。比如,服務(wù)器中保存有分別具備角色組標(biāo)識x、y和z的角色組,而用戶發(fā)送來的角色組標(biāo)識為z,那么,服務(wù)器就可以根據(jù)角色組標(biāo)識z,從服務(wù)器保存的幾個角色組中,確定出角色組標(biāo)識為z的角色組。在本實施例中,為便于區(qū)分描述,將確定出的具備該角色組標(biāo)識的角色組稱為第一角色組。
本實施例中,針對“第一角色組包含的角色”具體而言,如圖3a所示,假設(shè)第一角色組為第一層角色組1,那么,層級位于第一層角色組1以下,且包含于第一層角色組1的各角色組包含的角色(角色A、角色B、角色C、角色D和角色E),都是第一角色組包含的角色;假設(shè)第一角色組為第二層角色組2,那么,第二層角色組2所包含的角色(角色C和角色D),都是第一角色組包含的角色。第一角色組包含的角色,一般地,可以指第一角色組包含的角色標(biāo)識。需要說明的是,圖3a中的第二層角色組1、第二層角色組2、第三層角色組1和第三層角色組2,均為包含于第一層角色組1的角色組。其中,第二層角色組1和第二層角色組2,可以理解為直接包含于第一層角色組1的角色組;而第三層角色組1和第三層角色組2,可以理解為間接包含于第一層角色組1的角色組。
在本實施例中,服務(wù)器可以將第一角色組包含的各角色分別對應(yīng)的全部元操作的權(quán)限,確定為用戶具備的權(quán)限范圍包含的權(quán)限,或者,服務(wù)器也可以隨機(jī)將第一角色組包含的各角色分別對應(yīng)的權(quán)限中的部分元操作的權(quán)限,確定為用戶具備的元操作的權(quán)限。比如,第一角色組包含角色A和角色B,角色A擁有元操作的權(quán)限a1~a10,角色B擁有元操作的權(quán)限b1~b10。服務(wù)器可以將元操作的權(quán)限a1~a10和b1~b10確定為用戶的元操作的權(quán)限;或者,服務(wù)器將元操作的權(quán)限a1~a10確定為用戶的元操作的權(quán)限;或者,服務(wù)器可以將元操作的權(quán)限b1~b10確定為用戶的元操作的權(quán)限;再或者,服務(wù)器可以將元操作的權(quán)限a1~a5和b6~b10確定為用戶的元操作的權(quán)限;等等。
進(jìn)一步的,若角色組集合包含的各角色組之間具有層級關(guān)系(如圖3a所示),則步驟101具體包括如圖2所示的如下步驟:
步驟201、服務(wù)器根據(jù)所述第一對應(yīng)關(guān)系,確定用戶對應(yīng)的第一角色組;
該步驟201的具體實現(xiàn)方式已經(jīng)在前文進(jìn)行介紹,此處不再贅述。
步驟202、服務(wù)器根據(jù)角色組集合包含的各角色組之間的層級關(guān)系,以及第一角色組,從角色組集合中確定滿足預(yù)定條件的各底層角色組。
這里所說的角色組集合,是由角色組構(gòu)成的集合。如圖3a所示,第一層角色組1、第二層角色組1、第二層角色組2、第三層角色組1和第三層角色組2,就構(gòu)成一個角色組集合。如前文所述,服務(wù)器可以預(yù)先保存該角色組集合中不同角色組之間的層級關(guān)系以備后續(xù)查詢。
這里所說的底層角色組,如前文舉例所述,是僅包含角色而不再包含其他角色組的角色組,比如,圖3a中第三層角色組1、第三層角色組2和第二層角色組2均為底層角色組。
在本實施例中,預(yù)定條件包括:層級低于第一角色組,且包含于第一角色組。其中,層級低于第一角色組且包含于第一角色組的理解,在此舉例進(jìn)行說明:如圖3a中,第二層角色組1和第二層角色組2均層級低于第一層角色組1,第三層角色組1和第三層角色組2均層級低于第二層角色組1。
在本實施例中,以第一角色組為第二層角色組1為例,第三層角色組1和第三層角色組2均層級低于第二層角色組1,第三層角色組1包含于第二層角色組1。因此,第三層角色組1為滿足預(yù)定條件的底層角色組。
步驟203、根據(jù)所述各底層角色組分別包含的角色所具有的各元操作的權(quán)限,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi)。
在本實施例中,以第一角色組為第二層角色組1為例,通過執(zhí)行步驟202,可以確定出第三層角色組1和第三層角色組2為滿足預(yù)定條件的底層角色組。
在本實施例中,服務(wù)器可以將第三層角色組1和第三層角色組2包含的各角色分別具備的全部元操作的權(quán)限,確定為用戶具備的元操作的權(quán)限,或者,服務(wù)器也可以隨機(jī)將第三層角色組1和第三層角色組2包含的各角色分別對應(yīng)的權(quán)限中的部分權(quán)限,確定為用戶具備的元操作的權(quán)限。比如,第三層角色組1包含角色A和角色B,角色A擁有權(quán)限a1~a10,角色B擁有權(quán)限b1~b10。服務(wù)器可以將權(quán)限a1~a10和b1~b10確定為用戶具備的元操作的權(quán)限;或者,服務(wù)器將權(quán)限a1~a10確定為用戶具備的元操作的權(quán)限;或者,服務(wù)器可以將權(quán)限b1~b10確定為用戶具備的元操作的權(quán)限;再或者,服務(wù)器可以將權(quán)限a1~a5和b6~b10確定為用戶具備的元操作的權(quán)限;等等。用戶所具備的所有元操作的權(quán)限,構(gòu)成用戶的權(quán)限范圍。
基于用戶具備的元操作的權(quán)限,可以進(jìn)一步判斷所述目標(biāo)元操作是否與用戶具備的元操作的權(quán)限范圍相匹配。
舉例而言,當(dāng)所述元操作包括操作指定的統(tǒng)一資源標(biāo)識符(URL)對應(yīng)的網(wǎng)絡(luò)資源,所述用戶的權(quán)限范圍包括用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL時,在一種實施方式中,上述步驟203的具體實現(xiàn)方式可以包括:
將確定出的所述用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL與所述目標(biāo)元操作對應(yīng)的URL進(jìn)行比對;
當(dāng)所述用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL中,存在與所述目標(biāo)元操作對應(yīng)的URL相匹配的URL時,判定所述目標(biāo)元操作在所述用戶的權(quán)限范圍內(nèi);否則,判定所述目標(biāo)元操作未在所述用戶的權(quán)限范圍內(nèi)。
舉例而言,可以采用以下兩種方式判斷用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL中,是否存在與所述目標(biāo)元操作對應(yīng)的URL相匹配的URL:
第一種,全匹配方式:服務(wù)器將確定的用戶的權(quán)限對應(yīng)的資源標(biāo)識與用戶發(fā)送來的請求訪問的資源的標(biāo)識進(jìn)行比對,以獲得標(biāo)識比對結(jié)果。具體實現(xiàn)為,以web應(yīng)用為例,若用戶請求訪問的URL與確定的用戶權(quán)限的URL完全相同,則判定用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL中存在與所述目標(biāo)元操作對應(yīng)的URL相匹配的URL。例如:用戶請求訪問的URL為:/user/view/btime,若用戶請求訪問的資源標(biāo)識與確定的用戶權(quán)限對應(yīng)的資源標(biāo)識一致,則允許用戶訪問與“/user/view/btime”對應(yīng)的信息。
第二種,前綴匹配方式:若用戶請求訪問的操作的通配符(該通配符以字符串為前綴,以*結(jié)尾)與確定的用戶權(quán)限對應(yīng)的通配符(該通配符以字符串為前綴,以*結(jié)尾)的字符串相同,則判定用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL中存在與所述目標(biāo)元操作對應(yīng)的URL相匹配的URL。
進(jìn)一步的,為了使用戶獲知自身具備的角色的權(quán)限,服務(wù)器在根據(jù)第一角色組包含的各角色分別對應(yīng)的權(quán)限,確定用戶的權(quán)限后,還可以向用戶發(fā)送權(quán)限列表。具體的,服務(wù)器根據(jù)確定出的用戶的權(quán)限,向用戶發(fā)送權(quán)限列表。其中,權(quán)限列表包含權(quán)限的信息。例如,用戶具有查看權(quán)限、宣傳權(quán)限、修改權(quán)限等,服務(wù)器將向用戶反饋其具備查看查看權(quán)限、宣傳權(quán)限、修改權(quán)限,及權(quán)限范圍、宣傳權(quán)限范圍、修改權(quán)限范圍,等等。本方法實施例通過將用戶的權(quán)限列表反饋給用戶,使得用戶可以明確獲知自己的權(quán)限,有效避免用戶做無效工作,提高用戶的工作效率。
第二種,服務(wù)器自動分配方式。
在一種實施方式中,以網(wǎng)絡(luò)廣告公司為例,假設(shè)待分配角色組標(biāo)識的對象,是該網(wǎng)絡(luò)廣告公司的客戶(后稱廣告客戶)。那么,可以在服務(wù)器內(nèi)預(yù)先存儲廣告客戶等級的標(biāo)識和角色組標(biāo)識的對應(yīng)關(guān)系。其中,這里所說的客戶等級,比如可以有高、中、低三類,這三類廣告客戶的客戶等級可以從提供給這三類廣告客戶分別用于登錄服務(wù)器的賬號中表現(xiàn)出來。比如高等級廣告客戶的賬號以數(shù)字“00”開頭;中等級廣告客戶的賬號以數(shù)字“01”開頭;低等級廣告客戶的賬號以數(shù)字“02”開頭。由于賬號可以體現(xiàn)廣告客戶的等級,因此所述賬號可以作為廣告客戶等級的標(biāo)識。提供賬號給廣告客戶的方式可以有多種,比如在網(wǎng)絡(luò)廣告公司與廣告客戶簽訂合作合同時,可以以書面形式告知賬號,本申請實施例對此不作限定。
基于上述假設(shè),若某廣告客戶希望被分配角色組標(biāo)識,則可以將該廣告客戶自身被分配的賬號發(fā)送給服務(wù)器。服務(wù)器根據(jù)接收到的該賬號,通過查詢賬號(廣告客戶等級的標(biāo)識)和角色組標(biāo)識的對應(yīng)關(guān)系,就可以確定該廣告客戶對應(yīng)的角色組標(biāo)識,并將該角色組標(biāo)識分配給該廣告客戶。
當(dāng)然,本申請實施例中,視具體應(yīng)用場景的不同,還可以采用其他方式實現(xiàn)為待分配角色組標(biāo)識的對象分配角色組標(biāo)識,本申請實施例對此不作限定。
本申請實施例中,作為用戶是否能夠執(zhí)行目標(biāo)元操作的判斷依據(jù)的所述權(quán)限關(guān)系(即用戶與元操作的權(quán)限關(guān)系),它的建立方式可以包括:用戶與角色組之間的第一對應(yīng)關(guān)系,用戶具有所屬角色組中角色的權(quán)限,每一個角色具有至少一種元操作的權(quán)限。也就是說,本方案中可以建立用戶與角色組之間的對應(yīng)關(guān)系,基于該對應(yīng)關(guān)系,可以確定出用戶具備所屬角色組中角色具有的元操作的權(quán)限,從而在可以建立用戶與角色(角色標(biāo)識)之間的對應(yīng)關(guān)系作為所述判斷依據(jù)之外,還可以建立用戶與角色之間的對應(yīng)關(guān)系作為所述判斷依據(jù),因此解決了現(xiàn)有技術(shù)中的基于角色訪問控制的權(quán)限管理方法僅能夠建立用戶與角色標(biāo)識的對應(yīng)關(guān)系,靈活性較低的問題。
需要說明的是,為了進(jìn)一步提升建立的所述判斷依據(jù)的靈活性,本申請實施例中,用戶與元操作的權(quán)限關(guān)系,還可以包括如下方式之一或者任意組合:
1、用戶與負(fù)向角色之間的第二對應(yīng)關(guān)系;
其中,所述負(fù)向角色是指用戶不具備的角色;每一個所述負(fù)向角色具有至少一種元操作的權(quán)限,用戶不具有對應(yīng)的負(fù)向角色中各元操作的權(quán)限。
2、用戶與角色之間的第三對應(yīng)關(guān)系;
其中,用戶具有對應(yīng)的角色中各元操作的權(quán)限。
4、用戶與元操作之間的第四對應(yīng)關(guān)系。
其中,所述第四對應(yīng)關(guān)系中用戶直接映射于元操作的權(quán)限。
本申請實施例1中所述的第一對應(yīng)關(guān)系~第四對應(yīng)關(guān)系的示意圖,如圖1b所示。由圖1b可以看出,針對同一用戶而言,針對該用戶可以建立起的用戶與元操作的權(quán)限關(guān)系,可以包括但不限于用戶與角色組的第一對應(yīng)關(guān)系、用戶與負(fù)向角色的第二對應(yīng)關(guān)系、用戶直接映射于角色而得到的用戶與角色的第三對應(yīng)關(guān)系以及用戶直接映射于元操作的權(quán)限而得到的第四對應(yīng)關(guān)系這四種對應(yīng)關(guān)系中的至少一種。因此,如上文所述,采用本申請實施例提供的方案,能夠提升建立的作為所述判斷依據(jù)的權(quán)限關(guān)系的靈活性。在實際應(yīng)用中,管理人員可以視實際需求,選擇采用這四種對應(yīng)關(guān)系中的至少一種,作為用戶與元操作之間的權(quán)限關(guān)系。
以下說明,在用戶與元操作的權(quán)限關(guān)系還包括上述第二對應(yīng)關(guān)系、第三對應(yīng)關(guān)系及第四對應(yīng)關(guān)系中的任意一種時,服務(wù)器如何在執(zhí)行完畢前述步驟202后,在執(zhí)行步驟203之前,確定出用戶的權(quán)限范圍,以便判斷目標(biāo)元操作是否在確定用戶的權(quán)限范圍內(nèi)。
當(dāng)步驟101中所述的用戶與元操作的權(quán)限關(guān)系還包括用戶與負(fù)向角色之間的第二對應(yīng)關(guān)系時,在上述步驟202執(zhí)行完畢之后,在執(zhí)行步驟203之前,服務(wù)器還可以執(zhí)行步驟:在所述各底層角色組分別包含的角色所具有的各元操作中,刪除所述負(fù)向角色所具有的各元操作。若所述的用戶與元操作的權(quán)限關(guān)系,僅包括所述第一對應(yīng)關(guān)系和所述第二對應(yīng)關(guān)系,而不包括所述第三對應(yīng)關(guān)系和所述第四對應(yīng)關(guān)系,那么,在所述各底層角色組分別包含的角色所具有的各元操作中刪除所述負(fù)向角色所具有的各元操作后,所剩余的元操作,構(gòu)成用戶的權(quán)限范圍。
需要說明的是,在所述各底層角色組分別包含的角色所具有的各元操作中,刪除所述負(fù)向角色所具有的各元操作的具體實現(xiàn)方式可以如圖5所示,包括如下步驟:
步驟501、對用戶的負(fù)向角色與確定出的所述各底層角色組分別包含的角色進(jìn)行比對,以得到比對結(jié)果;
在本實施例中,所述負(fù)向角色為預(yù)先規(guī)定的、用戶不應(yīng)具備的角色。以第一角色組為第二層角色組1為例,如圖3a中滿足預(yù)定條件的各底層角色組為第三層角色組1和第三層角色組2。以第三層角色組1為例,假設(shè)第三層角色組1包含角色A和角色B,角色A為負(fù)向角色(如圖4所示);角色B為所述其他角色。那么,在本申請實施例中,可以將負(fù)向角色與角色A和角色B進(jìn)行比對。
在實際應(yīng)用中,負(fù)向角色,可以由管理員根據(jù)實際需求進(jìn)行設(shè)置。比如,管理員可以將某用戶的負(fù)向角色設(shè)置為A,以表示該用戶不應(yīng)具備角色A。
一般地,負(fù)向角色和非負(fù)向角色(也即正向角色)可以保存在不同的存儲空間中,也即,負(fù)向角色的標(biāo)識和非負(fù)向角色的標(biāo)識可以保存在不同的存儲空間中,以便服務(wù)器根據(jù)存儲空間區(qū)分角色的標(biāo)識是負(fù)向角色的標(biāo)識還是正向角色的標(biāo)識。
步驟502、根據(jù)比對結(jié)果,在所述各底層角色組分別包含的角色所具有的各元操作中,刪除與所述負(fù)向角色一致的角色所具有的各元操作。
在本實施例中,繼續(xù)沿用上例,根據(jù)通過執(zhí)行步驟501得到的比對結(jié)果。當(dāng)角色A與負(fù)向角色一致,將角色A刪除,并將角色B對應(yīng)的元操作的權(quán)限確定為用戶具備的元操作的權(quán)限。
本申請實施例中,在能夠為用戶分配角色組標(biāo)識的情況下,結(jié)合負(fù)向角色的使用,能夠使得為用戶分配角色具有了更大的靈活性,且同時能夠兼顧避免過大的資源耗費(fèi)。以下舉例分析該效果是如何產(chǎn)生的。
按照現(xiàn)有技術(shù),為各用戶一一分配相應(yīng)的各角色標(biāo)識,會耗費(fèi)較多的處理資源,尤其是在用戶具備的角色較多的情況下,這個問題體現(xiàn)得尤為明顯。比如,如果有10個用戶均具備三個角色(角色標(biāo)識分別為A、B和C),那么,為了使得后續(xù)可以根據(jù)用戶具備的角色標(biāo)識確定用戶的角色,需要為這10個用戶分別分配角色標(biāo)識A、B和C,從而總計會執(zhí)行30次分配操作,耗費(fèi)較多的處理資源。
而采用本申請實施例提供的方案,可以為用戶分配角色組標(biāo)識,由于角色組是角色構(gòu)成的集合,因此相對于用戶所對應(yīng)的角色標(biāo)識的數(shù)量而言,用戶所對應(yīng)的角色組標(biāo)識的數(shù)量要小,從而相較于現(xiàn)有技術(shù)中的權(quán)限查詢方法而言,采用本申請可以減少分配標(biāo)識時所耗費(fèi)的處理資源。
為了使得分配標(biāo)識時耗費(fèi)的處理資源較少,一般說來,角色組越少越好,因為這樣可以使得能夠被分配的角色組標(biāo)識比較少。然而,對于形形色色的用戶而言,他們可以具備的角色總是隨著實際情況的變化有著不同的可能性,因此,如何兼顧減少分配標(biāo)識時所耗費(fèi)的處理資源以及角色分配的靈活性,成為亟待解決的問題。
本申請實施例中,引入了“負(fù)向角色”來指示用戶不應(yīng)具備的角色,從而,即便角色組包含的角色是相對固定不容易改變的,也可以通過負(fù)向角色,來調(diào)整用戶所屬角色組中的角色,使得不改變角色組數(shù)量(即不改變角色組標(biāo)識的數(shù)量)的情況下,可以靈活地按照需求為用戶進(jìn)行角色分配。
當(dāng)步驟101中所述的用戶與元操作的權(quán)限關(guān)系還包括用戶與角色之間的第三對應(yīng)關(guān)系時,在上述步驟202執(zhí)行完畢之后,在執(zhí)行步驟203之前,服務(wù)器還可以執(zhí)行步驟:在所述各底層角色組分別包含的角色所具有的各元操作中,增加所述第三對應(yīng)關(guān)系中該角色所具有的各元操作。若所述的用戶與元操作的權(quán)限關(guān)系,僅包括所述第一對應(yīng)關(guān)系和所述第三對應(yīng)關(guān)系,而不包括所述第二對應(yīng)關(guān)系和所述第四對應(yīng)關(guān)系,那么,在所述各底層角色組分別包含的角色所具有的各元操作中增加所述第三對應(yīng)關(guān)系中該角色所具有的各元操作后,各底層角色組分別包含的角色所具有的各元操作以及增加的各元操作,共同構(gòu)成用戶的權(quán)限范圍。
類似地,當(dāng)步驟101中所述的用戶與元操作的權(quán)限關(guān)系還包括用戶與元操作之間的第四對應(yīng)關(guān)系時,在上述步驟202執(zhí)行完畢之后,在執(zhí)行步驟203之前,服務(wù)器還可以執(zhí)行步驟:在所述各底層角色組分別包含的角色所具有的各元操作中,增加所述第四對應(yīng)關(guān)系中該角色所具有的各元操作。若所述的用戶與元操作的權(quán)限關(guān)系,僅包括所述第一對應(yīng)關(guān)系和所述第四對應(yīng)關(guān)系,而不包括所述第二對應(yīng)關(guān)系和所述第三對應(yīng)關(guān)系,那么,在所述各底層角色組分別包含的角色所具有的各元操作中增加所述第四對應(yīng)關(guān)系中該角色所具有的各元操作后,各底層角色組分別包含的角色所具有的各元操作以及增加的各元操作,共同構(gòu)成用戶的權(quán)限范圍。
當(dāng)然,所述用戶與元操作的權(quán)限關(guān)系,除了包括所述第一對應(yīng)關(guān)系外,還可以包括其他三種對應(yīng)關(guān)系中的任意兩種或全部三種。當(dāng)所述用戶與元操作的權(quán)限關(guān)系包括所述第二對應(yīng)關(guān)系時,一般會在確定出的所述各底層角色組分別包含的角色所具有的各元操作中,刪除與所述負(fù)向角色一致的角色所具有的各元操作;當(dāng)所述用戶與元操作的權(quán)限關(guān)系包括所述第三對應(yīng)關(guān)系和/或第四對應(yīng)關(guān)系時,一般會在確定出的所述各底層角色組分別包含的角色所具有的各元操作中,增加所述第三對應(yīng)關(guān)系和/或第四對應(yīng)關(guān)系中該角色所具有的各元操作。
步驟102:服務(wù)器允許所述用戶執(zhí)行所述目標(biāo)元操作,流程結(jié)束;
步驟103:服務(wù)器拒絕所述用戶執(zhí)行所述目標(biāo)元操作,流程結(jié)束。
需要說明的是,本申請實施例所提供方法的各步驟的執(zhí)行主體均可以是同一設(shè)備,或者,該方法也可由不同設(shè)備作為執(zhí)行主體。
實施例2
本實施例2將以網(wǎng)絡(luò)廣告系統(tǒng)開發(fā)場景為例,綜合說明上述實施例1提供的基于角色訪問控制的權(quán)限查詢的方法的實際應(yīng)用流程。該場景所包含的設(shè)備可以為用戶權(quán)限中心服務(wù)器2和輸入顯示設(shè)備3,如圖6所示。
在本實施例2提供的網(wǎng)絡(luò)廣告系統(tǒng)開發(fā)場景下,基于角色訪問控制的權(quán)限查詢的方法的實現(xiàn)流程圖如圖6所示,包括如下步驟:
第一,用戶權(quán)限中心服務(wù)器2建立的用戶與元操作的權(quán)限關(guān)系,包括通過角色組關(guān)聯(lián)起來的用戶與元操作的權(quán)限關(guān)系。如用戶與角色組1之間的對應(yīng)關(guān)系;
第二,預(yù)先根據(jù)用戶4的角色所屬角色組為用戶4分配角色組標(biāo)識,其中,可以是人工為用戶分配角色組標(biāo)識,也可以是用戶權(quán)限中心服務(wù)器為用戶分配角色組標(biāo)識;
第三,用戶4將獲知的角色組標(biāo)識通過輸入顯示設(shè)備3輸入,用戶權(quán)限中心服務(wù)器2確定具備該角色組標(biāo)識的角色組;
第四,用戶權(quán)限中心服務(wù)器2根據(jù)該角色組包含的各角色分別對應(yīng)的權(quán)限,確定用戶4的權(quán)限;
第五,用戶權(quán)限中心服務(wù)器2根據(jù)確定出的用戶4的權(quán)限,向輸入顯示設(shè)備3發(fā)送權(quán)限列表;
第六,用戶4通過輸入顯示設(shè)備3輸入請求訪問的資源的標(biāo)識,用戶權(quán)限中心服務(wù)器2根據(jù)請求訪問的資源的標(biāo)識與確定的用戶4的權(quán)限對應(yīng)的資源標(biāo)識進(jìn)行比對,獲得比對結(jié)果并根據(jù)比對結(jié)果執(zhí)行相應(yīng)操作。
以上為本申請實施例提供的基于角色訪問控制的權(quán)限查詢的方法,基于同樣的思路,本申請實施例還提供了相應(yīng)的基于角色訪問控制的權(quán)限管理裝置,如圖7所示。
圖7為本申請實施例提供的基于角色訪問控制的權(quán)限管理裝置結(jié)構(gòu)示意圖,具體包括:
判斷模塊701,用于在用戶執(zhí)行目標(biāo)元操作前,根據(jù)預(yù)先建立的用戶與元操作的權(quán)限關(guān)系,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi);其中,所述元操作是最小的權(quán)限管理單元;所述用戶與元操作的權(quán)限關(guān)系通過如下方式建立:用戶與角色組之間的第一對應(yīng)關(guān)系,用戶具有所屬角色組中各角色的權(quán)限,每一個角色具有至少一種元操作的權(quán)限;
執(zhí)行模塊702,用于如果判斷模塊得到的判斷結(jié)果為是,則允許所述用戶執(zhí)行所述目標(biāo)元操作,否則,拒絕所述用戶執(zhí)行所述目標(biāo)元操作。
所述判斷模塊701包括:
第一角色組確定單元7011,用于根據(jù)所述第一對應(yīng)關(guān)系,確定用戶對應(yīng)的第一角色組;
底層角色組確定單元7012,用于根據(jù)角色組集合包含的各角色組之間的層級關(guān)系,以及所述第一角色組,從所述角色組集合中確定滿足預(yù)定條件的各底層角色組;其中,所述預(yù)定條件,包括:層級低于所述第一角色組,且包含于所述第一角色組;
判斷單元7013,用于根據(jù)所述各底層角色組分別包含的角色所具有的各元操作的權(quán)限,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi)。
其中,所述用戶與元操作的權(quán)限關(guān)系還包括如下方式之一或者任意組合:
用戶與負(fù)向角色之間的第二對應(yīng)關(guān)系;所述負(fù)向角色是指用戶不具備的角色;每一個負(fù)向角色具有至少一種元操作的權(quán)限,用戶不具有對應(yīng)的負(fù)向角色中各元操作的權(quán)限;
用戶與角色之間的第三對應(yīng)關(guān)系;用戶具有對應(yīng)的角色中各元操作的權(quán)限;
用戶與元操作之間的第四對應(yīng)關(guān)系;所述第四對應(yīng)關(guān)系中用戶直接映射于元操作的權(quán)限。
所述判斷模塊701還包括:
刪除單元,用于當(dāng)所述用戶與元操作的權(quán)限關(guān)系還包括用戶與負(fù)向角色之間的第二對應(yīng)關(guān)系時,在判斷單元根據(jù)所述各底層角色組分別包含的角色所具有的各元操作的權(quán)限,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi)之前,在所述各底層角色組分別包含的角色所具有的各元操作中,刪除所述負(fù)向角色所具有的各元操作;
第一增加單元,用于當(dāng)所述用戶與元操作的權(quán)限關(guān)系還包括用戶與角色之間的第三對應(yīng)關(guān)系時,在判斷單元根據(jù)所述各底層角色組分別包含的角色所具有的各元操作的權(quán)限,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi)之前,在所述各底層角色組分別包含的角色所具有的各元操作中,增加所述第三對應(yīng)關(guān)系中該角色所具有的各元操作;
第二增加單元,用于當(dāng)所述用戶與元操作的權(quán)限關(guān)系還包括用戶與元操作之間的第四對應(yīng)關(guān)系時,在判斷單元根據(jù)所述各底層角色組分別包含的角色所具有的各元操作的權(quán)限,判斷所述目標(biāo)元操作是否在用戶的權(quán)限范圍內(nèi)之前,在所述各底層角色組分別包含的角色所具有的各元操作中,增加所述第四對應(yīng)關(guān)系中該元操作。
其中,若所述元操作包括操作指定的統(tǒng)一資源標(biāo)識符URL對應(yīng)的網(wǎng)絡(luò)資源;所述用戶的權(quán)限范圍,包括用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL;則
所述判斷單元701包括:
比對子單元,用于將確定出的所述用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL與所述目標(biāo)元操作對應(yīng)的URL進(jìn)行比對;
判定子單元,用于當(dāng)所述用戶具備操作權(quán)限的網(wǎng)絡(luò)資源的URL中,存在與所述目標(biāo)元操作對應(yīng)的URL相匹配的URL時,判定所述目標(biāo)元操作在所述用戶的權(quán)限范圍內(nèi);否則,判定所述目標(biāo)元操作未在所述用戶的權(quán)限范圍內(nèi)。
通過該方案,作為用戶是否能夠執(zhí)行目標(biāo)元操作的判斷依據(jù)的所述權(quán)限關(guān)系,它的建立方式可以包括:用戶與角色組之間的第一對應(yīng)關(guān)系,用戶具有所屬角色組中角色的權(quán)限,每一個角色具有至少一種元操作的權(quán)限。也就是說,本方案中可以建立用戶與角色組之間的對應(yīng)關(guān)系,基于該對應(yīng)關(guān)系,可以確定出用戶具備所屬角色組中角色具有的元操作的權(quán)限,從而在可以建立用戶與角色(角色標(biāo)識)之間的對應(yīng)關(guān)系作為所述判斷依據(jù)之外,還可以建立用戶與角色之間的對應(yīng)關(guān)系作為所述判斷依據(jù),因此解決了現(xiàn)有技術(shù)中的基于角色訪問控制的權(quán)限管理方法僅能夠建立用戶與角色標(biāo)識的對應(yīng)關(guān)系,靈活性較低的問題。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機(jī)可用程序代碼的計算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實施的計算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機(jī)程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機(jī)程序指令到通用計算機(jī)、專用計算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機(jī)器,使得通過計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機(jī)程序指令也可存儲在能引導(dǎo)計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機(jī)可讀存儲器中,使得存儲在該計算機(jī)可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機(jī)程序指令也可裝載到計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機(jī)實現(xiàn)的處理,從而在計算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
在一個典型的配置中,計算設(shè)備包括一個或多個處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
還需要說明的是,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。
以上所述僅為本申請的實施例而已,并不用于限制本申請。對于本領(lǐng)域技術(shù)人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請的權(quán)利要求范圍之內(nèi)。