本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種訪問(wèn)令牌頒發(fā)方法及相關(guān)設(shè)備。
背景技術(shù):
物聯(lián)網(wǎng)標(biāo)準(zhǔn)化組織oneM2M致力于開發(fā)用于構(gòu)造一個(gè)公共的機(jī)器對(duì)機(jī)器通信(Machine-To-Machine,M2M)服務(wù)層(Service Layer)的技術(shù)規(guī)范。
oneM2M功能架構(gòu)如圖1所示,定義了三種基本實(shí)體:
一,應(yīng)用實(shí)體(Application Entity,AE),位于應(yīng)用層,該實(shí)體可實(shí)現(xiàn)一個(gè)M2M應(yīng)用服務(wù)邏輯。一個(gè)應(yīng)用服務(wù)邏輯既可以駐留在多個(gè)M2M節(jié)點(diǎn)中,也可以在單個(gè)節(jié)點(diǎn)中存在多個(gè)執(zhí)行實(shí)例。應(yīng)用服務(wù)邏輯的每個(gè)執(zhí)行實(shí)例被稱為一個(gè)應(yīng)用實(shí)體,每個(gè)應(yīng)用實(shí)體由唯一的AE身份標(biāo)識(shí)(AE-ID)標(biāo)識(shí)。
例如,車隊(duì)跟蹤應(yīng)用實(shí)例、遠(yuǎn)程血糖監(jiān)測(cè)應(yīng)用實(shí)例、遠(yuǎn)程電力計(jì)量實(shí)例或控制應(yīng)用實(shí)例等都屬于應(yīng)用實(shí)體。
二,公共服務(wù)實(shí)體(Common Services Entity,CSE),一個(gè)公共服務(wù)實(shí)體由一組M2M環(huán)境中的公共服務(wù)功能(common service functions)構(gòu)成。公共服務(wù)功能通過(guò)參考點(diǎn)Mca和參考點(diǎn)Mcc公開給其他實(shí)體。參考點(diǎn)Mcn用于訪問(wèn)底層網(wǎng)絡(luò)服務(wù)實(shí)體。每個(gè)公共服務(wù)實(shí)體由唯一的CSE-ID標(biāo)識(shí)。
三,底層網(wǎng)絡(luò)服務(wù)實(shí)體(Underlying Network Services Entity,NSE),一個(gè)底層網(wǎng)絡(luò)服務(wù)實(shí)體向多個(gè)CSE提供底層網(wǎng)絡(luò)服務(wù),例如提供設(shè)備管理、位置服務(wù)和設(shè)備觸發(fā)服務(wù)。
oneM2M通過(guò)對(duì)標(biāo)準(zhǔn)化的資源樹的操作實(shí)現(xiàn)服務(wù)層資源共享和交互。oneM2M資源樹存在于oneM2M系統(tǒng)定義的CSE中。
根據(jù)oneM2M TS-0001中關(guān)于功能架構(gòu)的定義,oneM2M資源樹的形式如 圖2所示。其中,CSEBase1表示一個(gè)CSE根資源<CSEBase>,CSE1表示一個(gè)資源<remoteCSE>,APP1表示一個(gè)資源<AE>,CONT1和CONT2分別代表一個(gè)資源<container>,ACP1和ACP2分別代表一個(gè)資源<accessControlPolice>。對(duì)于oneM2M資源可進(jìn)行創(chuàng)建(Create,簡(jiǎn)稱C)、查詢(Retrieve,簡(jiǎn)稱R)、修改(Update,簡(jiǎn)稱U)和刪除(Delete,簡(jiǎn)稱D)等操作。
oneM2M定義的資源中與授權(quán)相關(guān)的資源為訪問(wèn)控制策略資源<accessControlPolicy>,其中定義有訪問(wèn)控制策略(Access Control Policy,ACP),<accessControlPolicy>資源由資源身份標(biāo)識(shí)(ID)唯一標(biāo)識(shí)。其他資源通過(guò)資源中的accessControlPolicyIDs屬性指定適用的訪問(wèn)控制策略。
oneM2M系統(tǒng)中服務(wù)簽約信息存儲(chǔ)在<m2mServiceSubscriptionProfile>資源中,該資源的serviceRoles屬性保存有可簽約的服務(wù)角色I(xiàn)D(Service Role ID)列表,AE通過(guò)獲取可簽約的服務(wù)角色而獲得相應(yīng)的簽約服務(wù),也就是擁有管理<m2mServiceSubscriptionProfile>資源中<serviceSubscribedNode>子資源中所描述的M2M節(jié)點(diǎn)(M2M Node)的權(quán)限。
oneM2M定義有三種資源類型:
普通資源(Normal Resource),具有具體的資源結(jié)構(gòu)以及資源屬性;
虛擬資源(Virtual Resource),不具有具體的資源結(jié)構(gòu)以及資源屬性,主要用于觸發(fā)特定的處理過(guò)程;
公布資源(Announced Resource),具有具體的資源結(jié)構(gòu)及資源屬性,該資源為其他實(shí)體上普通資源中某些內(nèi)容的復(fù)制,主要目的是為資源發(fā)現(xiàn)提供便利。
目前,oneM2M系統(tǒng)中僅給出了服務(wù)簽約信息以及授權(quán)相關(guān)的資源,并沒有給出具體的授權(quán)機(jī)制。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種訪問(wèn)令牌頒發(fā)方法及相關(guān)設(shè)備,用以給出oneM2M 系統(tǒng)中具體的授權(quán)機(jī)制。
本發(fā)明實(shí)施例提供的具體技術(shù)方案如下:
第一方面,提供了一種訪問(wèn)令牌頒發(fā)方法,包括:
接收發(fā)起實(shí)體發(fā)送的對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶所述發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息;
根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息,在所述訪問(wèn)令牌根資源下創(chuàng)建生成的訪問(wèn)令牌的訪問(wèn)令牌資源,所述訪問(wèn)令牌資源中保存有所述訪問(wèn)令牌;
將所述訪問(wèn)令牌或者所述訪問(wèn)令牌資源的地址信息發(fā)送給所述發(fā)起實(shí)體;
其中,所述訪問(wèn)令牌根資源為公共服務(wù)實(shí)體CSE根資源下的普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
實(shí)施中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
實(shí)施中,接收發(fā)起實(shí)體發(fā)送的對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求之后,為所述發(fā)起實(shí)體生成訪問(wèn)令牌之前,所述方法還包括:
根據(jù)所述訪問(wèn)令牌根資源的指定訪問(wèn)控制策略的公共屬性,確定允許所述發(fā)起實(shí)體訪問(wèn)所述訪問(wèn)令牌根資源下的虛擬資源。
實(shí)施中,所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌之前,所述方法還包括:
從訪問(wèn)令牌授權(quán)策略實(shí)體獲取所述訪問(wèn)令牌授權(quán)策略。
實(shí)施中,所述訪問(wèn)令牌中還攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、所述發(fā)起實(shí)體的標(biāo)識(shí)和超期時(shí)間;
所述訪問(wèn)令牌的授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌,包括:
根據(jù)所述訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,生成訪問(wèn)令牌明文;
將生成的所述訪問(wèn)令牌明文發(fā)送給安全功能實(shí)體,由所述安全功能實(shí)體對(duì)所述訪問(wèn)令牌明文進(jìn)行數(shù)字簽名和/或加密后得到所述訪問(wèn)令牌并返回;
接收所述安全功能實(shí)體返回的所述訪問(wèn)令牌。
第二方面,提供了一種訪問(wèn)令牌頒發(fā)方法,包括:
向授權(quán)實(shí)體發(fā)送對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息;
接收所述授權(quán)實(shí)體返回的訪問(wèn)令牌,或者接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息,所述訪問(wèn)令牌資源中保存有訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息;
其中,所述訪問(wèn)令牌根資源為公共服務(wù)實(shí)體CSE根資源下普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
實(shí)施中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
實(shí)施中,所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息后,所述方法還包括:
根據(jù)所述地址信息獲取所述訪問(wèn)令牌。
實(shí)施中,所述訪問(wèn)令牌中還攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、請(qǐng)求并持有所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)和超期時(shí)間;
所述訪問(wèn)令牌的授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,所述方法還包括:
發(fā)送資源訪問(wèn)請(qǐng)求,所述資源訪問(wèn)請(qǐng)求中攜帶所述訪問(wèn)令牌。
第三方面,提供了一種授權(quán)實(shí)體,包括:
接收模塊,用于接收發(fā)起實(shí)體發(fā)送的對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶所述發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息;
處理模塊,用于根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息,在所述訪問(wèn)令牌根資源下創(chuàng)建生成的訪問(wèn)令牌的訪問(wèn)令牌資源,所述訪問(wèn)令牌資源中保存有所述訪問(wèn)令牌;
發(fā)送模塊,用于將所述訪問(wèn)令牌或者所述訪問(wèn)令牌資源的地址信息發(fā)送給所述發(fā)起實(shí)體;
其中,所述訪問(wèn)令牌根資源為公共服務(wù)實(shí)體CSE根資源下的普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資 源為所述訪問(wèn)令牌根資源下的普通資源。
實(shí)施中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
實(shí)施中,所述處理模塊還用于:
為所述發(fā)起實(shí)體生成訪問(wèn)令牌之前,根據(jù)所述訪問(wèn)令牌根資源的指定訪問(wèn)控制策略的公共屬性,確定允許所述發(fā)起實(shí)體訪問(wèn)所述訪問(wèn)令牌根資源下的虛擬資源。
實(shí)施中,所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,所述處理模塊還用于:從訪問(wèn)令牌授權(quán)策略實(shí)體獲取所述訪問(wèn)令牌授權(quán)策略。
實(shí)施中,所述訪問(wèn)令牌中還攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、所述發(fā)起實(shí)體的標(biāo)識(shí)和超期時(shí)間;
所述訪問(wèn)令牌的授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,所述處理模塊具體用于:
根據(jù)所述訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,生成訪問(wèn)令牌明文;
所述發(fā)送模塊還用于:
將生成的所述訪問(wèn)令牌明文發(fā)送給安全功能實(shí)體,由所述安全功能實(shí)體對(duì)所述訪問(wèn)令牌明文進(jìn)行數(shù)字簽名和/或加密后得到所述訪問(wèn)令牌并返回;
所述接收模塊還用于:
接收所述安全功能實(shí)體返回的所述訪問(wèn)令牌。
第四方面,提供了一種發(fā)起實(shí)體,包括:
發(fā)送模塊,用于向授權(quán)實(shí)體發(fā)送對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息;
接收模塊,用于接收所述授權(quán)實(shí)體返回的訪問(wèn)令牌,或者接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息,所述訪問(wèn)令牌資源中保存有訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息;
其中,所述訪問(wèn)令牌根資源為公共服務(wù)實(shí)體CSE根資源下普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
實(shí)施中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
實(shí)施中,所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,還包括獲取模塊用于:
在所述接收模塊接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息后,根據(jù)所述地址信息獲取所述訪問(wèn)令牌。
實(shí)施中,所述訪問(wèn)令牌中還攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、請(qǐng)求并持有所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)和超期時(shí)間;
所述訪問(wèn)令牌的授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,所述發(fā)送模塊還用于:
發(fā)送資源訪問(wèn)請(qǐng)求,所述資源訪問(wèn)請(qǐng)求中攜帶所述訪問(wèn)令牌。
基于上述技術(shù)方案,本發(fā)明實(shí)施例中,通過(guò)在CSE根資源下定義資源類型為普通資源的訪問(wèn)令牌根資源,在訪問(wèn)令牌根資源下定義資源類型為虛擬資源的訪問(wèn)令牌簽發(fā)資源,以及在訪問(wèn)令牌根資源下定義資源類型為普通資源的訪問(wèn)令牌資源,且定義對(duì)訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建操作觸發(fā)一個(gè)訪問(wèn)令牌頒發(fā)過(guò)程,從而使得接收到發(fā)起實(shí)體對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,觸發(fā)訪問(wèn)令牌頒發(fā)過(guò)程,根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌,并創(chuàng)建訪問(wèn)令牌資源,在oneM2M系統(tǒng)中實(shí)現(xiàn)了通過(guò)訪問(wèn)令牌進(jìn)行授權(quán)的機(jī)制。
附圖說(shuō)明
圖1為oneM2M功能架構(gòu)示意圖;
圖2為oneM2M資源樹的結(jié)構(gòu)示意圖;
圖3為本發(fā)明實(shí)施例中定義的三種資源的關(guān)系示意圖;
圖4為本發(fā)明實(shí)施例中<accessToken>資源的基本結(jié)構(gòu)示意圖;
圖5為本發(fā)明實(shí)施例中授權(quán)實(shí)體頒發(fā)訪問(wèn)令牌的過(guò)程示意圖;
圖6為本發(fā)明實(shí)施例中發(fā)起實(shí)體請(qǐng)求訪問(wèn)令牌的過(guò)程示意圖;
圖7為本發(fā)明實(shí)施例中托管實(shí)體使用訪問(wèn)令牌的過(guò)程示意圖;
圖8為本發(fā)明實(shí)施例中訪問(wèn)令牌頒發(fā)和使用的基本過(guò)程示意圖;
圖9為本發(fā)明實(shí)施例中訪問(wèn)令牌頒發(fā)以及使用的具體實(shí)施過(guò)程示意圖;
圖10為本發(fā)明實(shí)施例中訪問(wèn)令牌頒發(fā)以及使用的另一具體實(shí)施過(guò)程示意圖;
圖11為本發(fā)明實(shí)施例中授權(quán)實(shí)體的結(jié)構(gòu)示意圖;
圖12為本發(fā)明實(shí)施例中另一授權(quán)實(shí)體的結(jié)構(gòu)示意圖;
圖13為本發(fā)明實(shí)施例中發(fā)起實(shí)體的結(jié)構(gòu)示意圖;
圖14為本發(fā)明實(shí)施例中另一發(fā)起實(shí)體的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步地詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明實(shí)施例中,定義了三種oneM2M資源,以實(shí)現(xiàn)頒發(fā)授權(quán)訪問(wèn)令牌(Access Token)。
定義的三種oneM2M資源分別為:訪問(wèn)令牌根資源<accessTokens>、訪問(wèn)令牌簽發(fā)資源<accessTokenIssuing>和訪問(wèn)令牌資源<accessToken>,三者之間的關(guān)系如圖3所示。
其中,<accessTokens>資源定義為CSE根資源<CSEBase>下的子資源,資源類型為oneM2M普通資源,<CSEBase>資源下可以有0個(gè)或多個(gè)<accessTokens>資源。
<accessTokens>資源除擁有oneM2M普通資源所包含的通用屬性(Universal Attribute)外,還具有指定訪問(wèn)控制策略的公共屬性(Common Attribute):accessControlPolicyIDs,對(duì)<accessTokens>資源下的虛擬資源的訪問(wèn)控制由該公共屬性確定,即該公共屬性所指定的訪問(wèn)控制策略中定義了允許訪問(wèn)該<accessTokens>資源及其下的虛擬資源的AE實(shí)體和CSE實(shí)體。
其中,<accessTokenIssuing>資源為<accessTokens>資源下的子資源,一個(gè)<accessTokens>資源下有一個(gè)<accessTokenIssuing>資源。<accessTokenIssuing>資源的資源類型為oneM2M虛擬資源,因此沒有資源屬性,也沒有子資源。oneM2M虛擬資源主要用來(lái)觸發(fā)一個(gè)處理過(guò)程,一個(gè)針對(duì)<accessTokenIssuing>資源的創(chuàng)建請(qǐng)求(Create Request)將觸發(fā)一個(gè)訪問(wèn)令牌頒發(fā)過(guò)程。
<accessTokenIssuing>資源的訪問(wèn)控制由其父資源<accessTokens>的accessControlPolicyIDs屬性指定的訪問(wèn)控制策略確定,accessControlPolicyIDs 屬性規(guī)定了可以訪問(wèn)<accessTokenIssuing>資源的AE實(shí)體和CSE實(shí)體,即申請(qǐng)?jiān)L問(wèn)令牌。
其中,<accessToken>資源為<accessTokens>資源下的子資源,一個(gè)<accessTokens>資源下可以包含0個(gè)或多個(gè)<accessToken>資源。每個(gè)<accessToken>表示一個(gè)授權(quán)實(shí)體所頒發(fā)的訪問(wèn)令牌(Access Token),其資源類型為oneM2M普通資源(Normal Resource)。
<accessToken>的基本結(jié)構(gòu)如圖4所示,<accessToken>資源除了包含oneM2M普通資源所共有的通用屬性(Universal Attribute)外,還包含有公共屬性(Common Attribute):超期時(shí)間(expirationTime),還包括新定義的3個(gè)資源屬性。expirationTime指定該資源的有效期,其與訪問(wèn)令牌的有效期相同。3個(gè)新定義的資源屬性為:
issuer:訪問(wèn)令牌的簽發(fā)者,具體為生成該訪問(wèn)令牌的CSE標(biāo)識(shí)(CSE-ID)。
holder:訪問(wèn)令牌的持有者,具體為請(qǐng)求并持有該訪問(wèn)令牌的AE標(biāo)識(shí)(AE-ID)或CES標(biāo)識(shí)(CSE-ID)。
token:存儲(chǔ)所頒發(fā)的訪問(wèn)令牌。
本發(fā)明實(shí)施例中定義如下:
發(fā)起實(shí)體(Originator Entity):為oneM2M系統(tǒng)中訪問(wèn)令牌的擁有者,具體為oneM2M系統(tǒng)中需要對(duì)托管實(shí)體中的資源進(jìn)行訪問(wèn)的AE實(shí)體或CSE實(shí)體;
授權(quán)實(shí)體(Authority Entity):為oneM2M系統(tǒng)中訪問(wèn)令牌的頒發(fā)者,具體為oneM2M系統(tǒng)中具有訪問(wèn)令牌頒發(fā)能力的CSE實(shí)體;
托管實(shí)體(Hosting Entity):為oneM2M系統(tǒng)中訪問(wèn)令牌的使用者,具體為oneM2M系統(tǒng)中提供資源訪問(wèn)的CSE實(shí)體,其根據(jù)訪問(wèn)令牌中描述的訪問(wèn)權(quán)限為發(fā)起實(shí)體提供資源訪問(wèn)服務(wù);
訪問(wèn)令牌授權(quán)策略實(shí)體(Access Token Authorization Policy Entity):為授權(quán)實(shí)體提供訪問(wèn)令牌授權(quán)策略,該訪問(wèn)令牌授權(quán)策略用于確定寫入訪問(wèn)令牌的權(quán) 限;
安全功能實(shí)體(Security Function Entity):可對(duì)訪問(wèn)令牌明文進(jìn)行數(shù)字簽名和/或加密以生成訪問(wèn)令牌,或?qū)υL問(wèn)令牌進(jìn)行解密和/或驗(yàn)證數(shù)字簽名以獲得訪問(wèn)令牌明文。
本發(fā)明實(shí)施例中的訪問(wèn)令牌定義為:用于攜帶應(yīng)用于oneM2M環(huán)境中的授權(quán)信息,主要包括服務(wù)角色和/或訪問(wèn)控制策略。訪問(wèn)令牌中攜帶的服務(wù)角色用于基于角色的訪問(wèn)控制(Role Based Access Control,RBAC);還用于攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的CSE標(biāo)識(shí)(即簽發(fā)者標(biāo)識(shí))、請(qǐng)求并持有訪問(wèn)令牌的實(shí)體標(biāo)識(shí)(將持有者標(biāo)識(shí))和超期時(shí)間。
若訪問(wèn)令牌的授權(quán)信息中僅攜帶角色,托管實(shí)體利用訪問(wèn)令牌中攜帶的角色和托管實(shí)體本地存儲(chǔ)的基于角色的訪問(wèn)控制策略評(píng)估發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求,以確定是否同意發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求。
若訪問(wèn)令牌的授權(quán)信息中僅攜帶訪問(wèn)控制策略,該訪問(wèn)控制策略為訪問(wèn)令牌持有者的專用授權(quán)策略,托管實(shí)體使用訪問(wèn)令牌中攜帶的訪問(wèn)控制策略評(píng)估發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求,以確定是否同意該資源訪問(wèn)請(qǐng)求。
若訪問(wèn)令牌的授權(quán)信息中攜帶角色和訪問(wèn)控制策略,托管實(shí)體利用訪問(wèn)令牌中攜帶的角色和訪問(wèn)控制策略評(píng)估發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求,以確定是否同意發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求。
需要說(shuō)明的是,訪問(wèn)令牌的具體格式不是本發(fā)明所關(guān)注的內(nèi)容,授權(quán)實(shí)體、發(fā)起實(shí)體和托管實(shí)體之間約定訪問(wèn)令牌的格式即可正確使用訪問(wèn)令牌,本發(fā)明的保護(hù)范圍并不受訪問(wèn)令牌具體格式的限制。
基于以上定義,本發(fā)明實(shí)施例中,如圖5所示,授權(quán)實(shí)體頒發(fā)訪問(wèn)令牌的詳細(xì)方法流程如下:
步驟501:接收發(fā)起實(shí)體發(fā)送的對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶所述發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息。
其中,所述訪問(wèn)令牌根資源為CSE根資源下的普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源。
實(shí)施中,由于訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體,因此授權(quán)實(shí)體在接收發(fā)起實(shí)體向訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源發(fā)送的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求之后,為發(fā)起實(shí)體生成訪問(wèn)令牌之前,根據(jù)所述訪問(wèn)令牌根資源的指定訪問(wèn)控制策略的公共屬性,確定允許所述發(fā)起實(shí)體訪問(wèn)所述訪問(wèn)令牌根資源下的虛擬資源。
對(duì)訪問(wèn)令牌簽發(fā)資源的資源創(chuàng)建操作,將觸發(fā)一個(gè)訪問(wèn)令牌頒發(fā)過(guò)程。
步驟502:根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息,在所述訪問(wèn)令牌根資源下創(chuàng)建生成的訪問(wèn)令牌的訪問(wèn)令牌資源,所述訪問(wèn)令牌資源中保存有所述訪問(wèn)令牌。
其中,訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,即授權(quán)實(shí)體的標(biāo)識(shí),所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,即發(fā)起實(shí)體的標(biāo)識(shí),所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
授權(quán)實(shí)體生成的訪問(wèn)令牌以及令牌屬性存儲(chǔ)的訪問(wèn)令牌除包含授權(quán)信息外,還包括認(rèn)證信息。其中,認(rèn)證信息包括生成所述訪問(wèn)令牌的授權(quán)實(shí)體的標(biāo)識(shí)(即簽發(fā)者標(biāo)識(shí))、請(qǐng)求并持有訪問(wèn)令牌的發(fā)起實(shí)體的標(biāo)識(shí)(將持有者標(biāo)識(shí))和超期時(shí)間,超期時(shí)間定義了訪問(wèn)令牌的有效期。其中,授權(quán)信息包括發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
優(yōu)選地,訪問(wèn)令牌授權(quán)策略保存在訪問(wèn)令牌授權(quán)策略實(shí)體;授權(quán)實(shí)體根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌之前, 從訪問(wèn)令牌授權(quán)策略實(shí)體獲取所述訪問(wèn)令牌授權(quán)策略。
一個(gè)具體實(shí)施中,訪問(wèn)令牌授權(quán)策略實(shí)體中保存訪問(wèn)令牌授權(quán)策略與發(fā)起實(shí)體以及授權(quán)實(shí)體的對(duì)應(yīng)關(guān)系,例如,訪問(wèn)令牌授權(quán)策略實(shí)體中包含各授權(quán)實(shí)體資源樹,分別對(duì)應(yīng)不同的授權(quán)實(shí)體,授權(quán)實(shí)體資源數(shù)下包含不同的發(fā)起實(shí)體的訪問(wèn)令牌授權(quán)策略資源。
其中,權(quán)限描述信息用于描述發(fā)起實(shí)體請(qǐng)求的權(quán)限,該權(quán)限可以是請(qǐng)求的服務(wù)角色,或者是請(qǐng)求的訪問(wèn)控制策略,也可以是服務(wù)角色和訪問(wèn)控制策略。
實(shí)施中,授權(quán)信息中頒發(fā)給發(fā)起實(shí)體的服務(wù)角色為:授權(quán)描述信息中請(qǐng)求的服務(wù)角色且訪問(wèn)令牌授權(quán)策略允許頒發(fā)給發(fā)起實(shí)體的服務(wù)角色。授權(quán)信息中頒發(fā)給發(fā)起實(shí)體的訪問(wèn)控制策略為:授權(quán)描述信息中所請(qǐng)求的權(quán)限且訪問(wèn)令牌授權(quán)策略允許發(fā)起實(shí)體使用的權(quán)限所對(duì)應(yīng)的訪問(wèn)控制策略。
需要說(shuō)明的是,訪問(wèn)令牌授權(quán)策略用于確定是否為發(fā)起實(shí)體頒發(fā)訪問(wèn)令牌,以及確定寫入訪問(wèn)令牌的權(quán)限,即頒發(fā)給訪問(wèn)令牌的發(fā)起和持有者的權(quán)限,具體的策略根據(jù)具體應(yīng)用進(jìn)行設(shè)計(jì),本領(lǐng)域技術(shù)人員可以將已有的授權(quán)策略結(jié)合應(yīng)用于本發(fā)明,該部分內(nèi)容不是本發(fā)明關(guān)注的內(nèi)容,本發(fā)明的保護(hù)范圍不以此為限制。
實(shí)施中,授權(quán)實(shí)體若根據(jù)訪問(wèn)令牌授權(quán)策略和權(quán)限描述信息,確定不允許為發(fā)起實(shí)體頒發(fā)訪問(wèn)令牌,不再執(zhí)行步驟503,向發(fā)起實(shí)體返回錯(cuò)誤信息。
步驟503:將所述訪問(wèn)令牌或者所述訪問(wèn)令牌資源的地址信息發(fā)送給所述發(fā)起實(shí)體。
其中,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
一個(gè)可選地實(shí)施方式中,授權(quán)實(shí)體根據(jù)訪問(wèn)令牌授權(quán)策略和權(quán)限描述信息生成訪問(wèn)令牌明文,將生成的訪問(wèn)令牌明文發(fā)送給安全功能實(shí)體,由所述安全功能實(shí)體對(duì)所述訪問(wèn)令牌進(jìn)行數(shù)字簽名和/或加密后得到訪問(wèn)令牌并返回;授權(quán)實(shí)體接收所述安全功能實(shí)體返回的訪問(wèn)令牌,并將訪問(wèn)令牌發(fā)送給發(fā)起實(shí)體。
需要說(shuō)明的是,安全功能實(shí)體具體采用的數(shù)字簽名算法和加密算法不受限 制,已有的數(shù)字簽名算法和加密算法均可用于本發(fā)明,具體的數(shù)字簽名算法和加密算法不受限制,本發(fā)明的保護(hù)范圍不受此限制。
基于以上定義,本發(fā)明實(shí)施例中,如圖6所示,發(fā)起實(shí)體請(qǐng)求訪問(wèn)令牌的詳細(xì)方法流程如下:
步驟601:向授權(quán)實(shí)體發(fā)送對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息。
其中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
其中,權(quán)限描述信息用于描述發(fā)起實(shí)體請(qǐng)求的權(quán)限,該權(quán)限可以是請(qǐng)求的服務(wù)角色,或者是請(qǐng)求的訪問(wèn)控制策略,也可以是服務(wù)角色和訪問(wèn)控制策略。
步驟602:接收所述授權(quán)實(shí)體返回的訪問(wèn)令牌,或者接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息,所述訪問(wèn)令牌資源中保存有訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息。
其中,所述訪問(wèn)令牌根資源為CSE根資源下的普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,若發(fā)起實(shí)體接收授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息后,根據(jù)所述地址信息獲取所述訪問(wèn)令牌。
其中,訪問(wèn)令牌中除攜帶授權(quán)信息之外還攜帶認(rèn)證信息,認(rèn)證信息包括生 成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、請(qǐng)求并持有所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)和超期時(shí)間,授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,授權(quán)信息中頒發(fā)給發(fā)起實(shí)體的服務(wù)角色為:授權(quán)描述信息中請(qǐng)求的服務(wù)角色且訪問(wèn)令牌授權(quán)策略允許頒發(fā)給發(fā)起實(shí)體的服務(wù)角色。授權(quán)信息中頒發(fā)給發(fā)起實(shí)體的訪問(wèn)控制策略為:授權(quán)描述信息中所請(qǐng)求的權(quán)限且訪問(wèn)令牌授權(quán)策略允許發(fā)起實(shí)體使用的權(quán)限所對(duì)應(yīng)的訪問(wèn)控制策略。
實(shí)施中,發(fā)起實(shí)體在獲得訪問(wèn)令牌后,向授權(quán)實(shí)體發(fā)送資源訪問(wèn)請(qǐng)求,該資源訪問(wèn)請(qǐng)求中攜帶訪問(wèn)令牌。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例中,如圖7所示,托管實(shí)體使用訪問(wèn)令牌的詳細(xì)方法流程如下:
步驟701:接收發(fā)起實(shí)體發(fā)送的資源訪問(wèn)請(qǐng)求,所述資源訪問(wèn)請(qǐng)求中攜帶訪問(wèn)令牌。
其中,訪問(wèn)令牌中至少攜帶授權(quán)信息,授權(quán)信息包括發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,訪問(wèn)令牌中除攜帶授權(quán)信息之外還攜帶認(rèn)證信息,認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、請(qǐng)求并持有所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)和超期時(shí)間。
實(shí)施中,托管實(shí)體獲取資源訪問(wèn)請(qǐng)求中的訪問(wèn)令牌后,判斷該訪問(wèn)令牌是否有效,具體如下:
若確定所述訪問(wèn)令牌中攜帶的生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)與預(yù)設(shè)的CSE標(biāo)識(shí)相同,和/或,所述訪問(wèn)令牌中攜帶的請(qǐng)求并持有所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)與發(fā)起實(shí)體的標(biāo)識(shí)相同,和/或,訪問(wèn)令牌的使用時(shí)間未超過(guò)訪問(wèn)令牌中攜帶的超期時(shí)間,則確定該訪問(wèn)令牌有效;
否則,確定訪問(wèn)令牌無(wú)效。
實(shí)施中,托管實(shí)體若確定訪問(wèn)令牌無(wú)效,不再執(zhí)行步驟702,向發(fā)起實(shí)體返回錯(cuò)誤信息。
步驟702:根據(jù)所述訪問(wèn)令牌中的授權(quán)信息,確定所述發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求在授權(quán)范圍內(nèi),執(zhí)行所述發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求。
實(shí)施中,若所述授權(quán)信息中僅包括服務(wù)角色,根據(jù)所述訪問(wèn)令牌中的服務(wù)角色,獲取本地保存的基于所述服務(wù)角色的訪問(wèn)控制策略,根據(jù)所述基于所述服務(wù)角色的訪問(wèn)控制策略確定所述發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求在授權(quán)范圍內(nèi);
若所述授權(quán)信息中僅包括訪問(wèn)控制策略,根據(jù)所述訪問(wèn)令牌中的訪問(wèn)控制策略確定所述發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求在授權(quán)范圍內(nèi);
若所述授權(quán)信息中包括服務(wù)角色和訪問(wèn)控制策略,根據(jù)所述訪問(wèn)令牌中的服務(wù)角色和訪問(wèn)控制策略確定所述發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求在授權(quán)范圍內(nèi)。
一個(gè)可選地實(shí)施方式中,托管實(shí)體在獲得資源訪問(wèn)請(qǐng)求中的訪問(wèn)令牌后,將該訪問(wèn)令牌發(fā)送給安全認(rèn)證實(shí)體,由該安全認(rèn)證實(shí)體對(duì)該訪問(wèn)令牌進(jìn)行解密和/或數(shù)字簽名驗(yàn)證獲得訪問(wèn)令牌明文并返回;托管實(shí)體接收安全認(rèn)證實(shí)體返回的訪問(wèn)令牌明文,獲得訪問(wèn)令牌明文中的授權(quán)信息,根據(jù)獲得的授權(quán)信息,判斷所述發(fā)起實(shí)體的資源訪問(wèn)請(qǐng)求是否在授權(quán)范圍內(nèi)。
以上實(shí)施例中,授權(quán)實(shí)體和托管實(shí)體可以部署在同一個(gè)實(shí)體設(shè)備中,也可以部署在不同的實(shí)體設(shè)備中。
以上實(shí)施例中,發(fā)起實(shí)體和授權(quán)實(shí)體之間通信之前,發(fā)起實(shí)體和托管實(shí)體之間通信之前,分別采用oneM2M提供的方法通過(guò)雙向認(rèn)證建立安全關(guān)聯(lián),以確保相互通信的兩個(gè)實(shí)體之間通信的完整性和機(jī)密性,具體的通過(guò)雙向認(rèn)證建立安全關(guān)聯(lián)的方式參見oneM2M的規(guī)定,此處不再詳述。
以上實(shí)施例中所涉及的訪問(wèn)令牌頒發(fā)和使用的基本過(guò)程可參見圖8所示,具體過(guò)程可參見以上實(shí)施例的描述,此處不再重復(fù)。
以下通過(guò)兩個(gè)具體實(shí)施例對(duì)本發(fā)明所提供的訪問(wèn)令牌頒發(fā)以及使用過(guò)程進(jìn)行舉例說(shuō)明。
第一具體實(shí)施例,作為授權(quán)實(shí)體的oneM2M基礎(chǔ)設(shè)施節(jié)點(diǎn)(IN-CSE)向發(fā)起實(shí)體(AE-1)頒發(fā)包含有服務(wù)角色(Service Role)的訪問(wèn)令牌;發(fā)起實(shí)體 (AE-1)利用該訪問(wèn)令牌訪問(wèn)托管實(shí)體(CSE-1)中的設(shè)備管理資源;CSE-1所在的節(jié)點(diǎn)為Node-1。
該具體實(shí)施例中假設(shè):IN-CSE可訪問(wèn)的安全功能實(shí)體和CSE-1可訪問(wèn)的安全功能實(shí)體擁有用于訪問(wèn)令牌加密和解密的對(duì)稱密鑰Ks;IN-CSE可訪問(wèn)的安全功能實(shí)體擁有用于對(duì)訪問(wèn)令牌明文進(jìn)行簽名的私鑰Kprv;CSE-1可訪問(wèn)的安全功能實(shí)體擁有用于驗(yàn)證IN-CSE數(shù)字簽名的公鑰證書INcert,其中包含有與Kprv匹配的公鑰Kpub。
并且,假設(shè)oneM2M應(yīng)用服務(wù)提供商的應(yīng)用實(shí)體AE-1注冊(cè)至oneM2M服務(wù)提供商的基礎(chǔ)設(shè)施節(jié)點(diǎn)IN-CSE上。在IN-CSE資源樹的根資源<CSEBase>下創(chuàng)建有負(fù)責(zé)頒發(fā)訪問(wèn)令牌的<accessTokens-1>資源;在IN-CSE資源樹中定義有<m2mServiceSubscriptionProfile>,<serviceSubscribedNode>和<serviceSubscribedAppRule>等資源,其中描述了該應(yīng)用服務(wù)提供商的應(yīng)用實(shí)體所能擁有的角色和管理的M2M節(jié)點(diǎn)(M2M Node)
如圖9所示,訪問(wèn)令牌頒發(fā)以及使用的過(guò)程具體如下:
步驟901:AE-1與IN-CSE通過(guò)雙向認(rèn)證建立安全關(guān)聯(lián);
步驟902:AE-1向IN-CSE發(fā)送對(duì)IN-CSE資源樹下的<accessTokens-1>資源的子資源<accessTokenIssuing>的<accessToken>資源創(chuàng)建請(qǐng)求,該請(qǐng)求要求對(duì)CSE-1所在的節(jié)點(diǎn)Node-1執(zhí)行設(shè)備診斷功能,也即AE-1想要獲取包含有“設(shè)備診斷和管理(Device Diagnostics and Management)”角色的訪問(wèn)令牌;
步驟903:IN-CSE接收到AE-1的請(qǐng)求后,該請(qǐng)求所激活的訪問(wèn)令牌創(chuàng)建過(guò)程將做如下操作:
1、檢查與<accessTokenIssuing>資源相關(guān)聯(lián)的訪問(wèn)控制策略,確定AE-1是否擁有創(chuàng)建<accessToken>資源的權(quán)限,若允許則繼續(xù)進(jìn)行下一步的操作;
2、從作為訪問(wèn)令牌授權(quán)策略實(shí)體的IN-CSE資源樹中獲取所需的訪問(wèn)令牌授權(quán)策略,也即與AE-1相關(guān)的<m2mServiceSubscriptionProfile>,<serviceSubscribedNode>和<serviceSubscribedAppRule>等資源;
3、檢查屬于該應(yīng)用服務(wù)提供商的<m2mServiceSubscriptionProfile>資源中的serviceRoles屬性以確定是否擁有所請(qǐng)求的“設(shè)備診斷和管理(Device Diagnostics and Management)”角色,若有則繼續(xù)進(jìn)行下一步的操作;
4、檢查<m2mServiceSubscriptionProfile>資源下的<serviceSubscribedNode>子資源,以確定該應(yīng)用服務(wù)商是否擁有對(duì)節(jié)點(diǎn)Node-1的管理權(quán)限,也即是否某個(gè)<serviceSubscribedNode>子資源的node-ID屬性的值為Node-1,若有則繼續(xù)進(jìn)行下一步的操作;
5、檢查上一步匹配的<serviceSubscribedNode>資源下的ruleLinks屬性所指定的<serviceSubscribedAppRule>資源,以確定該AE-1可以注冊(cè)至節(jié)點(diǎn)Node-1,也即AE-1是否在該<serviceSubscribedAppRule>資源allowedAEs屬性的AE列表中,若有則繼續(xù)進(jìn)行下一步的操作;
6、生成一個(gè)訪問(wèn)令牌明文,其中包含有“設(shè)備診斷和管理(Device Diagnostics and Management)”角色,并設(shè)定了訪問(wèn)令牌的有效期;
7、要求安全功能實(shí)體利用私鑰Kprv對(duì)訪問(wèn)令牌明文進(jìn)行數(shù)字簽名,然后利用對(duì)稱密鑰Ks對(duì)訪問(wèn)令牌明文和簽名結(jié)果進(jìn)行加密,從而生成訪問(wèn)令牌AE-Token-1。
步驟904:IN-CSE將生成的訪問(wèn)令牌AE-Token-1發(fā)送給AE-1;
步驟905:AE-1與CSE-1通過(guò)雙向認(rèn)證建立安全關(guān)聯(lián);
步驟906:AE-1向Node-1所包含的CSE-1發(fā)送設(shè)備診斷請(qǐng)求,該請(qǐng)求中包含有訪問(wèn)令牌AE-Token-1;
步驟907:CSE-1接收到來(lái)自AE-1的設(shè)備診斷請(qǐng)求,并從設(shè)備診斷請(qǐng)求中提取出訪問(wèn)令牌AE-Token-1,然后做如下操作:
1、要求安全功能實(shí)體利用Ks對(duì)訪問(wèn)令牌進(jìn)行解密,然后利用INcert中的公鑰Kpub驗(yàn)證訪問(wèn)令牌的數(shù)字簽名,若正確則繼續(xù)進(jìn)行下一步的操作;
2、檢查訪問(wèn)令牌中的有效期,以確定令牌是否已經(jīng)失效,若有效則繼續(xù)進(jìn)行下一步的操作;
3、提取出令牌中包含的角色,并利用基于角色的訪問(wèn)控制策略評(píng)估是否同意AE-1的設(shè)備診斷請(qǐng)求,若同意則繼續(xù)進(jìn)行下一步的操作;
4、執(zhí)行AE-1所要求的設(shè)備診斷功能。
步驟908:CSE-1將執(zhí)行結(jié)果返回給AE-1。
第二具體實(shí)施例中,如圖10所示,該具體實(shí)施例中授權(quán)實(shí)體與托管實(shí)體為同一個(gè)實(shí)體,即為CSE-1,該具體實(shí)施例中訪問(wèn)令牌頒發(fā)與使用過(guò)程與第一具體實(shí)施例的過(guò)程類似,不同之處在于:
因?yàn)槭跈?quán)實(shí)體與托管實(shí)體為同一實(shí)體,安全功能實(shí)體中保護(hù)訪問(wèn)令牌的安全機(jī)制可以采用單純的對(duì)稱密鑰機(jī)制,也即利用對(duì)稱密鑰實(shí)現(xiàn)訪問(wèn)令牌的完整性和機(jī)密性保護(hù)。
并且,由于CSE-1的類型不是IN-CSE,即基礎(chǔ)設(shè)施節(jié)點(diǎn),也不是基礎(chǔ)設(shè)施節(jié)點(diǎn)信任和授權(quán)的節(jié)點(diǎn),所以CSE-1不能頒發(fā)包含有服務(wù)角色(Service Role)的訪問(wèn)令牌。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例中提供了一種授權(quán)實(shí)體,該授權(quán)實(shí)體的具體實(shí)施可參見上述方法部分的描述,重復(fù)之處不再贅述,如圖11所示,該授權(quán)實(shí)體主要包括:
接收模塊1101,用于接收發(fā)起實(shí)體發(fā)送的對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶所述發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息;
處理模塊1102,用于根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息,在所述訪問(wèn)令牌根資源下創(chuàng)建生成的訪問(wèn)令牌的訪問(wèn)令牌資源,所述訪問(wèn)令牌資源中保存有所述訪問(wèn)令牌;
發(fā)送模塊1103,用于將所述訪問(wèn)令牌或者所述訪問(wèn)令牌資源的地址信息發(fā)送給所述發(fā)起實(shí)體。
其中,所述訪問(wèn)令牌根資源為CSE根資源下的普通資源,所述訪問(wèn)令牌 簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
實(shí)施中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
實(shí)施中,所述處理模塊1102還用于:
為所述發(fā)起實(shí)體生成訪問(wèn)令牌之前,根據(jù)所述訪問(wèn)令牌根資源的指定訪問(wèn)控制策略的公共屬性,確定允許所述發(fā)起實(shí)體訪問(wèn)所述訪問(wèn)令牌根資源下的虛擬資源。
實(shí)施中,所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,處理模塊1102還用于:從訪問(wèn)令牌授權(quán)策略實(shí)體獲取所述訪問(wèn)令牌授權(quán)策略。
實(shí)施中,所述訪問(wèn)令牌中還攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、所述發(fā)起實(shí)體的標(biāo)識(shí)和超期時(shí)間;
所述訪問(wèn)令牌的授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,所述處理模塊1102具體用于:
根據(jù)所述訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,生成訪問(wèn)令牌明文;
發(fā)送模塊1103還用于:
將生成的所述訪問(wèn)令牌明文發(fā)送給安全功能實(shí)體,由所述安全功能實(shí)體對(duì)所述訪問(wèn)令牌明文進(jìn)行數(shù)字簽名和/或加密后得到所述訪問(wèn)令牌并返回;
接收模塊1101還用于:
接收所述安全功能實(shí)體返回的所述訪問(wèn)令牌。
實(shí)施中,授權(quán)實(shí)體為CSE實(shí)體。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例中提供了一種授權(quán)實(shí)體,該授權(quán)實(shí)體的具體實(shí)施可參見上述方法部分的描述,重復(fù)之處不再贅述,如圖12所示,該授權(quán)實(shí)體主要包括處理器1201、存儲(chǔ)器1202和收發(fā)機(jī)1203,收發(fā)機(jī)1203用于在處理器1201的控制下接收和發(fā)送數(shù)據(jù),存儲(chǔ)器1202中保存預(yù)設(shè)的程序,處理器1201用于讀取存儲(chǔ)器中保存的程序,按照該程序執(zhí)行以下過(guò)程:
通過(guò)收發(fā)機(jī)1203接收發(fā)起實(shí)體發(fā)送的對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶所述發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息;
根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息,在所述訪問(wèn)令牌根資源下創(chuàng)建生成的訪問(wèn)令牌的訪問(wèn)令牌資源,所述訪問(wèn)令牌資源中保存有所述訪問(wèn)令牌;
通過(guò)收發(fā)機(jī)1203將所述訪問(wèn)令牌或者所述訪問(wèn)令牌資源的地址信息發(fā)送給所述發(fā)起實(shí)體。
其中,所述訪問(wèn)令牌根資源為CSE根資源下的普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
實(shí)施中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
實(shí)施中,處理器1201為所述發(fā)起實(shí)體生成訪問(wèn)令牌之前,根據(jù)所述訪問(wèn)令牌根資源的指定訪問(wèn)控制策略的公共屬性,確定允許所述發(fā)起實(shí)體訪問(wèn)所述訪問(wèn)令牌根資源下的虛擬資源。
實(shí)施中,所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令 牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,處理器1201從訪問(wèn)令牌授權(quán)策略實(shí)體獲取所述訪問(wèn)令牌授權(quán)策略。
實(shí)施中,所述訪問(wèn)令牌中還攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、所述發(fā)起實(shí)體的標(biāo)識(shí)和超期時(shí)間;
所述訪問(wèn)令牌的授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,處理器1201根據(jù)所述訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,生成訪問(wèn)令牌明文;通過(guò)收發(fā)機(jī)1203將生成的所述訪問(wèn)令牌明文發(fā)送給安全功能實(shí)體,由所述安全功能實(shí)體對(duì)所述訪問(wèn)令牌明文進(jìn)行數(shù)字簽名和/或加密后得到所述訪問(wèn)令牌并返回;通過(guò)收發(fā)機(jī)1203接收所述安全功能實(shí)體返回的所述訪問(wèn)令牌。
實(shí)施中,授權(quán)實(shí)體為CSE實(shí)體。
其中,總線架構(gòu)可以包括任意數(shù)量的互聯(lián)的總線和橋,具體由處理器代表的一個(gè)或多個(gè)處理器和存儲(chǔ)器代表的存儲(chǔ)器的各種電路鏈接在一起??偩€架構(gòu)還可以將諸如外圍設(shè)備、穩(wěn)壓器和功率管理電路等之類的各種其他電路鏈接在一起,這些都是本領(lǐng)域所公知的,因此,本文不再對(duì)其進(jìn)行進(jìn)一步描述??偩€接口提供接口。收發(fā)機(jī)可以是多個(gè)元件,即包括發(fā)送機(jī)和收發(fā)機(jī),提供用于在傳輸介質(zhì)上與各種其他裝置通信的單元。處理器負(fù)責(zé)管理總線架構(gòu)和通常的處理,存儲(chǔ)器可以存儲(chǔ)處理器在執(zhí)行操作時(shí)所使用的數(shù)據(jù)。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例提供了一種發(fā)起實(shí)體,該發(fā)起實(shí)體的具體實(shí)施可參見上述方法部分的描述,如圖13所示,該發(fā)起實(shí)體主要包括:
發(fā)送模塊1301,用于向授權(quán)實(shí)體發(fā)送對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶發(fā)起實(shí)體的 標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息;
接收模塊1302,用于接收所述授權(quán)實(shí)體返回的訪問(wèn)令牌,或者接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息,所述訪問(wèn)令牌資源中保存有訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息;
其中,所述訪問(wèn)令牌根資源為公共服務(wù)實(shí)體CSE根資源下普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
其中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
其中,所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,還包括獲取模塊1303用于:
在所述接收模塊1302接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息后,根據(jù)所述地址信息獲取所述訪問(wèn)令牌。
其中,所述訪問(wèn)令牌中還攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、請(qǐng)求并持有所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)和超期時(shí)間;
所述訪問(wèn)令牌的授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,所述發(fā)送模塊1301還用于:
發(fā)送資源訪問(wèn)請(qǐng)求,所述資源訪問(wèn)請(qǐng)求中攜帶所述訪問(wèn)令牌。
實(shí)施中,發(fā)起實(shí)體為AE實(shí)體或CSE實(shí)體。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供了另一發(fā)起實(shí)體,該發(fā)起實(shí)體的 具體實(shí)施可參見上述方法部分的描述,重復(fù)之處不再贅述,如圖14所示,該發(fā)起實(shí)體主要包括處理器1401、存儲(chǔ)器1402和收發(fā)機(jī)1403,收發(fā)機(jī)1403用于在處理器1401的控制下接收和發(fā)送數(shù)據(jù),存儲(chǔ)器1402中保存預(yù)設(shè)的程序,處理器1401用于讀取存儲(chǔ)器中保存的程序,按照該程序執(zhí)行以下過(guò)程:
指示收發(fā)機(jī)1403向授權(quán)實(shí)體發(fā)送對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,所述訪問(wèn)令牌資源創(chuàng)建請(qǐng)求中攜帶發(fā)起實(shí)體的標(biāo)識(shí)和請(qǐng)求的訪問(wèn)令牌的權(quán)限描述信息;
通過(guò)收發(fā)機(jī)1403接收所述授權(quán)實(shí)體返回的訪問(wèn)令牌,或者接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息,所述訪問(wèn)令牌資源中保存有訪問(wèn)令牌,所述訪問(wèn)令牌中至少攜帶授權(quán)信息;
其中,所述訪問(wèn)令牌根資源為公共服務(wù)實(shí)體CSE根資源下普通資源,所述訪問(wèn)令牌簽發(fā)資源為所述訪問(wèn)令牌根資源下的虛擬資源,所述訪問(wèn)令牌資源為所述訪問(wèn)令牌根資源下的普通資源。
其中,所述訪問(wèn)令牌根資源具有普通資源的通用屬性以及指定訪問(wèn)控制策略的公共屬性,所述公共屬性所指定的訪問(wèn)控制策略指示允許訪問(wèn)所述訪問(wèn)令牌根資源及所述訪問(wèn)令牌根資源下的虛擬資源的實(shí)體。
其中,所述訪問(wèn)令牌資源具有普通資源的通用屬性以及超期時(shí)間屬性、簽發(fā)者屬性、持有者屬性和令牌屬性,所述超期時(shí)間屬性用于指定所述訪問(wèn)令牌資源的有效期,所述簽發(fā)者屬性用于指示生成所述訪問(wèn)令牌的實(shí)體,所述持有者屬性用于指示請(qǐng)求并獲得所述訪問(wèn)令牌的實(shí)體,所述令牌屬性用于存儲(chǔ)所述訪問(wèn)令牌。
實(shí)施中,處理器1401在通過(guò)收發(fā)機(jī)1403接收所述授權(quán)實(shí)體在所述訪問(wèn)令牌根資源下創(chuàng)建的訪問(wèn)令牌資源的地址信息后,根據(jù)所述地址信息獲取所述訪問(wèn)令牌。
其中,所述訪問(wèn)令牌中還攜帶認(rèn)證信息,所述認(rèn)證信息包括生成所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)、請(qǐng)求并持有所述訪問(wèn)令牌的實(shí)體標(biāo)識(shí)和超期時(shí)間;
所述訪問(wèn)令牌的授權(quán)信息包括所述發(fā)起實(shí)體的服務(wù)角色和/或訪問(wèn)控制策略。
實(shí)施中,處理器1401指示收發(fā)機(jī)1403發(fā)送資源訪問(wèn)請(qǐng)求,所述資源訪問(wèn)請(qǐng)求中攜帶所述訪問(wèn)令牌。
實(shí)施中,發(fā)起實(shí)體為AE實(shí)體或CSE實(shí)體。
其中,總線架構(gòu)可以包括任意數(shù)量的互聯(lián)的總線和橋,具體由處理器代表的一個(gè)或多個(gè)處理器和存儲(chǔ)器代表的存儲(chǔ)器的各種電路鏈接在一起??偩€架構(gòu)還可以將諸如外圍設(shè)備、穩(wěn)壓器和功率管理電路等之類的各種其他電路鏈接在一起,這些都是本領(lǐng)域所公知的,因此,本文不再對(duì)其進(jìn)行進(jìn)一步描述??偩€接口提供接口。收發(fā)機(jī)可以是多個(gè)元件,即包括發(fā)送機(jī)和收發(fā)機(jī),提供用于在傳輸介質(zhì)上與各種其他裝置通信的單元。處理器負(fù)責(zé)管理總線架構(gòu)和通常的處理,存儲(chǔ)器可以存儲(chǔ)處理器在執(zhí)行操作時(shí)所使用的數(shù)據(jù)。
基于上述技術(shù)方案,本發(fā)明實(shí)施例中,通過(guò)在CSE根資源下定義資源類型為普通資源的訪問(wèn)令牌根資源,在訪問(wèn)令牌根資源下定義資源類型為虛擬資源的訪問(wèn)令牌簽發(fā)資源,以及在訪問(wèn)令牌根資源下定義資源類型為普通資源的訪問(wèn)令牌資源,且定義對(duì)訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建操作觸發(fā)一個(gè)訪問(wèn)令牌頒發(fā)過(guò)程,從而使得接收到發(fā)起實(shí)體對(duì)訪問(wèn)令牌根資源下的訪問(wèn)令牌簽發(fā)資源的訪問(wèn)令牌資源創(chuàng)建請(qǐng)求,觸發(fā)訪問(wèn)令牌頒發(fā)過(guò)程,根據(jù)訪問(wèn)令牌授權(quán)策略和所述權(quán)限描述信息,為所述發(fā)起實(shí)體生成訪問(wèn)令牌,并創(chuàng)建訪問(wèn)令牌資源,在oneM2M系統(tǒng)中實(shí)現(xiàn)了通過(guò)訪問(wèn)令牌進(jìn)行授權(quán)的機(jī)制。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器和光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn) 品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。