張祖國(guó), 蘇銳丹
?
智能制造虛擬組織的服務(wù)聯(lián)合安全研究
張祖國(guó)1,2, 蘇銳丹3
(1.中國(guó)科學(xué)院 空間科學(xué)與應(yīng)用研究中心,北京 100190; 2.中國(guó)船舶重工集團(tuán)第七一四研究所,北京 100101;3. 西安電子科技大學(xué) 計(jì)算機(jī)學(xué)院,陜西 西安 710071)
工業(yè)互聯(lián)網(wǎng)時(shí)代的智能制造不僅體現(xiàn)在企業(yè)內(nèi)部的智能化,而且強(qiáng)調(diào)企業(yè)通過(guò)虛擬組織進(jìn)行制造資源和服務(wù)能力的社會(huì)化協(xié)作,跨企業(yè)域的服務(wù)聯(lián)合中的安全認(rèn)證與授權(quán)控制尤為重要。基于VO服務(wù)聯(lián)合安全需求及去中心化自組織特征,利用OAuth 2.0、OpenID Connect協(xié)議規(guī)范設(shè)計(jì)的虛擬組織(VO)服務(wù)聯(lián)合安全方案滿(mǎn)足跨域服務(wù)聯(lián)合、同域服務(wù)聯(lián)合和公共服務(wù)聯(lián)合的需要。文章詳細(xì)解釋了跨域服務(wù)聯(lián)合、同域服務(wù)聯(lián)合與公共服務(wù)聯(lián)合的安全認(rèn)證與授權(quán)實(shí)現(xiàn)流程,并結(jié)合海洋裝備制造案例說(shuō)明了制造聯(lián)盟中服務(wù)聯(lián)合應(yīng)用過(guò)程。最后探討了方案中涉及到的隱私保護(hù)問(wèn)題。
智能制造;虛擬組織;服務(wù)聯(lián)合;OAuth2.0;OpenID Connect
工業(yè)互聯(lián)網(wǎng)是互聯(lián)網(wǎng)與工業(yè)生產(chǎn)相結(jié)合而形成的交集,主要由智能機(jī)器、高級(jí)分析、工作人員三個(gè)元素構(gòu)成?,F(xiàn)實(shí)世界中的機(jī)器、設(shè)備、團(tuán)隊(duì)和網(wǎng)絡(luò)通過(guò)傳感器、控制器和軟件應(yīng)用程序連接起來(lái),并使用基于物理的分析法、預(yù)測(cè)算法、自動(dòng)化和材料科學(xué),電氣工程及其他關(guān)鍵學(xué)科知識(shí)來(lái)理解機(jī)器與大型系統(tǒng)的運(yùn)作方式[1-2]。工業(yè)互聯(lián)網(wǎng)的價(jià)值不僅僅體現(xiàn)于企業(yè)內(nèi)部的基于大數(shù)據(jù)形成的智能制造能力,更為產(chǎn)業(yè)界的資源分享與制造能力的協(xié)作提供了基礎(chǔ)模式。智能制造需要突破單一企業(yè)的邊界,制造資源與生產(chǎn)力的社會(huì)化分享促進(jìn)了企業(yè)間合作聯(lián)盟的形成,通過(guò)產(chǎn)業(yè)鏈實(shí)現(xiàn)資源的彈性化組織和應(yīng)用。在此產(chǎn)業(yè)鏈的構(gòu)成過(guò)程中,涉及到設(shè)計(jì)者、制造者、銷(xiāo)售者、集成與咨詢(xún)者、服務(wù)者和運(yùn)維者。上述所有對(duì)象通過(guò)信息-物理空間系統(tǒng)(cyber-physical system,CPS)構(gòu)成完整協(xié)同平臺(tái),在CPS中,企業(yè)之間并非具有從屬特性,對(duì)象之間的聯(lián)合也不具有恒定的合作關(guān)系[3]。他們之間通過(guò)虛擬組織(virtual organization,VO)的臨時(shí)關(guān)系來(lái)定義。
對(duì)各制造服務(wù)提供商而言,VO的跨域服務(wù)聯(lián)合帶來(lái)的安全性需求可能會(huì)高于業(yè)務(wù)邏輯本身。長(zhǎng)久以來(lái),國(guó)際上許多機(jī)構(gòu)都在積極推動(dòng)跨組織認(rèn)證和授權(quán)的標(biāo)準(zhǔn)化工作,并制定了安全聲明標(biāo)記語(yǔ)言(security assertion markup language,SAML)[4]和WS-Security系列標(biāo)準(zhǔn)?;谶@些標(biāo)準(zhǔn),文獻(xiàn)[5]提出跨域服務(wù)聯(lián)合安全框架,闡述跨域服務(wù)聯(lián)合中的安全功能,包括信任拓?fù)涔芾?、跨域認(rèn)證及授權(quán)、隱私保護(hù)等。文獻(xiàn)[6]提出智能制造的社會(huì)化協(xié)同機(jī)制,闡述了跨域松耦合聯(lián)盟與緊耦合制造集團(tuán)間的授權(quán)信息集成方法。
OAuth 2.0[7-8]是OAuth協(xié)議的下一版本,關(guān)注服務(wù)請(qǐng)求方的簡(jiǎn)易性,為Web應(yīng)用、移動(dòng)設(shè)備等提供專(zhuān)門(mén)的認(rèn)證流程。它使得服務(wù)請(qǐng)求方通過(guò)經(jīng)由用戶(hù)授權(quán)而獲得的訪問(wèn)令牌(access token)來(lái)使用用戶(hù)在服務(wù)提供方的資源和服務(wù),代表用戶(hù)執(zhí)行相關(guān)操作,從而避免了直接將用戶(hù)的憑據(jù)(如口令)交給服務(wù)請(qǐng)求方。建立在OAuth 2.0上的OpenID Connect(OIDC)[9],是OpenID的下一版本,提供了開(kāi)放的身份認(rèn)證,其跨域工作的方式,很適合VO中不同服務(wù)提供商之間的用戶(hù)共享。
VO是一個(gè)以動(dòng)態(tài)市場(chǎng)機(jī)會(huì)為基礎(chǔ)的各種核心能力的統(tǒng)一體,組織內(nèi)各成員異地、異構(gòu)、無(wú)產(chǎn)權(quán)聯(lián)系,相互之間的合作關(guān)系是動(dòng)態(tài)的,完全突破了以?xún)?nèi)部組織制度為基礎(chǔ)的傳統(tǒng)組織結(jié)構(gòu)。合作是VO存在的基礎(chǔ),但由于VO各成員保持著自己原有的風(fēng)格松散耦合,彼此間由于信任產(chǎn)生的安全問(wèn)題尤為突出。
為清晰闡述VO服務(wù)聯(lián)合安全問(wèn)題,本文給出了一組服務(wù)聯(lián)合典型示例,如圖1所示。
A、B與C為三個(gè)彼此獨(dú)立的域。A1、A2、A3、A4是A域的服務(wù),B域和C域的服務(wù)類(lèi)似,其中B2是一項(xiàng)與用戶(hù)無(wú)關(guān)的公共服務(wù)。各個(gè)域有自己獨(dú)立的授權(quán)服務(wù)器AS(含認(rèn)證功能),并可選地提供OpenID服務(wù)。Third Party OP/IDP (OpenID Provider)為第三方OpenID服務(wù)提供方。示例中包含三種典型的服務(wù)聯(lián)合場(chǎng)景:A域的服務(wù)A1調(diào)用了本域了服務(wù)A2和外域的服務(wù)B1,A2和B1又分別跨域調(diào)用了服務(wù)C1和A3,是典型的跨域服務(wù)聯(lián)合;C域中的服務(wù)C2依賴(lài)本域服務(wù)C3、C4和C5,屬于同一安全域/信任域的服務(wù)聯(lián)合,即同域服務(wù)聯(lián)合;服務(wù)A4對(duì)服務(wù)B2的調(diào)用產(chǎn)生了(跨域)公共服務(wù)聯(lián)合場(chǎng)景。
傳統(tǒng)服務(wù)提供方僅對(duì)外提供安全的核心業(yè)務(wù)服務(wù)接口,僅需要在本域邊界進(jìn)行有效地防范即可確保本域的整體安全。加入VO的各成員組織出于跨域服務(wù)聯(lián)合的需要,原本各自獨(dú)立的安全邊界遭到破壞,為VO服務(wù)聯(lián)合引入了以跨域認(rèn)證及授權(quán)為核心的安全問(wèn)題。其中,跨域認(rèn)證將可信的用戶(hù)標(biāo)識(shí)信息跨域共享,從而避免用戶(hù)跨域使用服務(wù)資源時(shí)的重復(fù)認(rèn)證;跨域授權(quán)則允許服務(wù)提供方和資源所有者對(duì)來(lái)自外域的資源使用請(qǐng)求進(jìn)行授權(quán)控制。概括而言,服務(wù)聯(lián)合場(chǎng)景中涉及四類(lèi)安全問(wèn)題:
1)服務(wù)聯(lián)合建立:為了使用戶(hù)的認(rèn)證與授權(quán)信息和服務(wù)資源能夠在跨域環(huán)境下進(jìn)行共享,跨域服務(wù)聯(lián)合的建立就是要根據(jù)服務(wù)調(diào)用關(guān)系構(gòu)建多域環(huán)境下的關(guān)聯(lián)關(guān)系,從而形成由一系列服務(wù)分享與使用所形成的VO。
2)單點(diǎn)登錄(single sign-on,SSO):在跨域服務(wù)聯(lián)合中,用戶(hù)只需要完成一次身份認(rèn)證流程,即可訪問(wèn)所有服務(wù),無(wú)需執(zhí)行多次認(rèn)證。
3)聯(lián)合退出(federated sign-out):在跨域服務(wù)聯(lián)合中,用戶(hù)主動(dòng)退出時(shí),清理該服務(wù)聯(lián)合中各服務(wù)相關(guān)的緩存數(shù)據(jù),結(jié)束會(huì)話(huà)以保證會(huì)話(huà)安全。
4)訪問(wèn)控制:受VO的松散耦合、分布式特點(diǎn)影響,跨域服務(wù)聯(lián)合中需要對(duì)服務(wù)的跨組織訪問(wèn)進(jìn)行嚴(yán)格明確地約束,以防止未授權(quán)訪問(wèn)。
OAuth 2.0 和OIDC分別將授權(quán)與認(rèn)證操作從業(yè)務(wù)邏輯中抽象出來(lái),構(gòu)成VO服務(wù)聯(lián)合安全方案的基礎(chǔ)。
OAuth 2.0能使VO服務(wù)聯(lián)合場(chǎng)景中服務(wù)使用方代表自身或者通過(guò)引導(dǎo)用戶(hù)(服務(wù)/資源所有者)與服務(wù)提供方進(jìn)行一系列的授權(quán)交互后代表用戶(hù)獲取受限的服務(wù),授權(quán)信息以Access Token形式返回給服務(wù)使用方作為訪問(wèn)受保護(hù)資源的憑據(jù),每一個(gè)Access Token授權(quán)其持有者在特定的時(shí)間段內(nèi)使用特定的服務(wù)。
OIDC作為OAuth 2.0協(xié)議授權(quán)過(guò)程的擴(kuò)展,其身份認(rèn)證結(jié)果為JWT(JSON web token)形式的ID Token。ID Token包含著認(rèn)證相關(guān)的信息,而認(rèn)證用戶(hù)詳細(xì)信息的獲取則融入了授權(quán)流程,需要使用通過(guò)用戶(hù)授權(quán)后得到的Access Token從資源服務(wù)器(resource server,RS)的UserInfo Endpoint處獲取。
跨域服務(wù)聯(lián)合、同域服務(wù)聯(lián)合和公共服務(wù)聯(lián)合由于安全域跨越和業(yè)務(wù)本身的不同,導(dǎo)致對(duì)授權(quán)的安全需求不同。本方案權(quán)衡安全性需求和授權(quán)流程的靈活性與授權(quán)效率,為VO的三種服務(wù)聯(lián)合場(chǎng)景選用了不同的授權(quán)模式:
1)在跨域服務(wù)聯(lián)合中,服務(wù)使用方需要跨越安全域獲得用戶(hù)授權(quán),安全需求最高,采用的是OAuth 2.0四種授權(quán)模式中功能完整、流程最為嚴(yán)密的授權(quán)碼模式(authorization code);
2)在同域服務(wù)聯(lián)合中,由于服務(wù)使用方與服務(wù)提供方處于同一個(gè)安全域中,彼此存在一定的信任基礎(chǔ),服務(wù)訪問(wèn)的授權(quán)可在用戶(hù)身份驗(yàn)證后使用本域內(nèi)的訪問(wèn)控制策略;
3)在公共服務(wù)聯(lián)合中,服務(wù)使用方以自身身份使用資源,并不涉及用戶(hù)身份認(rèn)證和請(qǐng)求用戶(hù)授權(quán)的過(guò)程,服務(wù)提供方僅需對(duì)服務(wù)使用方身份進(jìn)行認(rèn)證即可,授權(quán)采用OAuth 2.0授權(quán)模式中的客戶(hù)端模式(client credentials)。
基于OAuth 2.0和OIDC的用戶(hù)認(rèn)證授權(quán)過(guò)程受TLS的保護(hù),能確保認(rèn)證授權(quán)過(guò)程的安全。用于身份認(rèn)證的ID Token使用了JWS(JSON web signature)來(lái)確保信息的完整性和可認(rèn)證性,并且可采用JWE(JSON web encryption)加密以獲得機(jī)密性保證。包含授權(quán)信息的Access Token由授權(quán)服務(wù)器(authorization server,AS)定義,通過(guò)數(shù)字簽名機(jī)制確保無(wú)法篡改和偽造。
2.1 跨域服務(wù)聯(lián)合
VO跨域服務(wù)聯(lián)合場(chǎng)景中,首次進(jìn)行跨域服務(wù)調(diào)用或后續(xù)服務(wù)調(diào)用時(shí)已有授權(quán)失效(授權(quán)過(guò)期或用戶(hù)取消授權(quán))的情況下,都需要用戶(hù)進(jìn)行身份認(rèn)證后對(duì)服務(wù)請(qǐng)求方所請(qǐng)求資源/服務(wù)的訪問(wèn)進(jìn)行授權(quán)。在用戶(hù)通過(guò)身份認(rèn)證并進(jìn)行授權(quán)后,授權(quán)信息以Access Token形式返回給服務(wù)請(qǐng)求方。服務(wù)請(qǐng)求方在之后進(jìn)行的服務(wù)調(diào)用請(qǐng)求中,攜帶該Access Token作為服務(wù)使用的的授權(quán)憑證。服務(wù)提供方則首先對(duì)請(qǐng)求信息中的Access Token進(jìn)行有效性認(rèn)證,在確認(rèn)其完整性、有效性且授權(quán)涵蓋本次服務(wù)請(qǐng)求后,再向服務(wù)請(qǐng)求方提供服務(wù)。
在圖1展示的跨域服務(wù)聯(lián)合場(chǎng)景中,直接面向用戶(hù)的服務(wù)A1需要使用外域服務(wù)以完成業(yè)務(wù)邏輯。由于業(yè)務(wù)流程分散在A、B、C三個(gè)域中,為統(tǒng)一用戶(hù)管理,需要協(xié)商使用同一個(gè)OP/IDP(A、B、C三個(gè)域的IDP之一或第三方IDP)提供的身份認(rèn)證服務(wù),本文以選擇第三方IDP為例進(jìn)行描述。
以O(shè)IDC及OAuth 2.0的認(rèn)證授權(quán)為基礎(chǔ)動(dòng)態(tài)建立的虛擬組織中各成員之間是松散耦合的。各VO成員獨(dú)立提供授權(quán)服務(wù)(Authentication Service)、業(yè)務(wù)服務(wù),并根據(jù)需求可選地提供OpenID服務(wù)。
跨域服務(wù)聯(lián)合建立的前提是根據(jù)服務(wù)調(diào)用產(chǎn)生基于注冊(cè)的關(guān)聯(lián)關(guān)系。此場(chǎng)景中,由業(yè)務(wù)邏輯產(chǎn)生的跨域服務(wù)調(diào)用有
用戶(hù)首次使用服務(wù)A1時(shí),認(rèn)證與授權(quán)流程如圖 2所示。
圖2 跨域服務(wù)聯(lián)合流程Fig.2 Dataflow of cross-domain service federation
1)用戶(hù)首次訪問(wèn)A域的服務(wù)A1,且無(wú)法提供有效的身份信息,A1根據(jù)協(xié)商結(jié)果引導(dǎo)用戶(hù)前往第三方IDP處進(jìn)行身份認(rèn)證并同時(shí)攜帶所需的用戶(hù)身份信息請(qǐng)求;
2)第三方IDP首先對(duì)用戶(hù)身份進(jìn)行合法性認(rèn)證,認(rèn)證成功后,引導(dǎo)用戶(hù)對(duì)A1所請(qǐng)求的用戶(hù)自身身份信息進(jìn)行訪問(wèn)授權(quán)并根據(jù)用戶(hù)的授權(quán)分發(fā)授權(quán)碼(authorization code)給A1。A1通過(guò)此授權(quán)碼從第三方IDP處換取用戶(hù)身份標(biāo)識(shí)令牌(ID Token)和訪問(wèn)令牌(Access Token),此訪問(wèn)令牌可用于從IDP處獲取用戶(hù)授權(quán)訪問(wèn)的用戶(hù)自身身份信息;
3)A1對(duì)服務(wù)A2的調(diào)用屬于同域服務(wù)調(diào)用,僅需在服務(wù)調(diào)用請(qǐng)求中攜帶從步驟2)獲取的ID Token即可,詳細(xì)步驟參見(jiàn)2.2節(jié);
4)A2初次跨域調(diào)用C1時(shí),并沒(méi)有用戶(hù)對(duì)服務(wù)C1的使用授權(quán),需要向C1發(fā)送授權(quán)請(qǐng)求,請(qǐng)求內(nèi)容為A2需要以用戶(hù)的身份在C1處使用的服務(wù)/資源;
5)用戶(hù)在C域并未進(jìn)行登錄認(rèn)證,故C1需要引導(dǎo)用戶(hù)前往第三方IDP出進(jìn)行認(rèn)證操作并同時(shí)攜帶所需的用戶(hù)身份信息請(qǐng)求;
6)由于步驟1)中用戶(hù)已經(jīng)在IDP處認(rèn)證過(guò)(短時(shí)間內(nèi),會(huì)話(huà)未失效),通過(guò)OIDC的會(huì)話(huà)管理功能[10],用戶(hù)在此步驟將直接通過(guò)身份認(rèn)證進(jìn)入OIDC的用戶(hù)身份信息授權(quán)流程,之后的流程與步驟2)類(lèi)似,C1得到ID Token和授權(quán)用于訪問(wèn)用戶(hù)身份信息的Access Token;
7)C1引導(dǎo)用戶(hù)對(duì)A2請(qǐng)求的資源進(jìn)行訪問(wèn)授權(quán)并根據(jù)用戶(hù)授權(quán)分發(fā)授權(quán)碼給A2,A2獲得授權(quán)碼并進(jìn)一步從C1得到Access Token。A2在之后代表該用戶(hù)對(duì)C1的服務(wù)請(qǐng)求中攜帶該Access Token作為訪問(wèn)憑證;
8)~11)與步驟4)~7)類(lèi)似;
12)B1初次調(diào)用服務(wù)A3,需要向A3發(fā)送授權(quán)請(qǐng)求,請(qǐng)求內(nèi)容為B1需要以用戶(hù)的身份在A3處使用的資源;
13)此步驟中,用戶(hù)已經(jīng)在A域通過(guò)身份認(rèn)證,會(huì)話(huà)有效,故直接進(jìn)入用戶(hù)授權(quán)操作流程,其余流程與步驟7)類(lèi)似。
以上流程涉及A、B、C三個(gè)域?qū)τ脩?hù)身份的認(rèn)證和三次跨域服務(wù)調(diào)用,顯式的授權(quán)操作需要進(jìn)行三次(不含身份認(rèn)證過(guò)程中用戶(hù)對(duì)訪問(wèn)自身身份信息的授權(quán)),每次跨域服務(wù)調(diào)用對(duì)應(yīng)一次授權(quán)過(guò)程;共三個(gè)域的身份認(rèn)證需求僅需要用戶(hù)在第三方IDP處進(jìn)行一次登錄認(rèn)證,實(shí)現(xiàn)了單點(diǎn)登錄。
單點(diǎn)登錄功能基于OIDC協(xié)議的會(huì)話(huà)管理擴(kuò)展部分,通過(guò)特定方法讓A、B、C三個(gè)域共享了第三方OP/IDP的認(rèn)證會(huì)話(huà),從而可以使VO跨域服務(wù)聯(lián)合實(shí)現(xiàn)單點(diǎn)登錄和聯(lián)合退出。
OAuth 2.0協(xié)議特有的與用戶(hù)交互、由用戶(hù)顯式對(duì)特定資源訪問(wèn)進(jìn)行授權(quán)的過(guò)程使得基于該協(xié)議的跨域資源/服務(wù)訪問(wèn)控制十分靈活,是細(xì)粒度的、用戶(hù)可知可控的,并可隨時(shí)增加、修改和撤銷(xiāo)授權(quán)。
2.2 同域服務(wù)聯(lián)合
同域環(huán)境中各服務(wù)間的彼此調(diào)用協(xié)作也可視為服務(wù)聯(lián)合的一種,由于各服務(wù)處于同一個(gè)信任域/安全域,服務(wù)聯(lián)合的建立與訪問(wèn)控制都可根據(jù)本地策略靈活進(jìn)行,本節(jié)僅對(duì)同域環(huán)境中基于OIDC的各服務(wù)身份認(rèn)證方案進(jìn)行描述。
即使處于同一個(gè)信任域,各服務(wù)同樣可能具有互不相同的底層安全基礎(chǔ)設(shè)施,且同域的特殊條件使得一致的身份驗(yàn)證策略和可靠的身份驗(yàn)證框架十分必要。耶魯大學(xué)提出的CAS(central authentication service)是解決此問(wèn)題的經(jīng)典協(xié)議。以下針對(duì)內(nèi)部實(shí)現(xiàn)有IDP的企業(yè)和組織給出了基于OIDC的解決方法。
圖 3展示了同域服務(wù)聯(lián)合的典型場(chǎng)景,用戶(hù)在使用服務(wù)C2時(shí),C3、C4由于間接被調(diào)用而需要驗(yàn)證用戶(hù)身份。引入2.1節(jié)的基于OIDC會(huì)話(huà)管理無(wú)疑可以解決問(wèn)題,但基于同一安全域中各服務(wù)間基本的信任關(guān)系可以更簡(jiǎn)便地傳遞可驗(yàn)證的用戶(hù)身份信息。域C使用本域中的OP/IDP進(jìn)行用戶(hù)的統(tǒng)一認(rèn)證,用戶(hù)首次訪問(wèn)C2服務(wù)時(shí),C2引導(dǎo)用戶(hù)前往本域的ODP處進(jìn)行身份認(rèn)證,在成功通過(guò)身份認(rèn)證后獲得ID Token;C2在之后請(qǐng)求C3、C4服務(wù)時(shí)攜帶該ID Token作為可認(rèn)證用戶(hù)身份標(biāo)識(shí);C3、C4接收到ID Token后,通過(guò)ID Token信息及其有效性驗(yàn)證結(jié)果即可獲知用戶(hù)身份及用戶(hù)通過(guò)了身份認(rèn)證這一事實(shí)。
該方法通過(guò)使用IDP統(tǒng)一了同域身份認(rèn)證,并借助ID Token在同域服務(wù)之間傳遞了用戶(hù)身份認(rèn)證信息,該信息可驗(yàn)證(無(wú)法偽造)。值得注意的是,該方法以同域服務(wù)不會(huì)泄露ID Token這一假設(shè)為安全基礎(chǔ)。
圖3 同域服務(wù)聯(lián)合流程Fig.3 Dataflow of shared domain service federation
2.3 公共服務(wù)聯(lián)合
跨域條件下的公共服務(wù)聯(lián)合由于沒(méi)有用戶(hù)這一角色的參與,故不存在單點(diǎn)登錄和聯(lián)合退出問(wèn)題,授權(quán)流程為OAuth 2.0協(xié)議授權(quán)模式的客戶(hù)端模式。如圖 4所示,A域的服務(wù)A4需要使用B域的公共服務(wù)B2。服務(wù)聯(lián)合建立時(shí),A4在B2處注冊(cè)并得到自身身份標(biāo)識(shí)與認(rèn)證憑據(jù),典型地,此處的憑據(jù)為一個(gè)公私鑰對(duì),私鑰A4持有,公鑰由B2保存。A4在需要使用B2服務(wù)時(shí),針對(duì)待訪問(wèn)資源/服務(wù)發(fā)起授權(quán)請(qǐng)求,并在請(qǐng)求中攜帶私鑰對(duì)該請(qǐng)求的數(shù)字簽名;B2收到授權(quán)請(qǐng)求并成功驗(yàn)證簽名信息后,分發(fā)Access Token給A4作為授權(quán)結(jié)果;A4通過(guò)在之后的請(qǐng)求中攜帶該Access Token來(lái)使用B2提供的服務(wù)。
圖4 同域服務(wù)聯(lián)合流程Fig.4 Dataflow of shared domain service federation
船舶與海洋裝備制造是高端制造業(yè)的典型代表,具有整體長(zhǎng)周期、單件少批量、離散制造與局部流程制造的混合形態(tài)特征。智能制造的全制造服務(wù)周期[11]涵蓋了從研發(fā)設(shè)計(jì)到運(yùn)維服務(wù)的全過(guò)程。在船舶與海洋裝備的制造過(guò)程中,服務(wù)環(huán)節(jié)眾多,其流程如圖5所示。
海洋裝備制造流程中的各服務(wù)環(huán)節(jié)由多個(gè)企業(yè)提供,參與制造流程的不同企業(yè)構(gòu)成臨時(shí)服務(wù)于某個(gè)項(xiàng)目任務(wù)的VO。裝備制造流程主要包括設(shè)計(jì)服務(wù)、總裝服務(wù)和制造分包服務(wù),其社會(huì)化協(xié)作的趨勢(shì)是:提供總體設(shè)計(jì)CAD(computer-aided design)、工藝設(shè)計(jì)CAPP(computer-aided process planning)服務(wù)的各個(gè)企業(yè)之間聯(lián)合構(gòu)成獨(dú)立的VO共享彼此的設(shè)計(jì)智慧;提供分段制造與配套裝備服務(wù)的不同企業(yè)在總裝集成企業(yè)的任務(wù)驅(qū)動(dòng)下依據(jù)工藝設(shè)計(jì)交付相應(yīng)的配套中間產(chǎn)品。在總裝制造環(huán)節(jié)和分段制造環(huán)節(jié)中,企業(yè)資源計(jì)劃ERP(enterprise resource planning)、產(chǎn)品生命周期管理PLM(product lifecycle management)、供應(yīng)鏈管理SCM(supply chain management)、客戶(hù)關(guān)系管理CRM(customer relationship management)、制造執(zhí)行系統(tǒng)MES(manufacturing execution system)、數(shù)控機(jī)床網(wǎng)絡(luò)DNC(distributed numerical control)以及其他內(nèi)部服務(wù)形成縱向緊耦合集成。
上述案例涉及的VO服務(wù)聯(lián)合如圖6所示。
圖6 船舶與海洋裝備制造的VO服務(wù)聯(lián)合Fig.6 Service federation in offshore equipment manufacturing
圖5 海洋裝備制造流程Fig.5 Manufacturing flow for offshore equipment
位于域G的總裝集成企業(yè)ERP服務(wù)通過(guò)調(diào)用本域內(nèi)PLM、CRM、SCM及外域的CAD、CAPP等服務(wù)驅(qū)動(dòng)整個(gè)制造流程,對(duì)外提供船舶與海洋設(shè)備制造服務(wù),用戶(hù)(甲方)通過(guò)訪問(wèn)域 G的服務(wù)來(lái)實(shí)時(shí)了解并操控制造流程。流程中的總體設(shè)計(jì)環(huán)節(jié)、工藝設(shè)計(jì)環(huán)節(jié)分別由域 B提供的CAD服務(wù)和域F提供的CAPP服務(wù)負(fù)責(zé)。域G的ERP服務(wù)根據(jù)設(shè)計(jì)結(jié)果,調(diào)用域 H、I、J的MES服務(wù)完成部分分段制造與配套設(shè)備業(yè)務(wù),再基于外域和本域(總裝集成企業(yè)也可能負(fù)責(zé)部分中間產(chǎn)品的制造)的分段制造與配套產(chǎn)品進(jìn)行最終的總裝集成。
在圖6所示的VO服務(wù)聯(lián)合場(chǎng)景中,域 G、H、I、J中都存在同域服務(wù)聯(lián)合,比如域 H中MES與DNC服務(wù)通過(guò)彼此調(diào)用以對(duì)外提供分段制造與配套設(shè)備服務(wù);跨域的服務(wù)聯(lián)合更是普遍存在。
用戶(hù)通過(guò)域G啟動(dòng)的VO服務(wù)聯(lián)合裝備制造流程及相應(yīng)的服務(wù)聯(lián)合類(lèi)型描述如下,根據(jù)服務(wù)聯(lián)合類(lèi)型即可采用第2節(jié)給出的相應(yīng)認(rèn)證與授權(quán)方案。
1)域 G的ERP服務(wù)調(diào)用域 B的CAD設(shè)計(jì)服務(wù),對(duì)應(yīng)圖中步驟1),屬跨域服務(wù)聯(lián)合,使用2.1節(jié)的跨域服務(wù)聯(lián)合認(rèn)證授權(quán)方案;
2)域 B的CAD服務(wù)調(diào)用域 A、C相同行業(yè)的CAD服務(wù),獲取其相關(guān)設(shè)計(jì)經(jīng)驗(yàn),形成總體設(shè)計(jì)圖紙,屬于跨域服務(wù)聯(lián)合;
3)域 F的CAPP服務(wù)調(diào)用域 B的CAD服務(wù)獲得總體設(shè)計(jì)圖紙用于工藝設(shè)計(jì)服務(wù)本身,對(duì)應(yīng)步驟2),屬跨域服務(wù)聯(lián)合;
4)域F的CAPP服務(wù)共享域 D、E的工藝設(shè)計(jì),形成工藝設(shè)計(jì)圖紙,屬于跨域服務(wù)聯(lián)合;
5)域 G的ERP服務(wù)調(diào)用域 F的CAPP服務(wù)獲得工藝設(shè)計(jì)圖紙,對(duì)應(yīng)步驟3),屬跨域服務(wù)聯(lián)合;
6)域 G的ERP服務(wù)根據(jù)工藝設(shè)計(jì)圖紙,調(diào)用自身的MES、DNC等服務(wù)(同域服務(wù)聯(lián)合)和域 H、I、J的MES服務(wù)(對(duì)應(yīng)步驟4),屬跨域服務(wù)聯(lián)合)實(shí)現(xiàn)裝備的分段制造;
7)最后,域 G根據(jù)分段制造的中間件完成設(shè)備的總裝集成,提供給用戶(hù)。
需要說(shuō)明的是,出于避免重復(fù)勞動(dòng)和降低成本的考慮,域 B與同樣提供CAD服務(wù)的域 A、C以某種約定的機(jī)制組成獨(dú)立的VO以實(shí)現(xiàn)復(fù)用設(shè)計(jì)文件,共享彼此經(jīng)驗(yàn)、技術(shù)等智慧成果。這種相同行業(yè)構(gòu)成的VO,通過(guò)跨域服務(wù)聯(lián)合進(jìn)行智慧成果或生產(chǎn)能力的分享是一種典型的社會(huì)化協(xié)作,避免了信息孤島的出現(xiàn)和生產(chǎn)能力的局限,為VO成員帶來(lái)了更大的價(jià)值回報(bào)。
本文基于VO服務(wù)聯(lián)合安全需求及OAuth 2.0、OpenID Connect協(xié)議,設(shè)計(jì)了VO服務(wù)聯(lián)合安全方案,詳細(xì)描述了跨域服務(wù)聯(lián)合、同域服務(wù)聯(lián)合與公共服務(wù)聯(lián)合的實(shí)現(xiàn)流程,并通過(guò)船舶與海洋裝備制造的同域及跨域協(xié)同案例進(jìn)行了具體應(yīng)用過(guò)程說(shuō)明。方案具有開(kāi)放與實(shí)用的特點(diǎn)。
在此方案基礎(chǔ)上還需要進(jìn)一步研究是:
1)基于OpenID Connect協(xié)議的認(rèn)證過(guò)程獲得ID Token可能會(huì)直接或間接暴露用戶(hù)身份相關(guān)的敏感信息。對(duì)VO服務(wù)聯(lián)合中的OpenID Providers而言,隱私保護(hù)(privacy protection)意味著不能在ID Token和Access Token中暴露用戶(hù)ID及其他個(gè)人身份信息PII(personally identifiable information)。其提供的OpenID也應(yīng)為PPID(pairwise pseudonymous identifier),從而消除不同域獲得的用戶(hù)身份標(biāo)識(shí)的關(guān)聯(lián)。
2)在服務(wù)聯(lián)合實(shí)現(xiàn)后,需要建立服務(wù)間的合理付費(fèi)機(jī)制,有助于提高虛擬企業(yè)在智能制造協(xié)同中的制造服務(wù)分享動(dòng)機(jī)。
[1]EVANS P C, ANNUNZIATA M. Industrial internet: pushing the boundaries of minds and machines[EB/OL]. USA: General Electric Company, [2012-11-26]. http://www.ge.com/docs/chapters/Industrial_Internet.pdf.
[2]BULLINGER T A. The industrial internet[EB/OL]. USA: International Council on Systems Engineering, [2013-05-16]. http://www.incose.org/flc/events/Documentation/IndustrialInternet.pdf.
[3]KAGERMANN H, WAHLSTER W, HELBIG J. Recommendations for implementing the strategic initiative INDUSTRIE 4.0[EB/OL]. German: National Academy of Science and Engineering, [2013-04-16]. http://www.acatech.de/fileadmin/user_upload/Baumstruktur_nach_Website/Acatech/root/de/Material_fuer_Sonderseiten/Industrie_4.0/Final_report__Industrie_4.0_accessible.pdf.
[4]OASIS. Security assertion markup language specifications 2.0[EB/OL]. USA: Organization for the Advancement of Structured Information Standards. [2013-05-28]. http://saml.xml.org/saml-specifications.
[5]蘇銳丹. 電子政務(wù)安全工程若干關(guān)鍵技術(shù)研究[D]. 西安: 西安電子科技大學(xué), 2010.
SU Ruidan. Research on key technologies of e-government security engineering[D]. Xi′an: Xidian University, 2010.
[6]張祖國(guó). 基于社會(huì)化的協(xié)同智能制造系統(tǒng)研究[D]. 北京: 中國(guó)科學(xué)院大學(xué), 2016. ZHANG Zuguo. Research on SNS-based collaborative intelligent manufacturing system[D]. Beijing: The University of Chinese Academy of Sciences, 2016.
[7]HARDT D. The OAuth 2.0 Authorization Framework[EB/OL]. [2012-10-12]. http://tools.ietf.org/html/rfc6749.
[8]JONES M, HARDT D. The OAuth 2.0 Authorization framework: bearer token usage[EB/OL]. [2012-10-12]. http://tools.ietf.org/html/rfc6750.
[9]SAKIMURA N, BRADLEY J, JONES M, et al. OpenID connect core 1.0[EB/OL]. [2014-11-20]. http://openid.net/specs/openid-connect-core-1_0.html.
[10]SAKIMURA N, BRADLEY J, JONES M, et al. OpenID connect discovery 1.0[EB/OL]. [2014-11-21]. http://openid.net/specs/openid-connect-discovery-1_0.html.
[11]SAKIMURA N, BRADLEY J, JONES M, et al. OpenID connect session management 1.0[EB/OL]. [2014-11-21]. http://openid.net/specs/openid-connect-session-1_0.html.
[12]馬晨, 陳雪波. 基于包含原理的多智能體一致性協(xié)調(diào)控制[J]. 智能系統(tǒng)學(xué)報(bào), 2014, 9(4): 468-473.
MA Chen, CHEN Xuebo. Coordinated control of the consensus of a multi-agent system based on the inclusion principle[J]. CAAI transactions on intelligent systems, 2014, 9(4): 468-473.
Research on service federation security of a virtual organization for intelligent manufacturing
ZHANG Zuguo1,2,SU Ruidan3
(1.Center for Space Science and Applied Research, Chinese Academy Science , Beijing 100190, China;2.The 714 Research Institute of CSIC, Beijing 100101, China;3. Key Laboratory of Computer Network and Information Security of the Ministry of Education, Xidian University, Xi'an 710071, China)
Intelligent manufacturing in the era of the industrial internet is embodied in intelligent management inside an enterprise. It emphasizes the socialized cooperation of manufacturing resources and service ability of an enterprise via a virtual organization. The safety certification and authorization control plays an important role in cross-domain service federation. This paper analyzes critical security requirements of service federation for a virtual organization and proposes a security scheme suitable for VO service federation based on OAuth 2.0 and OpenID Connect specifications. Several fundamental security functions such as cross-domain service federation, service federation in shared domain and public service federation were also clarified. The application of service federation in the manufacturing VO was demonstrated in the case of offshore equipment manufacturing. Also, the privacy protection issue was discussed.
Intelligent manufacturing; virtual organization; service federation; OAuth 2.0; OpenID connect
2015-04-23.
日期:2016-08-29.
國(guó)家高技術(shù)支撐計(jì)劃(2012BAF10B06).
張祖國(guó)(1971-), 男, 研究員,博士研究生;
蘇銳丹(1978-), 男, 副教授.
張祖國(guó),E-mail:homer_chang@163.com.
10.11990/jheu.201504052
網(wǎng)絡(luò)出版地址:http://www.cnki.net/kcms/detail/23.1390.u.20160829.1421.056.html
TP399
A
1006-7043(2016)10-1341-06
張祖國(guó), 蘇銳丹. 智能制造虛擬組織的服務(wù)聯(lián)合安全研究[J]. 哈爾濱工程大學(xué)學(xué)報(bào), 2016, 37(10): 1341-1346.
ZHANG Zuguo,SU Ruidan. Research on service federation security of a virtual organization for intelligent manufacturing[J]. Journal of Harbin Engineering University, 2016, 37(10): 1341-1346.