本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種角色令牌頒發(fā)方法、訪問控制方法及相關(guān)設(shè)備。
背景技術(shù):
物聯(lián)網(wǎng)標(biāo)準(zhǔn)化組織oneM2M致力于開發(fā)用于構(gòu)造一個公共的機器對機器通信(Machine-To-Machine,M2M)服務(wù)層(Service Layer)的技術(shù)規(guī)范。
oneM2M功能架構(gòu)如圖1所示,定義了三種基本實體:
一,應(yīng)用實體(Application Entity,AE),位于應(yīng)用層,該實體可實現(xiàn)一個M2M應(yīng)用服務(wù)邏輯。一個應(yīng)用服務(wù)邏輯既可以駐留在多個M2M節(jié)點中,也可以在單個節(jié)點中存在多個執(zhí)行實例。應(yīng)用服務(wù)邏輯的每個執(zhí)行實例被稱為一個應(yīng)用實體,每個應(yīng)用實體由唯一的AE身份標(biāo)識(AE-ID)標(biāo)識。
例如,車隊跟蹤應(yīng)用實例、遠程血糖監(jiān)測應(yīng)用實例、遠程電力計量實例或控制應(yīng)用實例等都屬于應(yīng)用實體。
二,公共服務(wù)實體(Common Services Entity,CSE),一個公共服務(wù)實體由一組M2M環(huán)境中的公共服務(wù)功能(common service functions)構(gòu)成。公共服務(wù)功能通過參考點Mca和參考點Mcc公開給其他實體。參考點Mcn用于訪問底層網(wǎng)絡(luò)服務(wù)實體。每個公共服務(wù)實體由唯一的CSE-ID標(biāo)識。
三,底層網(wǎng)絡(luò)服務(wù)實體(Underlying Network Services Entity,NSE),一個底層網(wǎng)絡(luò)服務(wù)實體向多個CSE提供底層網(wǎng)絡(luò)服務(wù),例如提供設(shè)備管理、位置服務(wù)和設(shè)備觸發(fā)服務(wù)。
oneM2M通過對標(biāo)準(zhǔn)化的資源樹的操作實現(xiàn)服務(wù)層資源共享和交互。oneM2M資源樹存在于oneM2M系統(tǒng)定義的CSE中。
根據(jù)oneM2M TS-0001中關(guān)于功能架構(gòu)的定義,oneM2M資源樹的形式如圖2所示。其中,CSEBase1表示一個CSE根資源<CSEBase>,CSE1表示一個資源<remoteCSE>,APP1表示一個資源<AE>,CONT1和CONT2分別代表一個容器資源<container>,ACP1和ACP2分別代表一個資源<accessControlPolicy>。對于oneM2M資源可進行創(chuàng)建(Create,簡稱C)、查詢(Retrieve,簡稱R)、修改(Update,簡稱U)和刪除(Delete,簡稱D)等操作。
oneM2M定義的資源中與授權(quán)相關(guān)的資源為訪問控制策略資源<accessControlPolicy>,其中定義有訪問控制策略(Access Control Policy,ACP),<accessControlPolicy>資源由資源身份標(biāo)識(ID)唯一標(biāo)識。其他資源通過資源中的accessControlPolicyIDs屬性指定適用的訪問控制策略。<accessControlPolicy>資源中的特權(quán)(privileges)屬性用于存儲具體的訪問控制規(guī)則,自我管理特權(quán)(selfPrivileges)屬性用于存儲維護<accessControlPolicy>資源的訪問控制規(guī)則。
oneM2M安全解決技術(shù)規(guī)范oneM2M TS-0003中給出了授權(quán)架構(gòu)和訪問控制策略的評估。如圖3所示的授權(quán)架構(gòu)中,各授權(quán)組件的功能為:
策略執(zhí)行點(Policy Enforcement Point,PEP),與需要訪問控制的應(yīng)用系統(tǒng)共存,并由應(yīng)用系統(tǒng)調(diào)用。PEP根據(jù)用戶的訪問請求生成相應(yīng)的訪問控制決策請求,發(fā)送給策略決策點(Policy Decision Point,PDP),并根據(jù)PDP的訪問控制決策應(yīng)答確定是否執(zhí)行用戶的訪問請求。
策略決策點(Policy Decision Point,PDP),負責(zé)根據(jù)訪問控制策略評估是否同意由PEP發(fā)送來的訪問控制決策請求,并將評估結(jié)果通過訪問控制決策應(yīng)答返回給PEP。
策略獲取點(Policy Retrieval Point,PRP),根據(jù)PDP提供的策略請求獲取適用的訪問控制策略,并將獲取的訪問控制策略返回給PDP。
策略信息點(Policy Information Point,PIP),根據(jù)PDP的請求獲取與用戶、 資源或環(huán)境相關(guān)的屬性,例如訪問用戶的互聯(lián)網(wǎng)協(xié)議(IP)地址、資源的創(chuàng)建者、當(dāng)前的時間等,然后將獲得的各種屬性返回給PDP。
oneM2M的基本授權(quán)流程如下:
1、PEP根據(jù)用戶的訪問請求生成訪問控制決策請求(Access Control Decision Request)發(fā)送給PDP;
2、PDP根據(jù)PEP的訪問控制決策請求向PRP發(fā)送訪問控制策略請求(Access Control Policy Request);
3、PDP分析由PRP返回的訪問控制策略和PEP的訪問控制決策請求中提供的內(nèi)容,若需要其他屬性,則向PIP發(fā)送訪問控制屬性請求(Access Control Attribute Request),否則執(zhí)行步驟5。
4、PIP根據(jù)PDP的訪問控制屬性請求獲取相應(yīng)的與訪問控制相關(guān)的屬性,并返回給PDP。
5、PDP根據(jù)確定適用的訪問控制策略,并通過該訪問控制決策應(yīng)答(Access Control Attribute Response)返回給PEP。
6、PEP根據(jù)訪問控制決策應(yīng)答中的訪問控制策略決定是否執(zhí)行用戶的訪問請求。
oneM2M第二階段(Release 2)將研究和制定授權(quán)架構(gòu)各組成部分之間的接口,并將支持更多種類的訪問控制策略,例如基于角色的訪問控制,基于屬性的訪問控制等。目前已經(jīng)明確了Release 2中將支持基于角色的訪問控制這一新特性,但是如何實現(xiàn)基于角色的訪問控制,尚沒有解決方案。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供一種角色令牌頒發(fā)方法、訪問控制方法及相關(guān)設(shè)備,用以為oneM2M提供基于角色的訪問控制。
本發(fā)明實施例提供的具體技術(shù)方案如下:
第一方面,提供了一種角色令牌頒發(fā)方法,包括:
公共服務(wù)實體CSE接收角色令牌頒發(fā)實體發(fā)送的角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源后,還包括:
所述CSE向所述角色令牌頒發(fā)實體返回角色資源創(chuàng)建響應(yīng)。
較佳地,所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源后,還包括:
所述CSE接收所述角色令牌頒發(fā)實體發(fā)送的角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;
所述CSE根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源。
較佳地,所述CSE根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之后,還包括:
所述CSE向所述角色令牌頒發(fā)實體返回角色資源修改響應(yīng)。
較佳地,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述 令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
較佳地,所述方法還包括:
所述CSE接收所述發(fā)起方實體對所述角色資源的資源讀取請求;
所述CSE向所述發(fā)起方實體返回資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色標(biāo)識和/或所述角色令牌。
較佳地,所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源之前,還包括:
所述CSE根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體創(chuàng)建所述角色資源。
較佳地,所述CSE根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之前,還包括:
所述CSE根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體修改所述角色資源。
第二方面,提供了一種角色令牌頒發(fā)方法,包括:
角色令牌頒發(fā)實體生成角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
所述角色令牌頒發(fā)實體向公共服務(wù)實體CSE發(fā)送所述角色資源創(chuàng)建請求,由所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資 源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,所述角色令牌頒發(fā)實體向所述CSE發(fā)送所述角色資源創(chuàng)建請求之后,還包括:
所述角色令牌頒發(fā)實體接收所述CSE返回的角色資源創(chuàng)建響應(yīng)。
較佳地,所述角色令牌頒發(fā)實體接收所述CSE返回的角色資源創(chuàng)建響應(yīng)后,還包括:
所述角色令牌頒發(fā)實體將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給所述發(fā)起方實體,以及將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給策略決策點PDP實體和/或策略信息點PIP實體。
較佳地,所述角色令牌頒發(fā)實體向所述CSE發(fā)送所述角色資源創(chuàng)建請求之后,還包括:
所述角色令牌頒發(fā)實體生成角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;
所述角色令牌頒發(fā)實體向所述CSE發(fā)送所述角色資源修改請求。
較佳地,所述角色令牌頒發(fā)實體向所述CSE發(fā)送所述角色資源修改請求之后,還包括:
所述角色令牌頒發(fā)實體接收所述CSE返回的角色資源修改響應(yīng)。
較佳地,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述 令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
第三方面,提供了一種角色令牌頒發(fā)方法,包括:
發(fā)起方實體向公共服務(wù)實體CSE發(fā)送對發(fā)起方實體對應(yīng)的資源下的角色資源的資源讀取請求,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
所述發(fā)起方實體接收所述CSE返回的資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色資源中保存的所述角色令牌和/或所述角色標(biāo)識。
較佳地,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別 屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
第四方面,提供了一種訪問控制方法,包括:
策略執(zhí)行點PEP實體獲取發(fā)起方實體發(fā)送的資源訪問請求,所述資源訪問請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
所述PEP實體根據(jù)所述資源訪問請求生成訪問控制決策請求,所述訪問控制決策請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
所述PEP實體將所述訪問控制決策請求發(fā)送給策略決策點PDP實體,由所述PDP實體根據(jù)訪問控制策略以及所述角色標(biāo)識和/或角色令牌確定決策結(jié)果;
所述PEP實體獲取所述PDP實體返回的訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果;
所述PEP實體根據(jù)所述決策結(jié)果對所述發(fā)起方實體的資源訪問請求進行訪問控制。
第五方面,提供了一種訪問控制方法,包括:
策略決策點PDP實體接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
所述PDP實體根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得所述角色標(biāo)識對應(yīng)的角色令牌,根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
所述PDP實體向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,所述PDP實體根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得所述角色標(biāo)識對應(yīng)的角色令牌,包括:
所述PDP實體向公共服務(wù)實體CSE發(fā)送對所述發(fā)起方實體的角色資源的查詢請求,所述查詢請求中攜帶所述角色標(biāo)識,并獲得所述CSE返回的查詢響應(yīng),所述查詢響應(yīng)中攜帶所述角色標(biāo)識對應(yīng)的角色令牌;
或者,
所述PDP實體向策略信息點PIP實體發(fā)送訪問控制屬性請求,所述訪問控制屬性請求中攜帶所述角色標(biāo)識,并接收所述PIP實體返回的訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述PIP實體根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得的所述角色標(biāo)識對應(yīng)的角色令牌。
較佳地,所述PDP實體根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果,包括:
所述PDP實體若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
較佳地,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名 字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
較佳地,所述PDP實體確定所述角色令牌有效,包括:
所述PDP實體確定所述角色令牌的角色頒發(fā)者標(biāo)識屬于合法的令牌頒發(fā)機構(gòu),并且,根據(jù)所述角色令牌的有效起始時間以及所述角色令牌的有效結(jié)束時間確定所述角色令牌在有效期內(nèi)。
第六方面,提供了一種訪問控制方法,包括:
策略決策點PDP實體接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色令牌;
所述PDP實體根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果;
所述PDP實體向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,所述PDP實體根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果,包括:
所述PDP實體若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
第七方面,提供了一種訪問控制方法,包括:
策略信息點PIP實體接收策略決策點PDP實體發(fā)送的訪問控制屬性請求,所述訪問控制屬性請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
所述PIP實體根據(jù)所述角色標(biāo)識向公共服務(wù)實體CSE查詢所述發(fā)起方實體對應(yīng)的角色資源中是否有所述角色標(biāo)識對應(yīng)的角色令牌,并獲得查詢結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
所述PIP實體向所述PDP實體返回訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述查詢結(jié)果。
較佳地,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
第八方面,提供了一種公共服務(wù)實體CSE,包括:
接收模塊,用于接收角色令牌頒發(fā)實體發(fā)送的角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
處理模塊,用于根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,所述接收模塊還用于:
接收所述發(fā)起方實體對所述角色資源的資源讀取請求;
還包括第一發(fā)送模塊,用于:
向所述發(fā)起方實體返回資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色標(biāo)識和/或所述角色令牌。
較佳地,還包括第二發(fā)送模塊,用于:
在所述處理模塊根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源后,向所述角色令牌頒發(fā)實體返回角色資源創(chuàng)建響應(yīng)。
較佳地,所述接收模塊還用于:
接收所述角色令牌頒發(fā)實體發(fā)送的角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;
所述處理模塊還用于:
根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源。
較佳地,還包括第三發(fā)送模塊,用于:
在所述處理模塊根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之后,向所述角色令牌頒發(fā)實體返回角色資源修改響應(yīng)。
較佳地,所述處理模塊還用于:
根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源之前,根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體創(chuàng)建所述角色資源。
較佳地,所述處理模塊還用于:
根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之前,根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體修改所述角色資源。
第九方面,提供了一種角色令牌頒發(fā)實體,包括:
處理模塊,用于生成角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
發(fā)送模塊,用于向公共服務(wù)實體CSE發(fā)送所述角色資源創(chuàng)建請求,由所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,還包括第一接收模塊,用于:接收所述CSE返回的角色資源創(chuàng)建響應(yīng)。
較佳地,所述發(fā)送模塊還用于:
將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給所述發(fā)起方實體,以及將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給策略決策點PDP實體和/或策略信息點PIP實體。
較佳地,所述處理模塊還用于:
生成角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;
所述發(fā)送模塊還用于:
向所述CSE發(fā)送所述角色資源修改請求。
較佳地,還包括第二接收模塊,用于:
接收所述CSE返回的角色資源修改響應(yīng)。
第十方面,提供了一種發(fā)起方實體,包括:
發(fā)送模塊,用于向公共服務(wù)實體CSE發(fā)送對發(fā)起方實體對應(yīng)的資源下的角色資源的資源讀取請求,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
接收模塊,用于接收所述CSE返回的資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色資源中保存的所述角色令牌和/或所述角色標(biāo)識。
第十一方面,提供了一種策略執(zhí)行點PEP實體,包括:
第一獲取模塊,用于獲取發(fā)起方實體發(fā)送的資源訪問請求,所述資源訪問請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
生成模塊,用于根據(jù)所述資源訪問請求生成訪問控制決策請求,所述訪問控制決策請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
發(fā)送模塊,用于將所述訪問控制決策請求發(fā)送給策略決策點PDP實體,由所述PDP實體根據(jù)訪問控制策略以及所述角色標(biāo)識和/或角色令牌確定決策結(jié)果;
第二獲取模塊,用于獲取所述PDP實體返回的訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果;
訪問控制模塊,用于根據(jù)所述決策結(jié)果對所述發(fā)起方實體的資源訪問請求進行訪問控制。
第十二方面,提供了一種策略決策點PDP實體,包括:
接收模塊,用于接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
處理模塊,用于根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得所述角色標(biāo)識對應(yīng)的角色令牌,根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
發(fā)送模塊,用于向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,所述處理模塊具體用于:
通過該所述發(fā)送模塊向公共服務(wù)實體CSE發(fā)送對所述發(fā)起方實體的角色資源的查詢請求,所述查詢請求中攜帶所述角色標(biāo)識,并通過所述接收模塊獲得所述CSE返回的查詢響應(yīng),所述查詢響應(yīng)中攜帶所述角色標(biāo)識對應(yīng)的角色令牌;
或者,
通過所述發(fā)送模塊向策略信息點PIP實體發(fā)送訪問控制屬性請求,所述訪問控制屬性請求中攜帶所述角色標(biāo)識,并通過所述接收模塊接收所述PIP實體返回的訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述PIP實體根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得的所述角色標(biāo)識對應(yīng)的角色令牌。
較佳地,所述處理模塊具體用于:
若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
較佳地,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
較佳地,所述處理模塊具體用于:
確定所述角色令牌的角色頒發(fā)者標(biāo)識屬于合法的令牌頒發(fā)機構(gòu),并且,根 據(jù)所述角色令牌的有效起始時間以及所述角色令牌的有效結(jié)束時間確定所述角色令牌在有效期內(nèi)。
第十三方面,提供了一種策略決策點PDP實體,包括:
接收模塊,用于接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色令牌;
處理模塊,用于根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果;
發(fā)送模塊,用于向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,所述處理模塊具體用于:
若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
第十四方面,提供了一種策略信息點PIP實體,包括:
接收模塊,用于接收策略決策點PDP實體發(fā)送的訪問控制屬性請求,所述訪問控制屬性請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
處理模塊,用于根據(jù)所述角色標(biāo)識向公共服務(wù)實體CSE查詢所述發(fā)起方實體對應(yīng)的角色資源中是否有所述角色標(biāo)識對應(yīng)的角色令牌,并獲得查詢結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
發(fā)送模塊,用于向所述PDP實體返回訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述查詢結(jié)果。
第十五方面,提供了一種公共服務(wù)實體CSE,包括處理器、存儲器和收發(fā)機,收發(fā)機用于在處理器的控制下接收和發(fā)送數(shù)據(jù),存儲器中保存有預(yù)設(shè)的程序,處理器讀取存儲器中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機接收角色令牌頒發(fā)實體發(fā)送的角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,處理器根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源后,通過收發(fā)機向所述角色令牌頒發(fā)實體返回角色資源創(chuàng)建響應(yīng)。
較佳地,處理器通過收發(fā)機接收所述角色令牌頒發(fā)實體發(fā)送的角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;
根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源。
較佳地,處理器根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之后,通過收發(fā)機向所述角色令牌頒發(fā)實體返回角色資源修改響應(yīng)。
較佳地,處理器通過收發(fā)機接收所述發(fā)起方實體對所述角色資源的資源讀取請求;以及通過收發(fā)機向所述發(fā)起方實體返回資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色標(biāo)識和/或所述角色令牌。
較佳地,處理器根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源之前,根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體創(chuàng)建所述角色資源。
較佳地,處理器根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之前,根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體修改所述角色資源。
第十六方面,提供了一種角色令牌頒發(fā)實體,包括處理器、存儲器和收發(fā)機,收發(fā)機用于在處理器的控制下接收和發(fā)送數(shù)據(jù),存儲器中保存有預(yù)設(shè)的程序,處理器讀取存儲器中保存的程序,按照該程序執(zhí)行以下過程:
生成角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
通過收發(fā)機向公共服務(wù)實體CSE發(fā)送所述角色資源創(chuàng)建請求,由所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,處理器通過收發(fā)機接收所述CSE返回的角色資源創(chuàng)建響應(yīng)。
較佳地,處理器通過收發(fā)機將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給所述發(fā)起方實體,以及將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給策略決策點PDP實體和/或策略信息點PIP實體。
較佳地,處理器生成角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;通過收發(fā)機向所述CSE發(fā)送所述角色資源修改請求。
較佳地,處理器通過收發(fā)機接收所述CSE返回的角色資源修改響應(yīng)。
第十七方面,提供了一種發(fā)起方實體,包括處理器、存儲器和收發(fā)機,收發(fā)機用于在處理器的控制下接收和發(fā)送數(shù)據(jù),存儲器中保存有預(yù)設(shè)的程序,處理器讀取存儲器中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機向公共服務(wù)實體CSE發(fā)送對發(fā)起方實體對應(yīng)的資源下的角色資源的資源讀取請求,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
通過收發(fā)機接收所述CSE返回的資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色資源中保存的所述角色令牌和/或所述角色標(biāo)識。
第十八方面,提供了一種策略執(zhí)行點PEP實體,包括處理器、存儲器和收發(fā)機,收發(fā)機用于在處理器的控制下接收和發(fā)送數(shù)據(jù),存儲器中保存有預(yù)設(shè)的程序,處理器讀取存儲器中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機獲取發(fā)起方實體發(fā)送的資源訪問請求,所述資源訪問請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
根據(jù)所述資源訪問請求生成訪問控制決策請求,所述訪問控制決策請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
通過收發(fā)機將所述訪問控制決策請求發(fā)送給策略決策點PDP實體,由所述PDP實體根據(jù)訪問控制策略以及所述角色標(biāo)識和/或角色令牌確定決策結(jié)果;
通過收發(fā)機獲取所述PDP實體返回的訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果;
根據(jù)所述決策結(jié)果對所述發(fā)起方實體的資源訪問請求進行訪問控制。
第十九方面,提供了一種策略決策點PDP實體,包括處理器、存儲器和收發(fā)機,收發(fā)機用于在處理器的控制下接收和發(fā)送數(shù)據(jù),存儲器中保存有預(yù)設(shè)的程序,處理器讀取存儲器中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得所述角色標(biāo)識對應(yīng)的角色令牌,根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
通過收發(fā)機向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,處理器通過該收發(fā)機向公共服務(wù)實體CSE發(fā)送對所述發(fā)起方實體的角色資源的查詢請求,所述查詢請求中攜帶所述角色標(biāo)識,并通過收發(fā)機獲得所述CSE返回的查詢響應(yīng),所述查詢響應(yīng)中攜帶所述角色標(biāo)識對應(yīng)的角色令牌;
或者,
通過收發(fā)機向策略信息點PIP實體發(fā)送訪問控制屬性請求,所述訪問控制屬性請求中攜帶所述角色標(biāo)識,并通過收發(fā)機接收所述PIP實體返回的訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述PIP實體根據(jù)所述角色標(biāo)識查 詢所述發(fā)起方實體對應(yīng)的角色資源獲得的所述角色標(biāo)識對應(yīng)的角色令牌。
較佳地,處理器若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
較佳地,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
較佳地,處理器確定所述角色令牌的角色頒發(fā)者標(biāo)識屬于合法的令牌頒發(fā)機構(gòu),并且,根據(jù)所述角色令牌的有效起始時間以及所述角色令牌的有效結(jié)束時間確定所述角色令牌在有效期內(nèi)。
第二十方面,提供了一種策略決策點PDP實體,包括處理器、存儲器和收發(fā)機,收發(fā)機用于在處理器的控制下接收和發(fā)送數(shù)據(jù),存儲器中保存有預(yù)設(shè)的程序,處理器讀取存儲器中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問 控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色令牌;
根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果;
通過收發(fā)機向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,處理器若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
第二十一方面,提供了一種策略信息點PIP實體,包括處理器、存儲器和收發(fā)機,收發(fā)機用于在處理器的控制下接收和發(fā)送數(shù)據(jù),存儲器中保存有預(yù)設(shè)的程序,處理器讀取存儲器中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機接收策略決策點PDP實體發(fā)送的訪問控制屬性請求,所述訪問控制屬性請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
根據(jù)所述角色標(biāo)識向公共服務(wù)實體CSE查詢所述發(fā)起方實體對應(yīng)的角色資源中是否有所述角色標(biāo)識對應(yīng)的角色令牌,并獲得查詢結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
通過收發(fā)機向所述PDP實體返回訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述查詢結(jié)果。
基于上述技術(shù)方案,本發(fā)明實施例中,通過在發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,該角色資源為普通資源且用于保存角色標(biāo)識和該角色標(biāo)識對應(yīng)的角色令牌,從而能夠通過對該角色資源的操作獲取該角色令牌,基于獲取的角色令牌在oneM2M中實現(xiàn)基于角色的訪問控制。
附圖說明
圖1為oneM2M功能架構(gòu)示意圖;
圖2為oneM2M資源樹的結(jié)構(gòu)示意圖;
圖3為oneM2M授權(quán)架構(gòu)示意圖;
圖4為本發(fā)明實施例中角色令牌的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實施例中角色資源的基本結(jié)構(gòu)示意圖;
圖6為本發(fā)明實施例中<AE>資源結(jié)構(gòu)示意圖;
圖7為本發(fā)明實施例中CSE執(zhí)行角色頒發(fā)的方法流程示意圖;
圖8為本發(fā)明實施例中角色令牌頒發(fā)實體進行角色令牌頒發(fā)的方法流程示意圖;
圖9為本發(fā)明實施例中發(fā)起方實體獲取頒發(fā)的角色令牌的方法流程示意圖;
圖10為本發(fā)明實施例中PEP進行訪問控制的方法流程示意圖;
圖11為本發(fā)明實施例中PDP實體進行訪問控制的方法流程示意圖;
圖12為本發(fā)明實施例中另一PDP實體進行訪問控制的方法流程示意圖;
圖13為本發(fā)明實施例中PIP實體進行訪問控制的方法流程示意圖;
圖14為本發(fā)明實施例中角色令牌頒發(fā)及使用的過程示意圖;
圖15為本發(fā)明實施例中實體關(guān)系示意圖;
圖16為本發(fā)明實施例中CSE1中相關(guān)的資源樹的結(jié)構(gòu)示意圖;
圖17為本發(fā)明實施例中另一角色令牌頒發(fā)及使用的過程示意圖;
圖18為本發(fā)明實施例中CSE的結(jié)構(gòu)示意圖;
圖19為本發(fā)明實施例中角色令牌頒發(fā)實體的結(jié)構(gòu)示意圖;
圖20為本發(fā)明實施例中發(fā)起方實體的結(jié)構(gòu)示意圖;
圖21為本發(fā)明實施例中PEP實體的結(jié)構(gòu)示意圖;
圖22為本發(fā)明實施例中PDP實體的結(jié)構(gòu)示意圖;
圖23為本發(fā)明實施例中另一PDP實體的結(jié)構(gòu)示意圖;
圖24為本發(fā)明實施例中PIP實體的結(jié)構(gòu)示意圖;
圖25為本發(fā)明實施例中另一CSE的結(jié)構(gòu)示意圖;
圖26為本發(fā)明實施例中另一角色令牌頒發(fā)實體的結(jié)構(gòu)示意圖;
圖27為本發(fā)明實施例中另一發(fā)起方實體的結(jié)構(gòu)示意圖;
圖28為本發(fā)明實施例中另一PEP實體的結(jié)構(gòu)示意圖;
圖29為本發(fā)明實施例中另一PDP實體的結(jié)構(gòu)示意圖;
圖30為本發(fā)明實施例中另一PDP實體的結(jié)構(gòu)示意圖;
圖31為本發(fā)明實施例中另一PIP實體的結(jié)構(gòu)示意圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明作進一步地詳細描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明實施例中定義了一種oneM2M資源以及角色令牌,定義的資源為角色資源<role>,用于在CSE資源樹中存儲角色令牌以及角色令牌的描述信息,一個角色令牌對應(yīng)一個角色,角色令牌的描述信息至少包括角色令牌對應(yīng)的的角色標(biāo)識,角色令牌的描述信息用于管理角色令牌。
具體地,<role>資源可以位于oneM2M基礎(chǔ)設(shè)施節(jié)點IN-CSE中的<CSEBase>、<remoteCSE>、<AE>等資源下,以便這些資源能夠使用自身對應(yīng)的<role>資源存儲賦給自身的角色令牌以及角色令牌的描述信息。一個IN-CSE中的<CSEBase>、<remoteCSE>或<AE>資源下,可以有一個或多個角色資源實例,一個角色資源實例對應(yīng)一個角色令牌及其描述信息。
本發(fā)明定義的角色令牌的結(jié)構(gòu)如圖4所示,角色令牌由令牌內(nèi)容和令牌安全機制構(gòu)成,其中,令牌安全機制可以為令牌提供完整性和機密性保護,令牌安全機制的具體實現(xiàn)不是本發(fā)明所關(guān)注的內(nèi)容。
角色令牌內(nèi)存儲的主要內(nèi)容如下:
tokenID:能夠唯一標(biāo)識角色令牌的角色令牌標(biāo)識。
holderID:角色令牌所有者標(biāo)識。
roleID:角色標(biāo)識。
issuer:角色令牌頒發(fā)者標(biāo)識。
startTime:角色令牌有效起始時間。
expiryTime:角色令牌有效結(jié)束時間。
roleType:角色類型,用于區(qū)分該角色是由oneM2M服務(wù)提供商(M2M Service Provider)定義的服務(wù)簽約角色(Service Subscription Role),還是由oneM2M應(yīng)用服務(wù)提供商(M2M Application Service Provider)定義的與某具體應(yīng)用相關(guān)的角色。
roleName:角色可閱讀名字。
appCategory:角色所屬的應(yīng)用類別,例如設(shè)備管理應(yīng)用,智能家居應(yīng)用,智能交通應(yīng)用等。
其中,roleType、roleName、appCategory為可選內(nèi)容,一個角色令牌中可以包含roleType、roleName和appCategory中的任意一種或多種。
<role>資源的基本結(jié)構(gòu)如圖5所示,其資源類型為oneM2M普通資源(Normal Resource)。<role>資源除了具有oneM2M普通資源所共有的通用屬性(Universal Attribute)外,還具有指定失效時間(expirationTime)的公共屬性(Common Attribute)和簽約<subscription>子資源。每個<role>資源實例用于描述一個角色令牌,一個角色令牌對應(yīng)一個角色的描述信息。<role>資源的資源屬性的具體用途定義為:
角色標(biāo)識(roleID)屬性:用戶保存角色標(biāo)識。
角色令牌頒發(fā)者(issuer)標(biāo)識屬性:用于保存角色令牌頒發(fā)者標(biāo)識。
角色令牌有效起始時間(startTime)屬性:用于保存角色令牌有效起始時間。
角色令牌有效結(jié)束時間(expiryTime)屬性:用于保存角色令牌有效結(jié)束時間。
角色類型(roleType)屬性:用于區(qū)分該角色令牌對應(yīng)的角色是由oneM2M服務(wù)提供商(M2M Service Provider)定義的服務(wù)簽約角色(Service Subscription Role),還是由oneM2M應(yīng)用服務(wù)提供商(M2M Application Service Provider) 定義的與某具體應(yīng)用相關(guān)的角色。
角色名字(roleName)屬性:用于保存角色的可閱讀名字。
應(yīng)用類別(roleAppCategory)屬性:用于保存角色所屬的應(yīng)用類別,例如設(shè)備管理應(yīng)用,智能家居應(yīng)用,智能交通應(yīng)用等。
令牌值(tokenValue)屬性:用于存儲該角色的角色令牌。
其中,roleType屬性、roleName屬性和roleAppCategory屬性為可選的資源屬性,即一個角色資源可以具有roleType屬性、roleName屬性和roleAppCategory屬性中的任意一種或多種。
定義<AE>資源的結(jié)構(gòu)如圖6所示,僅是在現(xiàn)有<AE>資源中增加了<role>資源為子資源,<AE>資源下<role>子資源的數(shù)量可以為零或n個,n大于等于1,用于表示賦給AE的角色。同理,<CSEBase>資源和<remoteCSE>資源的定義與<AE>資源的定義相似,在<CSEBase>資源下增加了<role>資源為子資源,在<remoteCSE>資源增加了<role>資源為子資源,<CSEBase>資源或<remoteCSE>資源下<role>子資源的數(shù)量可以為零或n個,n大于等于1。
本發(fā)明實施例中,與角色令牌頒發(fā)及使用過程相關(guān)的實體定義如下:
角色令牌頒發(fā)實體(Role Token Authority):負責(zé)向AE或CSE頒發(fā)角色令牌;
發(fā)起方(Originator):為AE或CSE,是角色令牌頒發(fā)的對象,用于使用角色令牌進行資源訪問;
注冊響應(yīng)CSE(Registrar CSE):Originator注冊至該CSE,也即Originator的注冊資源創(chuàng)建于該CSE中;
宿主CSE(Hosting CSE):Originator想要訪問的資源存在于該CSE的資源樹中,在實際應(yīng)用中Registrar CSE和Hosting CSE可以是同一個CSE,也可以是不同的CSE;
策略執(zhí)行點(PEP):負責(zé)根據(jù)訪問控制決策執(zhí)行用戶的訪問請求,PEP存在于Host CSE中;
策略決策點(PDP):負責(zé)利用訪問控制策略評估用戶的訪問請求,并做出訪問控制決策;
策略信息點(PIP):負責(zé)獲取與訪問控制相關(guān)的屬性;
在實際應(yīng)用中,PDP可以通過PIP獲取所需要的屬性,也可以直接從發(fā)起方對應(yīng)的資源中獲取所需的信息。
基于以上定義,本發(fā)明實施例中,如圖7所示,以存儲有發(fā)起方實體對應(yīng)的資源的CSE為執(zhí)行主體,該CSE可以是存儲有發(fā)起方實體的注冊資源的實體,也可以是存儲有發(fā)起方的非注冊資源的實體,角色令牌頒發(fā)的詳細方法流程如下:
步驟701:CSE接收角色令牌頒發(fā)實體發(fā)送的角色資源創(chuàng)建請求,該角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌。
步驟702:CSE根據(jù)角色標(biāo)識以及角色令牌在發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,角色資源為普通資源且存儲有該角色標(biāo)識和該角色令牌。
較佳地,CSE根據(jù)角色標(biāo)識以及角色令牌在發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源后,向角色令牌頒發(fā)實體返回角色資源創(chuàng)建響應(yīng),該角色資源創(chuàng)建響應(yīng)用于通知角色令牌頒發(fā)實體該角色資源是否創(chuàng)建成功。
較佳地,CSE根據(jù)角色標(biāo)識以及角色令牌在發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源后,還可以對角色資源進行修改,具體為:
CSE接收角色令牌頒發(fā)實體發(fā)送的角色資源修改請求,該角色資源修改請求中攜帶重新頒發(fā)給該發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改該角色資源。
較佳地,CSE根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改角色資源之后,向角色令牌頒發(fā)實體返回角色資源修改響應(yīng),該角色資源修改響應(yīng)用于通知角色令牌頒發(fā)實體該角色資源是否修改成功。
較佳地,CSE接收發(fā)起方實體對角色資源的資源讀取請求;向發(fā)起方實體返回資源讀取響應(yīng),該資源讀取響應(yīng)中攜帶角色標(biāo)識和/或角色令牌。
實施中,若發(fā)起方實體對應(yīng)的資源為該發(fā)起方實體的注冊資源,則保存有該注冊資源的CSE為注冊響應(yīng)CSE。若發(fā)起方實體對應(yīng)的資源不是發(fā)起方實體的注冊資源,則保存有該資源的CSE可以是任意一個CSE。
較佳地,CSE根據(jù)與發(fā)起方實體對應(yīng)的資源相關(guān)聯(lián)的訪問控制策略對與該資源相關(guān)的操作進行訪問控制。具體地,CSE根據(jù)角色標(biāo)識以及角色令牌在發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源之前,根據(jù)該發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許該角色令牌頒發(fā)實體創(chuàng)建角色資源。具體地,CSE根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改角色資源之前,根據(jù)發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許角色令牌頒發(fā)實體修改角色資源。實施中,與發(fā)起方實體對應(yīng)的資源相關(guān)聯(lián)的訪問控制策略指定了允許訪問該資源的實體。
基于以上定義,本發(fā)明實施例中,如圖8所示,角色令牌頒發(fā)實體進行角色令牌頒發(fā)的詳細方法流程如下:
步驟801:角色令牌頒發(fā)實體生成角色資源創(chuàng)建請求,該角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及該角色標(biāo)識對應(yīng)的角色令牌。
具體地,角色資源創(chuàng)建請求中除攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及該角色標(biāo)識對應(yīng)的角色令牌外,還可能攜帶角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間、角色令牌有效結(jié)束時間、角色類型、角色可閱讀名字、角色所屬的應(yīng)用類別中的一種或多種。
步驟802:角色令牌頒發(fā)實體向CSE發(fā)送角色資源創(chuàng)建請求,由該CSE根據(jù)該角色標(biāo)識以及該角色令牌在該發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,該角色資源為普通資源且存儲有該角色標(biāo)識和該角色令牌。
其中,CSE保存有發(fā)起方實體對應(yīng)的資源,若發(fā)起方實體對應(yīng)的資源為注冊資源,則該CSE為注冊響應(yīng)CSE,若發(fā)起方實體對應(yīng)的資源不是注冊資源, 則該CSE為任意一個保存有發(fā)起方實體對應(yīng)的資源且能夠在該資源下創(chuàng)建角色資源的實體。
較佳地,角色令牌頒發(fā)實體向CSE發(fā)送角色資源創(chuàng)建請求之后,接收該CSE返回的角色資源創(chuàng)建響應(yīng),該角色資源創(chuàng)建響應(yīng)用于指示是否成功創(chuàng)建角色資源。
實施中,若發(fā)起方實體對應(yīng)的資源不是發(fā)起方實體的注冊資源,則角色令牌頒發(fā)實體將創(chuàng)建的角色資源的地址信息的指示信息發(fā)送給該發(fā)起方實體;以及將該發(fā)起方實體創(chuàng)建的角色資源的地址信息的指示信息發(fā)送給PDP實體和/或PIP實體。具體地,角色資源的地址信息的指示信息可以是角色資源的地址信息,或者是該角色資源所在的發(fā)起方實體對應(yīng)的資源的地址信息等。
較佳地,角色令牌頒發(fā)實體向CSE發(fā)送角色資源創(chuàng)建請求之后,還可以對角色資源進行修改,具體地:角色令牌頒發(fā)實體生成角色資源修改請求,該角色資源修改請求中攜帶重新頒發(fā)給發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;角色令牌頒發(fā)實體向CSE發(fā)送角色資源修改請求。
較佳地,角色令牌頒發(fā)實體向CSE發(fā)送角色資源修改請求之后,接收該CSE返回的角色資源修改響應(yīng),該角色資源修改響應(yīng)用于指示是否成功修改角色資源。
以上實施例中,通過在發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,并在該角色資源中保存角色標(biāo)識和該角色標(biāo)識對應(yīng)的角色令牌,使得PEP實體獲取發(fā)起方實體的攜帶角色標(biāo)識的資源訪問請求后,通過PDP實體從該發(fā)起方實體對應(yīng)的角色資源中查詢該角色標(biāo)識對應(yīng)的角色令牌獲得查詢結(jié)果,PDP實體根據(jù)該查詢結(jié)果以及資源訪問請求中攜帶的角色標(biāo)識是否確實頒發(fā)給了該發(fā)起方實體,若確實頒發(fā)給了該發(fā)起方實體,則根據(jù)訪問控制策略以及該角色標(biāo)識對應(yīng)的角色令牌確定對該資源訪問請求的決策結(jié)果,從而實現(xiàn)基于角色的訪問控制。
或者,通過在發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,并在該角色資源中 保存角色標(biāo)識和該角色標(biāo)識對應(yīng)的角色令牌,使得PEP實體獲取發(fā)起方實體的攜帶角色令牌的資源訪問請求后,通過PDP實體確定該角色令牌以及該角色令牌對應(yīng)的角色標(biāo)識是否確實頒發(fā)給了該發(fā)起方實體,若確實頒發(fā)給了該發(fā)起方實體,則根據(jù)訪問控制策略以及該角色令牌確定對該資源訪問請求的決策結(jié)果,從而實現(xiàn)基于角色的訪問控制。
基于以上定義,本發(fā)明實施例中,如圖9所示,發(fā)起方實體獲取頒發(fā)的角色令牌的過程如下:
步驟901:發(fā)起方實體向CSE發(fā)送對發(fā)起方實體對應(yīng)的資源下的角色資源的資源讀取請求,該角色資源為普通資源且存儲有該發(fā)起方實體的角色標(biāo)識以及該角色標(biāo)識對應(yīng)的角色令牌。
其中,CSE保存有發(fā)起方實體對應(yīng)的資源,若發(fā)起方實體對應(yīng)的資源為注冊資源,則該CSE為注冊響應(yīng)CSE,若發(fā)起方實體對應(yīng)的資源不是注冊資源,則該CSE為任意一個保存有發(fā)起方實體對應(yīng)的資源且能夠在該資源下創(chuàng)建角色資源的實體。
步驟902:發(fā)起方實體接收CSE返回的資源讀取響應(yīng),該資源讀取響應(yīng)中攜帶角色資源中保存的角色令牌和/或角色標(biāo)識。
具體地,資源讀取響應(yīng)中除了攜帶角色令牌和角色標(biāo)識外,還可能攜帶角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間、角色令牌有效結(jié)束時間,可選地,還可能包括角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的一種或多種。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中,如圖10所示,PEP進行訪問控制的詳細方法流程如下:
步驟1001:PEP實體獲取發(fā)起方實體發(fā)送的資源訪問請求,該資源訪問請求中攜帶該發(fā)起方實體的角色標(biāo)識和/或角色令牌。
具體地,發(fā)起方實體的資源訪問請求中攜帶需要訪問的目標(biāo)資源的地址信息。
較佳地,資源訪問請求中攜帶的發(fā)起方實體的角色令牌,為根據(jù)本次資源訪問所屬的應(yīng)用類別以及角色所屬的應(yīng)用類別確定。例如,若發(fā)起方實體本次資源訪問所屬的應(yīng)用類別為智能交通應(yīng)用,則該發(fā)起方實體從角色列表中查找與智能交通應(yīng)用相對應(yīng)的角色,在資源訪問請求中攜帶該角色的角色令牌和/或角色標(biāo)識。
步驟1002:PEP實體根據(jù)資源訪問請求生成訪問控制決策請求,該訪問控制決策請求中攜帶該發(fā)起方實體的角色標(biāo)識和/或角色令牌。
步驟1003:PEP實體將訪問控制決策請求發(fā)送給PDP實體,由該PDP實體根據(jù)訪問控制策略以及該角色標(biāo)識和/或該角色令牌確定決策結(jié)果。
其中,訪問控制策略與發(fā)起方實體需要訪問的目標(biāo)資源相關(guān)聯(lián)。
步驟1004:PEP實體獲取PDP實體返回的訪問控制決策應(yīng)答,該訪問控制決策應(yīng)答中攜帶該決策結(jié)果。
步驟1005:PEP實體根據(jù)該決策結(jié)果對發(fā)起方實體的資源訪問請求進行訪問控制。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中,如圖11所示,PDP實體進行訪問控制的詳細方法流程如下:
步驟1101:PDP實體接收PEP實體發(fā)送的訪問控制決策請求,該訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識。
步驟1102:PDP實體根據(jù)角色標(biāo)識查詢發(fā)起方實體對應(yīng)的角色資源獲得該角色標(biāo)識對應(yīng)的角色令牌,根據(jù)該角色令牌以及訪問控制策略確定決策結(jié)果,該角色資源為普通資源且存儲有該發(fā)起方實體的角色標(biāo)識和角色令牌。
在一個具體實施方式中,PDP實體向CSE發(fā)送對發(fā)起方實體的角色資源的查詢請求,該查詢請求中攜帶角色標(biāo)識,并獲得該CSE返回的查詢響應(yīng),該查詢響應(yīng)中攜帶該角色標(biāo)識對應(yīng)的角色令牌。其中,CSE保存有發(fā)起方實體對應(yīng)的資源。
在另一個具體實施方式中,PDP實體向PIP實體發(fā)送訪問控制屬性請求, 該訪問控制屬性請求中攜帶角色標(biāo)識,并接收該PIP實體返回的訪問控制屬性響應(yīng),該訪問控制屬性響應(yīng)中攜帶PIP實體根據(jù)該角色標(biāo)識查詢該發(fā)起方實體對應(yīng)的角色資源獲得的角色標(biāo)識對應(yīng)的角色令牌。
具體地,PDP實體若確定角色令牌有效后,從角色令牌中提取角色信息,根據(jù)該角色信息以及訪問控制策略確定決策結(jié)果。
較佳地,PDP實體確定角色令牌的角色頒發(fā)者標(biāo)識屬于合法的令牌頒發(fā)機構(gòu),并且,根據(jù)角色令牌的有效起始時間以及角色令牌的有效結(jié)束時間確定角色令牌在有效期內(nèi),則確定角色令牌有效。
具體地,PDP實體根據(jù)角色令牌以及訪問控制策略確定決策結(jié)果,具體為:PDP實體若確定角色令牌有效,且根據(jù)訪問控制策略確定允許發(fā)起實體以該角色令牌對應(yīng)的角色進行資源訪問,則確定決策結(jié)果為允許該發(fā)起方實體進行本次資源訪問;若確定角色令牌有效,且根據(jù)訪問控制策略確定不允許發(fā)起實體以該角色令牌對應(yīng)的角色進行資源訪問,則確定決策結(jié)果為不允許該發(fā)起方實體進行本次資源訪問。
具體地,PDP實體若確定查詢到的角色令牌無效,則根據(jù)訪問控制策略確定決策結(jié)果為不允許發(fā)起方實體的資源訪問請求。
其中,訪問控制策略可以是PDP實體通過向PRP實體發(fā)送訪問控制策略請求,獲取PRP實體返回的訪問控制策略響應(yīng),該訪問控制策略響應(yīng)中攜帶基于角色令牌進行訪問控制的訪問控制策略。
步驟1103:PDP實體向PEP實體返回訪問控制決策應(yīng)答,該訪問控制決策應(yīng)答中攜帶決策結(jié)果。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中,如圖12所示,PDP實體進行訪問控制的詳細方法流程如下:
步驟1201:PDP實體接收PEP實體發(fā)送的訪問控制決策請求,該訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色令牌。
步驟1202:PDP實體根據(jù)角色令牌以及訪問控制策略確定決策結(jié)果。
具體地,PDP實體若確定角色令牌有效后,從該角色令牌中提取角色信息,根據(jù)該角色信息以及訪問控制策略確定決策結(jié)果。
具體地,PDP實體若確定角色令牌的角色頒發(fā)者標(biāo)識屬于合法的令牌頒發(fā)機構(gòu),并且,根據(jù)角色令牌的有效起始時間以及角色令牌的有效結(jié)束時間確定角色令牌在有效期內(nèi),則確定角色令牌有效。
具體地,PDP實體根據(jù)角色令牌以及訪問控制策略確定決策結(jié)果,具體為:PDP實體若確定角色令牌有效,且根據(jù)訪問控制策略確定允許發(fā)起實體以該角色令牌對應(yīng)的角色進行資源訪問,則確定決策結(jié)果為允許該發(fā)起方實體進行本次資源訪問;若確定角色令牌有效,且根據(jù)訪問控制策略確定不允許發(fā)起實體以該角色令牌對應(yīng)的角色進行資源訪問,則確定決策結(jié)果為不允許該發(fā)起方實體進行本次資源訪問。
具體地,PDP實體若確定角色令牌無效,則根據(jù)訪問控制策略確定決策結(jié)果為不允許發(fā)起方實體的資源訪問請求。
其中,訪問控制策略可以是PDP實體通過向PRP實體發(fā)送訪問控制策略請求,獲取PRP實體返回的訪問控制策略響應(yīng),該訪問控制策略響應(yīng)中攜帶基于角色令牌進行訪問控制的訪問控制策略。
步驟1203:PDP實體向PEP實體返回訪問控制決策應(yīng)答,該訪問控制決策應(yīng)答中攜帶決策結(jié)果。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中,如圖13所示,PIP實體進行訪問控制的詳細方法流程如下:
步驟1301:PIP實體接收PDP實體發(fā)送的訪問控制屬性請求,該訪問控制屬性請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識。
步驟1302:PIP實體根據(jù)角色標(biāo)識向CSE查詢發(fā)起方實體對應(yīng)的角色資源中是否有該角色標(biāo)識對應(yīng)的角色令牌,并獲得查詢結(jié)果,該角色資源為普通資源且存儲有發(fā)起方實體的角色標(biāo)識和角色令牌。
具體地,若CSE中的發(fā)起方實體對應(yīng)的角色資源中保存有該角色標(biāo)識對 應(yīng)的角色令牌,則將該角色令牌作為查詢結(jié)果返回給PIP實體;若CSE中的發(fā)起方實體對應(yīng)的角色資源中未保存有該角色標(biāo)識對應(yīng)的角色令牌,則向PIP實體返回的查詢結(jié)果為空。其中,發(fā)起方實體對應(yīng)的角色資源可以有多個,CSE根據(jù)角色標(biāo)識分別查詢發(fā)起方實體對應(yīng)的每個角色資源,確定該角色標(biāo)識對應(yīng)的角色資源,將該角色資源中保存的角色令牌返回給PIP。
實施中,查詢結(jié)果中還包括角色標(biāo)識對應(yīng)的角色令牌的描述信息。
該角色令牌的描述信息可以是該角色令牌對應(yīng)的角色資源的部分或全部屬性的信息。
步驟1303:PIP實體向PDP實體返回訪問控制屬性響應(yīng),該訪問控制屬性響應(yīng)中攜帶該查詢結(jié)果。
以下通過兩個具體實施例對本發(fā)明實施例所提供的角色令牌頒發(fā)以及使用過程進行說明。
第一具體實施例,如圖14所示,角色令牌頒發(fā)及使用的詳細過程為:
步驟1401:角色令牌頒發(fā)(Role Token Authority)實體生成角色令牌(Role Token),該角色令牌中包含有tokenID,holderID,roleID,issuer,startTime,expiryTime,roleType,roleName和appCategory等令牌描述信息。
步驟1402:角色令牌頒發(fā)實體向Registrar CSE中Originator的注冊資源發(fā)送創(chuàng)建<role>資源的請求,即角色資源創(chuàng)建請求,該請求中包含有請求創(chuàng)建的<role>資源的全部或部分屬性的信息,例如,roleID,issuer,startTime,expiryTime,roleType,roleName,roleAppCategory和tokenValue等屬性的值。其中,Originator為AE或CSE。
具體地,在創(chuàng)建<role>資源后,還可以對該<role>資源進行修改,具體地,角色令牌頒發(fā)實體向Registrar CSE中Originator的注冊資源發(fā)送修改<role>資源的請求,即角色資源修改請求,該請求中包含有請求修改的<role>資源的全部或部分屬性的信息,例如,roleID,issuer,startTime,expiryTime,roleType,roleName,roleAppCategory和tokenValue等屬性的值。其中,Originator為AE 或CSE。
步驟1403:Registrar CSE接收到角色令牌頒發(fā)實體發(fā)送的創(chuàng)建或維護<role>資源的請求后進行如下處理:
檢查與Originator的注冊資源相關(guān)聯(lián)的訪問控制策略,確定角色令牌頒發(fā)實體是否有權(quán)創(chuàng)建或維護該<role>資源,若允許,根據(jù)創(chuàng)建或維護<role>資源的請求所提供的屬性值創(chuàng)建或維護所請求的<role>資源。
步驟1404:Registrar CSE向角色令牌頒發(fā)實體返回創(chuàng)建或維護<role>資源的響應(yīng),即角色資源創(chuàng)建響應(yīng)或角色資源修改響應(yīng)。
步驟1405:Originator向Registrar CSE發(fā)送對該Originator注冊資源中的<role>資源的資源讀取請求,以便獲取已頒發(fā)給它的角色令牌。
步驟1406:Registrar CSE將Originator所擁有的角色的屬性信息以信息列表的方式發(fā)送給Originator,角色的屬性信息即角色資源的屬性信息,具體包括roleID,issuer,startTime,expiryTime,roleType,roleName,appCategory和tokenValue等。
步驟1407:Originator根據(jù)當(dāng)前資源訪問所屬的應(yīng)用類別與角色所屬的應(yīng)用類別進行比較,選擇適用的角色,向Hosting CSE發(fā)送對請求訪問的資源的資源訪問請求,并將所選擇的角色的相關(guān)信息附著在該請求中,所附著的角色的相關(guān)信息應(yīng)至少包含角色標(biāo)識(roleID)或角色令牌(tokenValue)。
步驟1408:Hosting CSE中的PEP根據(jù)Originator發(fā)送的資源訪問請求生成訪問控制決策請求,該訪問控制決策請求中包含有Originator提供的角色的相關(guān)信息,然后將該訪問控制決策請求發(fā)送給PDP。
步驟1409:PDP若確定Originator發(fā)送的資源訪問請求中攜帶有角色令牌,則直接執(zhí)行步驟1410;若確定Originator發(fā)送的資源訪問請求中僅攜帶有角色標(biāo)識,則PDP根據(jù)角色標(biāo)識從Originator的注冊資源中的<role>資源中獲取該角色標(biāo)識對應(yīng)的角色令牌。
一個具體實施中,PDP生成訪問控制屬性請求,該訪問控制屬性請求中攜 帶角色標(biāo)識,將該訪問控制屬性請求發(fā)送給PIP;PIP向Registrar CSE發(fā)送攜帶該角色標(biāo)識的角色資源查詢請求,并接收Registrar CSE返回的角色資源查詢響應(yīng),該角色資源查詢響應(yīng)中攜帶Registrar CSE查詢該Originator的注冊資源中的<role>資源獲得的角色令牌。
步驟1410:PDP驗證角色令牌的有效性,具體為驗證角色令牌是否是由合法的令牌頒發(fā)機構(gòu)頒發(fā),是否在有效期內(nèi),角色令牌所有者標(biāo)識是否與資源訪問請求中攜帶的Originator的標(biāo)識相同,角色令牌是否適用于所訪問的資源等。若通過驗證,則從角色令牌中提取出角色。
步驟1411:PDP根據(jù)訪問控制策略和獲得的角色令牌進行訪問控制決策獲得決策結(jié)果。
步驟1412:PDP將決策結(jié)果通過訪問控制決策應(yīng)答發(fā)送給PEP。
步驟1413:PEP接收到訪問控制決策應(yīng)答后,根據(jù)決策結(jié)果判斷Originator的資源訪問請求是否被允許,若允許,則執(zhí)行Originator的資源訪問請求。
步驟1414:PEP將向Originator返回資源訪問響應(yīng),該資源訪問響應(yīng)中攜帶資源訪問請求的執(zhí)行結(jié)果。
第二具體實施例,oneM2M應(yīng)用服務(wù)提供商(oneM2M Application Service Provider)通過oneM2M服務(wù)商(oneM2M Service Provider)提供的平臺讀取存儲在家庭網(wǎng)關(guān)(Home Gateway)中的數(shù)據(jù)。如圖15所示為該具體實施所涉及的實體關(guān)系示意圖,對所涉及的各實體描述如下:
CSE1:為oneM2M服務(wù)提供商(oneM2M Service Provider)基礎(chǔ)設(shè)施節(jié)點(Infrastructure Node)中的CSE(稱為IN-CSE)。
CSE2:為存在于一個家庭網(wǎng)關(guān)(Home Gateway)中的oneM2M應(yīng)用服務(wù)節(jié)點(Application Service Node)中的CSE(稱為ASN-CSE)。
AE1:為注冊至CSE1的AE,角色令牌頒發(fā)實體通過AE1訪問CSE1中的資源且具有在CSE1中創(chuàng)建<role>資源的特權(quán)。
AE2:為注冊至CSE1的AE,oneM2M應(yīng)用服務(wù)提供商(oneM2M Application Service Provider)通過AE2訪問CSE2中的資源。
該具體實施例中,CSE1中相關(guān)的資源樹如圖16所示,其中:
<CSEBase>:為CSE1資源樹的根節(jié)點。
<AE2>:為AE2成功注冊至CSE1后的注冊資源。
<role>:為AE1在<AE2>中創(chuàng)建的子資源,一個<role>子資源表示一個賦給AE2的角色,<role>子資源中描述了roleID,issuer,startTime,expiryTime,roleType,roleName,appCategory和tokenValue等角色屬性信息。
該具體實施例中,角色令牌頒發(fā)及使用的預(yù)配置過程為:oneM2M應(yīng)用服務(wù)提供商AE2注冊至oneM2M服務(wù)提供商的IN-CSE(CSE1)中。角色令牌頒發(fā)實體通過AE1向PDP提供用于驗證其所頒發(fā)的角色令牌的安全憑證,例如該安全憑證為與簽發(fā)令牌所使用私鑰對應(yīng)的公鑰證書。
該具體實施例中,如圖17所示,角色令牌頒發(fā)及使用的詳細過程為:
步驟1701:角色令牌頒發(fā)實體生成角色令牌,該角色令牌中包含有tokenID=TOKEN1234,holderID=AE2,roleID=ROLE1234,issuer=AE1,startTime=2015.10.01,expiryTime=2016.10.01,roleType=0,roleName=Data Collection Role,appCategory=12等角色屬性的值。
步驟1702:角色令牌頒發(fā)實體通過AE1向CSE1發(fā)送在<AE2>資源下創(chuàng)建<role>資源的角色資源創(chuàng)建請求,該角色資源創(chuàng)建請求中提供創(chuàng)建角色資源所需的屬性信息,例如roleID=ROLE1234,issuer=AE1,startTime=2015.10.01,expiryTime=2016.10.01,roleType=0,roleName=事件收集(Event Collection),appCategory=12,tokenValue=E8F852AE5B...等。
步驟1703:CSE1驗證AE1的訪問權(quán)限,確定允許AE1創(chuàng)建<role>資源后,根據(jù)AE1提供的角色資源的屬性信息在<AE2>資源下創(chuàng)建相關(guān)的<role>資源。
步驟1704:CSE1向AE1返回角色資源創(chuàng)建響應(yīng),該角色資源創(chuàng)建響應(yīng)用于告知AE1是否創(chuàng)建成功。
步驟1705:AE2向CSE1發(fā)送對<AE2>的<role>資源的資源讀取請求。
步驟1706:CSE1將<AE2>資源下的<role>資源的屬性信息以列表的形式發(fā)送給AE2,列表中包含有roleID=ROLE1234的角色信息,其中包含有appCategory=12和角色令牌roleToken=E8F852AE5B...等角色屬性的值。
步驟1707:AE2向CSE2發(fā)送資源訪問請求,所請求訪問的資源需要使用roleAppCategory=12的角色,因此在該資源訪問請求中攜帶roleID=ROLE1234的角色令牌。
步驟1708:CSE2中的PEP根據(jù)AE2發(fā)送的資源訪問請求生成訪問控制決策請求,訪問控制決策請求中包含有AE2提供的角色令牌,將該訪問控制決策請求發(fā)送給CSE2中的PDP。
步驟1709:PDP接收到PEP發(fā)送的訪問控制決策請求后,根據(jù)角色令牌頒發(fā)實體通過AE1提供的安全憑證(如公鑰證書)驗證該訪問控制決策請求中攜帶的角色令牌確實為AE1所頒發(fā),若確定為AE1所頒發(fā),根據(jù)角色令牌的holderID屬性驗證該角色令牌是否屬于AE2,根據(jù)startTime和expiryTime驗證該角色令牌是否仍在有效期內(nèi),根據(jù)appCategory驗證該角色令牌中所攜帶的角色適用于其所請求訪問的資源,驗證通過后,從角色令牌中提取出roleID=ROLE1234的角色信息。
步驟1710:PDP根據(jù)訪問控制策略和AE2提供的角色令牌,評估AE2的資源訪問請求,若訪問控制策略描述為:roleID=ROLE1234的角色具有數(shù)據(jù)讀取權(quán)限,則確定評估結(jié)果是“同意AE2的資源訪問請求”。
步驟1711:PDP將評估結(jié)果通過訪問控制決策應(yīng)答發(fā)送PEP。
步驟1712:PEP根據(jù)評估結(jié)果確定AE2的資源訪問請求被允許,則執(zhí)行AE2的資源訪問請求。
步驟1713:PEP將執(zhí)行結(jié)果通過資源訪問響應(yīng)發(fā)送給AE2。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中提供了一種CSE,該CSE可以是保存有發(fā)起方實體對應(yīng)的資源的任意一個CSE,例如,可以是保存有發(fā)起方實體的注冊資源的注冊響應(yīng)CSE,該CSE的具體實施可參見上述方法實施例部分 的描述,重復(fù)之處不再贅述,如圖18所示,該CSE主要包括:
接收模塊1801,用于接收角色令牌頒發(fā)實體發(fā)送的角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
處理模塊1802,用于根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,所述接收模塊還用于:
接收所述發(fā)起方實體對所述角色資源的資源讀取請求;
還包括第一發(fā)送模塊1803,用于:
向所述發(fā)起方實體返回資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色標(biāo)識和/或所述角色令牌。
較佳地,還包括第二發(fā)送模塊1804,用于:
在所述處理模塊根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源后,向所述角色令牌頒發(fā)實體返回角色資源創(chuàng)建響應(yīng)。
較佳地,所述接收模塊還用于:
接收所述角色令牌頒發(fā)實體發(fā)送的角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;
所述處理模塊還用于:
根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源。
較佳地,還包括第三發(fā)送模塊1805,用于:
在所述處理模塊根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之后,向所述角色令牌頒發(fā)實體返回角色資源修 改響應(yīng)。
較佳地,所述處理模塊還用于:
根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源之前,根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體創(chuàng)建所述角色資源。
較佳地,所述處理模塊還用于:
根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之前,根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體修改所述角色資源。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種角色令牌頒發(fā)實體,該角色令牌頒發(fā)實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖19所示,該實體主要包括:
處理模塊1901,用于生成角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
發(fā)送模塊1902,用于向公共服務(wù)實體CSE發(fā)送所述角色資源創(chuàng)建請求,由所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,還包括第一接收模塊1903,用于:接收所述CSE返回的角色資源創(chuàng)建響應(yīng)。
較佳地,所述發(fā)送模塊還用于:
將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給所述發(fā)起方實體,以及將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給策略決策點PDP實體和/或策略信息點PIP實體。
較佳地,所述處理模塊還用于:
生成角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā) 起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;
所述發(fā)送模塊還用于:
向所述CSE發(fā)送所述角色資源修改請求。
較佳地,還包括第二接收模塊1904,用于:
接收所述CSE返回的角色資源修改響應(yīng)。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種發(fā)起方實體,該發(fā)起方實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖20所示,該發(fā)起方實體主要包括:
發(fā)送模塊2001,用于向公共服務(wù)實體CSE發(fā)送對發(fā)起方實體對應(yīng)的資源下的角色資源的資源讀取請求,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
接收模塊2002,用于接收所述CSE返回的資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色資源中保存的所述角色令牌和/或所述角色標(biāo)識。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種PEP實體,該PEP實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖21所示,該PEP實體主要包括:
第一獲取模塊2101,用于獲取發(fā)起方實體發(fā)送的資源訪問請求,所述資源訪問請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
生成模塊2102,用于根據(jù)所述資源訪問請求生成訪問控制決策請求,所述訪問控制決策請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
發(fā)送模塊2103,用于將所述訪問控制決策請求發(fā)送給策略決策點PDP實體,由所述PDP實體根據(jù)訪問控制策略以及所述角色標(biāo)識和/或角色令牌確定決策結(jié)果;
第二獲取模塊2104,用于獲取所述PDP實體返回的訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果;
訪問控制模塊2105,用于根據(jù)所述決策結(jié)果對所述發(fā)起方實體的資源訪問 請求進行訪問控制。
實施中,PEP實體位于資源訪問請求所請求訪問的目標(biāo)資源所在的CSE中。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種PDP實體,該PDP實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖22所示,該PDP實體主要包括:
接收模塊2201,用于接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
處理模塊2202,用于根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得所述角色標(biāo)識對應(yīng)的角色令牌,根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
發(fā)送模塊2203,用于向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,所述處理模塊具體用于:
通過該所述發(fā)送模塊向公共服務(wù)實體CSE發(fā)送對所述發(fā)起方實體的角色資源的查詢請求,所述查詢請求中攜帶所述角色標(biāo)識,并通過所述接收模塊獲得所述CSE返回的查詢響應(yīng),所述查詢響應(yīng)中攜帶所述角色標(biāo)識對應(yīng)的角色令牌;
或者,
通過所述發(fā)送模塊向策略信息點PIP實體發(fā)送訪問控制屬性請求,所述訪問控制屬性請求中攜帶所述角色標(biāo)識,并通過所述接收模塊接收所述PIP實體返回的訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述PIP實體根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得的所述角色標(biāo)識對應(yīng)的角色令牌。
較佳地,所述處理模塊具體用于:
若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
實施中,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
較佳地,所述處理模塊具體用于:
確定所述角色令牌的角色頒發(fā)者標(biāo)識屬于合法的令牌頒發(fā)機構(gòu),并且,根據(jù)所述角色令牌的有效起始時間以及所述角色令牌的有效結(jié)束時間確定所述角色令牌在有效期內(nèi)。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了另一種PDP實體,該PDP實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖23所示,該PDP實體主要包括:
接收模塊2301,用于接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求, 所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色令牌;
處理模塊2302,用于根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果;
發(fā)送模塊2303,用于向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,所述處理模塊具體用于:
若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種PIP實體,該PIP實體的具體實施可參見上述方法實施例部分的描述,如圖24所示,該PIP實體主要包括:
接收模塊2401,用于接收策略決策點PDP實體發(fā)送的訪問控制屬性請求,所述訪問控制屬性請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
處理模塊2402,用于根據(jù)所述角色標(biāo)識向公共服務(wù)實體CSE查詢所述發(fā)起方實體對應(yīng)的角色資源中是否有所述角色標(biāo)識對應(yīng)的角色令牌,并獲得查詢結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
發(fā)送模塊2403,用于向所述PDP實體返回訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述查詢結(jié)果。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中提供了一種CSE,該CSE可以是保存有發(fā)起方實體對應(yīng)的資源的任意一個CSE,例如,該CSE是保存有發(fā)起方實體的注冊資源的注冊響應(yīng)CSE,該CSE的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖25所示,該CSE主要包括處理器2501、存儲器2502和收發(fā)機2503,其中,收發(fā)機2503用于在處理器2501的控制下接收和發(fā)送數(shù)據(jù),存儲器2502中保存有預(yù)設(shè)的程序,處理器2501讀取存儲器2502中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機接收角色令牌頒發(fā)實體發(fā)送的角色資源創(chuàng)建請求,所述角色資 源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,處理器根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源后,通過收發(fā)機向所述角色令牌頒發(fā)實體返回角色資源創(chuàng)建響應(yīng)。
較佳地,處理器通過收發(fā)機接收所述角色令牌頒發(fā)實體發(fā)送的角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;
根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源。
較佳地,處理器根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之后,通過收發(fā)機向所述角色令牌頒發(fā)實體返回角色資源修改響應(yīng)。
較佳地,處理器通過收發(fā)機接收所述發(fā)起方實體對所述角色資源的資源讀取請求;以及通過收發(fā)機向所述發(fā)起方實體返回資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色標(biāo)識和/或所述角色令牌。
較佳地,處理器根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源之前,根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體創(chuàng)建所述角色資源。
較佳地,處理器根據(jù)重新頒發(fā)的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌修改所述角色資源之前,根據(jù)所述發(fā)起方實體對應(yīng)的資源的訪問控制策略,確定允許所述角色令牌頒發(fā)實體修改所述角色資源。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種角色令牌頒發(fā)實體,該 角色頒發(fā)實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖26所示,該角色令牌頒發(fā)實體主要包括處理器2601、存儲器2602和收發(fā)機2603,其中,收發(fā)機2603用于在處理器2601的控制下接收和發(fā)送數(shù)據(jù),存儲器2602中保存有預(yù)設(shè)的程序,處理器2601讀取存儲器2602中保存的程序,按照該程序執(zhí)行以下過程:
生成角色資源創(chuàng)建請求,所述角色資源創(chuàng)建請求中攜帶頒發(fā)給發(fā)起方實體的角色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
通過收發(fā)機向公共服務(wù)實體CSE發(fā)送所述角色資源創(chuàng)建請求,由所述CSE根據(jù)所述角色標(biāo)識以及所述角色令牌在所述發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,所述角色資源為普通資源且存儲有所述角色標(biāo)識和所述角色令牌。
較佳地,處理器通過收發(fā)機接收所述CSE返回的角色資源創(chuàng)建響應(yīng)。
較佳地,處理器通過收發(fā)機將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給所述發(fā)起方實體,以及將創(chuàng)建的所述角色資源的地址信息的指示信息發(fā)送給策略決策點PDP實體和/或策略信息點PIP實體。
較佳地,處理器還生成角色資源修改請求,所述角色資源修改請求中攜帶重新頒發(fā)給所述發(fā)起方實體的角色標(biāo)識以及重新頒發(fā)的角色標(biāo)識對應(yīng)的角色令牌;通過收發(fā)機向所述CSE發(fā)送所述角色資源修改請求。
較佳地,處理器通過收發(fā)機接收所述CSE返回的角色資源修改響應(yīng)。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種發(fā)起方實體,該發(fā)起方實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖27所示,該發(fā)起方實體主要包括處理器2701、存儲器2702和收發(fā)機2703,其中,收發(fā)機2703用于在處理器2701的控制下接收和發(fā)送數(shù)據(jù),存儲器2702中保存有預(yù)設(shè)的程序,處理器2701讀取存儲器2702中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機向公共服務(wù)實體CSE發(fā)送對發(fā)起方實體對應(yīng)的資源下的角色資源的資源讀取請求,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角 色標(biāo)識以及所述角色標(biāo)識對應(yīng)的角色令牌;
通過收發(fā)機接收所述CSE返回的資源讀取響應(yīng),所述資源讀取響應(yīng)中攜帶所述角色資源中保存的所述角色令牌和/或所述角色標(biāo)識。
實施中,所述發(fā)起方實體為應(yīng)用實體或公共服務(wù)實體。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種PEP實體,該PEP實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖28所示,該PEP實體主要包括處理器2801、存儲器2802和收發(fā)機2803,其中,收發(fā)機2803用于在處理器2801的控制下接收和發(fā)送數(shù)據(jù),存儲器2802中保存有預(yù)設(shè)的程序,處理器2801讀取存儲器2802中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機獲取發(fā)起方實體發(fā)送的資源訪問請求,所述資源訪問請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
根據(jù)所述資源訪問請求生成訪問控制決策請求,所述訪問控制決策請求中攜帶所述發(fā)起方實體的角色標(biāo)識和/或角色令牌;
通過收發(fā)機將所述訪問控制決策請求發(fā)送給策略決策點PDP實體,由所述PDP實體根據(jù)訪問控制策略以及所述角色標(biāo)識和/或角色令牌確定決策結(jié)果;
通過收發(fā)機獲取所述PDP實體返回的訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果;
根據(jù)所述決策結(jié)果對所述發(fā)起方實體的資源訪問請求進行訪問控制。
實施中,PEP實體位于資源訪問請求所請求訪問的目標(biāo)資源所在的CSE中。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種PDP實體,該PDP實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖29所示,該PDP實體主要包括處理器2901、存儲器2902和收發(fā)機2903,其中,收發(fā)機2903用于在處理器2901的控制下接收和發(fā)送數(shù)據(jù),存儲器2902中保 存有預(yù)設(shè)的程序,處理器2901讀取存儲器2902中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得所述角色標(biāo)識對應(yīng)的角色令牌,根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
通過收發(fā)機向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,處理器通過收發(fā)機向公共服務(wù)實體CSE發(fā)送對所述發(fā)起方實體的角色資源的查詢請求,所述查詢請求中攜帶所述角色標(biāo)識,并通過收發(fā)機獲得所述CSE返回的查詢響應(yīng),所述查詢響應(yīng)中攜帶所述角色標(biāo)識對應(yīng)的角色令牌;
或者,
通過收發(fā)機向策略信息點PIP實體發(fā)送訪問控制屬性請求,所述訪問控制屬性請求中攜帶所述角色標(biāo)識,并通過收發(fā)機接收所述PIP實體返回的訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述PIP實體根據(jù)所述角色標(biāo)識查詢所述發(fā)起方實體對應(yīng)的角色資源獲得的所述角色標(biāo)識對應(yīng)的角色令牌。
較佳地,處理器若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
實施中,所述角色資源具有普通資源的通用屬性,還具有指定失效時間的公共屬性以及簽約子資源。
較佳地,所述角色資源具有角色標(biāo)識屬性、角色令牌頒發(fā)者標(biāo)識屬性、角色令牌有效起始時間屬性、角色令牌有效結(jié)束時間屬性以及令牌值屬性,所述角色標(biāo)識屬性用于保存角色標(biāo)識,所述角色令牌頒發(fā)者標(biāo)識屬性用于保存角色令牌頒發(fā)者標(biāo)識,所述角色令牌有效起始時間屬性用于保存角色令牌有效起始 時間,所述角色令牌有效結(jié)束時間屬性用于保存角色令牌有效結(jié)束時間,所述令牌值屬性用于保存所述角色令牌;
所述角色令牌存儲有角色令牌標(biāo)識、角色令牌所有者標(biāo)識、角色標(biāo)識、角色令牌頒發(fā)者標(biāo)識、角色令牌有效起始時間以及角色令牌有效結(jié)束時間。
較佳地,所述角色資源還具有角色類型屬性、角色名字屬性以及應(yīng)用類別屬性中的任意一種或多種,所述角色類型屬性用于保存角色類型,所述角色名字屬性用于保存角色可閱讀名字,所述應(yīng)用類別屬性用于保存角色所屬的應(yīng)用類別;
所述角色令牌中還存儲有角色類型、角色可閱讀名字以及角色所屬的應(yīng)用類別中的任意一種或多種。
較佳地,處理器若確定所述角色令牌的角色頒發(fā)者標(biāo)識屬于合法的令牌頒發(fā)機構(gòu),并且,根據(jù)所述角色令牌的有效起始時間以及所述角色令牌的有效結(jié)束時間確定所述角色令牌在有效期內(nèi)。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種PDP實體,該PDP實體的具體實施可參見上述方法實施例部分的描述,重復(fù)之處不再贅述,如圖30所示,該PDP實體主要包括處理器3001、存儲器3002和收發(fā)機3003,其中,收發(fā)機3003用于在處理器3001的控制下接收和發(fā)送數(shù)據(jù),存儲器3002中保存有預(yù)設(shè)的程序,處理器3001讀取存儲器3002中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機接收策略執(zhí)行點PEP實體發(fā)送的訪問控制決策請求,所述訪問控制決策請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色令牌;
根據(jù)所述角色令牌以及訪問控制策略確定決策結(jié)果;
通過收發(fā)機向所述PEP實體返回訪問控制決策應(yīng)答,所述訪問控制決策應(yīng)答中攜帶所述決策結(jié)果。
較佳地,處理器若確定所述角色令牌有效后,從所述角色令牌中提取角色信息,根據(jù)所述角色信息以及所述訪問控制策略確定決策結(jié)果。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種PIP實體,該PIP實體的具體實施可參見上述方法實施例部分的描述,如圖31所示,該PIP實體主要包括處理器3101、存儲器3102和收發(fā)機3103,其中,收發(fā)機3103用于在處理器3101的控制下接收和發(fā)送數(shù)據(jù),存儲器3102中保存有預(yù)設(shè)的程序,處理器3101讀取存儲器3102中保存的程序,按照該程序執(zhí)行以下過程:
通過收發(fā)機接收策略決策點PDP實體發(fā)送的訪問控制屬性請求,所述訪問控制屬性請求中攜帶發(fā)起資源訪問請求的發(fā)起方實體的角色標(biāo)識;
根據(jù)所述角色標(biāo)識向公共服務(wù)實體CSE查詢所述發(fā)起方實體對應(yīng)的角色資源中是否有所述角色標(biāo)識對應(yīng)的角色令牌,并獲得查詢結(jié)果,所述角色資源為普通資源且存儲有所述發(fā)起方實體的角色標(biāo)識和角色令牌;
通過收發(fā)機向所述PDP實體返回訪問控制屬性響應(yīng),所述訪問控制屬性響應(yīng)中攜帶所述查詢結(jié)果。
其中,圖25至圖31所對應(yīng)的實施例中,總線架構(gòu)可以包括任意數(shù)量的互聯(lián)的總線和橋,具體由處理器代表的一個或多個處理器和存儲器代表的存儲器的各種電路鏈接在一起??偩€架構(gòu)還可以將諸如外圍設(shè)備、穩(wěn)壓器和功率管理電路等之類的各種其他電路鏈接在一起,這些都是本領(lǐng)域所公知的,因此,本文不再對其進行進一步描述。總線接口提供接口。收發(fā)機可以是多個元件,即包括發(fā)送機和收發(fā)機,提供用于在傳輸介質(zhì)上與各種其他裝置通信的單元。處理器負責(zé)管理總線架構(gòu)和通常的處理,存儲器可以存儲處理器在執(zhí)行操作時所使用的數(shù)據(jù)。
基于上述技術(shù)方案,本發(fā)明實施例中,通過在發(fā)起方實體對應(yīng)的資源下創(chuàng)建角色資源,該角色資源為普通資源且用于保存角色標(biāo)識和該角色標(biāo)識對應(yīng)的角色令牌,從而能夠通過對該角色資源的操作獲取該角色令牌,基于獲取的角色令牌在oneM2M中實現(xiàn)基于角色的訪問控制。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié) 合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。