專利名稱:一種面向服務(wù)架構(gòu)服務(wù)消費者的認證方法
技術(shù)領(lǐng)域:
本發(fā)明涉及ー種計算機領(lǐng)域,特別是涉及ー種面向服務(wù)架構(gòu)(Service-OrientedArchitecture, SOA)服務(wù)消費者的認證方法。
背景技術(shù):
本發(fā)明涉及面向服務(wù)架構(gòu)(Service-Oriented Architecture, SOA)和企業(yè)資源計劃(Enterprise Resource Planning, ERP)電子商務(wù)套件領(lǐng)域,具體地講,本發(fā)明涉及SOA安全領(lǐng)域中調(diào)用服務(wù)的請求通過攜帶認證令牌(Token)的方式進行服務(wù)消費的用戶認證授權(quán)。一般來說,基于SOA安全是分為四個層面用戶認證授權(quán)、傳輸層安全、消息層安全、完整性。在用戶認證授權(quán)層面,當前對服務(wù)消費進行用戶認證授權(quán)由WS-Security技術(shù)實現(xiàn)。WS-Security技術(shù)實現(xiàn)時,WS-Security提供的用戶身份認證機制使用安全令牌(Security Token)驗證用戶并判斷客戶端在特定上下文中是否合法,其中,客戶端可以是終端用戶、機器、應(yīng)用、或服務(wù)。在身份認證過程中,安全令牌(Token)被插入到客戶端的請求消息中。根據(jù)安全令牌類型的不同,某些類型的安全令牌還會被插入到服務(wù)器端的響應(yīng)消息中。但采用上述WS-Security技術(shù)實現(xiàn)時,存在有以下不足 I、令牌更新使用實時性不強,服務(wù)器端與客戶端的令牌同步更新沒有實現(xiàn);2、安全認證可控性不強,不能有效的應(yīng)用到實際對服務(wù)消費者請求的控制上;3、有一定的局限性,WS-Security通過將簽名和加密頭加入SOAP (Simple ObjectAccess Protocol,簡單對象訪問協(xié)議)頭信息中,有些SOA中間件產(chǎn)品對SOAP頭信息進行了封裝,很難獲取到該信息做相關(guān)的輔助功能。
所以,有必要提供一種新的面向服務(wù)架構(gòu)服務(wù)消費者的認證方法,以解決以上存在的技術(shù)問題。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種面向服務(wù)架構(gòu)服務(wù)消費者的認證方法,服務(wù)消費者通過攜帶認證令牌的方式,統(tǒng)ー監(jiān)控服務(wù)的實際使用情況,可以增強服務(wù)安全消費及可控性,合理控制服務(wù)的調(diào)用。為解決以上技術(shù)問題,本發(fā)明提供一種面向服務(wù)架構(gòu)服務(wù)消費者的認證方法,包括步驟I、服務(wù)消費者提交認證申請,獲取認證令牌;步驟2、服務(wù)消費者根據(jù)獲取的認證令牌,攜帯認證令牌調(diào)用服務(wù)。進ー步地,所述步驟I中,具體包括步驟I. I)服務(wù)消費者根據(jù)服務(wù)發(fā)布者的規(guī)范提交消費認證申請;
步驟I. 2)服務(wù)發(fā)布者審批服務(wù)消費者的認證申請,生成并分配認證令牌給服務(wù)消費者。進ー步地,所述步驟I. I中,具體包括步驟I. I. I)服務(wù)消費者提交消費認證申請;步驟I. I. 2)服務(wù)消費者接收服務(wù)發(fā)布者審批認證申請后發(fā)送的接收認證令牌服務(wù)規(guī)范開發(fā)接收認證令牌服務(wù),并提供給服務(wù)發(fā)布者。進ー步地,所述步驟I. 2中,具體包括步驟I. 2. I)服務(wù)發(fā)布者審批服務(wù)消費者提交的認證申請,提供接收認證令牌服務(wù)規(guī)范給服務(wù)消費者;步驟I. 2. 2)服務(wù)發(fā)布者調(diào)用接收認證令牌服務(wù)作測試,測試通過后登記提供接收認證令牌服務(wù)的服務(wù)消費者到服務(wù)消費者列表;步驟I. 2. 3)服務(wù)發(fā)布者生成認證令牌,井分配所述認證令牌給服務(wù)消費者。進ー步地,所述步驟I. 2中,進ー步包括步驟I. 2. 4)服務(wù)發(fā)布者推送認證令牌給服務(wù)消費者,跟蹤調(diào)用結(jié)果;步驟I. 2. 5)服務(wù)發(fā)布者根據(jù)服務(wù)消費者的調(diào)用情況判斷調(diào)用成功后,確認認證令牌生效;步驟I. 2. 6)服務(wù)發(fā)布者將認證令牌生效的消息通知服務(wù)消費者。進ー步地,所述步驟2,具體包括步驟2. I)服務(wù)消費者根據(jù)獲取的認證令牌,攜帯認證令牌調(diào)用服務(wù);步驟2. 2)服務(wù)發(fā)布者攔截服務(wù)消費者調(diào)用服務(wù)請求,獲取認證令牌;步驟2. 3)服務(wù)發(fā)布者對獲取的認證令牌進行校驗,校驗成功,放行服務(wù)調(diào)用請求,消費者成功調(diào)用服務(wù);否則,直接退回請求,消息通知服務(wù)消費者。進ー步地,所述方法進ー步包括步驟3、服務(wù)發(fā)布者定時更新與服務(wù)消費者匹配的認證令牌。進ー步地,所述步驟3具體包括步驟3. I)服務(wù)發(fā)布者定時更新認證令牌;步驟3. 2)服務(wù)發(fā)布者推送新認證令牌給服務(wù)消費者,推送成功,則新認證令牌生效;否則推送失敗,新認證令牌更新失敗。進ー步地,所述方法進ー步包括步驟4、服務(wù)發(fā)布者接到服務(wù)消費者停止消費服務(wù)的通知后,撤銷與之匹配的認證令牌。進ー步地,所述步驟4具體包括步驟4. I)服務(wù)消費者提出停止消費服務(wù)的下線通知給服務(wù)發(fā)布者;
、
步驟4. 2)服務(wù)發(fā)布者接到服務(wù)消費者停止消費服務(wù)的通知后,停止推送認證令牌;步驟4. 3)服務(wù)發(fā)布者從服務(wù)消費者列表中撤銷所述服務(wù)消費者的記錄,撤銷與之匹配的認證令牌。與現(xiàn)有技術(shù)相比,本發(fā)明提供一種面向服務(wù)架構(gòu)服務(wù)消費者的認證方法,服務(wù)消費者通過攜帶認證令牌訪問服務(wù),按照服務(wù)發(fā)布者的規(guī)則發(fā)送服務(wù)調(diào)用的消息,通過校驗后方可調(diào)用服務(wù)。所以,本發(fā)明的技術(shù)優(yōu)點有以下幾點
I、服務(wù)消費者通過攜帶認證令牌的方式,統(tǒng)ー監(jiān)控服務(wù)的實際使用情況,增強服務(wù)安全消費及可控性,合理控制服務(wù)的調(diào)用。2、認證令牌采取自動推送,無需人工參與。3、支持動態(tài)令牌,由服務(wù)發(fā)布者定期更新令牌,服務(wù)消費更安全。4、支持自定義制定令牌在服務(wù)請求消息中的存儲方式,獲取令牌并實際動態(tài)控制到服務(wù)調(diào)用。WS-Security提供的可作為用來存儲令牌的ー種方式。
此處所說明的附圖用來提供對本發(fā)明的進ー步理解,構(gòu)成本發(fā)明的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中圖I是SOA服務(wù)消費者認證方案的服務(wù)架構(gòu)拓撲圖。圖2是本發(fā)明提供的ー種SOA服務(wù)消費者的認證方法的流程圖。
具體實施例方式為了使本發(fā)明所要解決的技術(shù)問題、技術(shù)方案及有益效果更加清楚、明白,以下結(jié)合附圖和實施例,對本發(fā)明進行進一歩詳細說明。應(yīng)當理解,此處所描述的具體實施例僅用以解釋本發(fā)明,并不用干限定本發(fā)明。本發(fā)明的技術(shù)方案是服務(wù)消費者通過攜帶認證令牌的方式,統(tǒng)ー監(jiān)控服務(wù)的實際使用情況,以增強服務(wù)安全消費及可控性,合理控制服務(wù)的調(diào)用,提供可參考的服務(wù)調(diào)用情況分析。如圖I所示,圖I為SOA服務(wù)消費者認證方案的服務(wù)架構(gòu)拓撲圖。由圖I可知,SOA服務(wù)消費者認證方案的服務(wù)架構(gòu)分為三層第一層是消費層,與服務(wù)消費者相關(guān);第ニ層是認證層,提供了服務(wù)消費者消費服務(wù)的認證機制;第三層是服務(wù)基礎(chǔ)結(jié)構(gòu)層,采用了 SOA治理理念由服務(wù)總線統(tǒng)ー管理服務(wù)接ロ,統(tǒng)ー發(fā)布。本發(fā)明的技術(shù)處于第二層,在服務(wù)消費者訪問服務(wù)總線的過程中進行了認證校驗。如圖2所示,本發(fā)明提供ー種SOA服務(wù)消費者的認證方法,包括 步驟I、認證令牌生成,服務(wù)消費者提交認證申請,獲取初始化認證令牌;具體包括I)服務(wù)消費者提交消費認證申請;2)服務(wù)發(fā)布者審批服務(wù)消費者提交的認證申請,提供接收認證令牌服務(wù)規(guī)范給服務(wù)消費者做服務(wù)實現(xiàn);3)服務(wù)消費者根據(jù)接收到的接收認證令牌服務(wù)規(guī)范開發(fā)接收認證令牌服務(wù)wsdl,并提供給服務(wù)發(fā)布者;4)服務(wù)發(fā)布者調(diào)用wsdl服務(wù)做測試,檢查wsdl服務(wù)是否正常使用,測試成功后登記該提供wsdl服務(wù)的服務(wù)消費者到服務(wù)消費者列表;5)服務(wù)發(fā)布者生成初始化認證令牌,并分配該初始化認證令牌給服務(wù)消費者,其中,認證令牌生成規(guī)則為服務(wù)消費者編號_密碼生成時間_8位隨即數(shù),如ffff_ERP_PCCW_20120101083030_53674578。生成后的認證令牌可通過各種加密方式加密,記錄到服務(wù)消費者列表,ー個服務(wù)消費者對應(yīng)唯一的認證令牌。
6)服務(wù)發(fā)布者調(diào)用接收服務(wù)推送認證令牌給服務(wù)消費者,跟蹤調(diào)用結(jié)果;7)服務(wù)發(fā)布者根據(jù)服務(wù)消費者的調(diào)用情況判斷調(diào)用成功后,確認認證令牌生效;8)服務(wù)發(fā)布者將認證令 牌生效的消息通知服務(wù)消費者。步驟2、認證令牌使用,服務(wù)消費者根據(jù)獲取的認證令牌,攜帯認證令牌調(diào)用服務(wù);具體包括I)服務(wù)消費者根據(jù)獲取的認證令牌,攜帯該認證令牌調(diào)用服務(wù);其中,認證令牌在服務(wù)調(diào)用請求消息中的存儲方式,可以通過WS-Security自帶的安全令牌存儲,也可以自定乂在服務(wù)接口中。2)服務(wù)發(fā)布者攔截服務(wù)消費者的調(diào)用請求,獲取調(diào)用請求的認證令牌。3)服務(wù)發(fā)布者對獲取到的認證令牌進行認證令牌校驗,如果校驗成功,放行服務(wù)調(diào)用請求,消費者成功調(diào)用服務(wù);如果校驗失敗,直接退回請求,提示調(diào)用失敗或認證失敗等服務(wù)提示,并消息通知服務(wù)消費者。其中,攔截服務(wù)請求獲取令牌做校驗的方式有多種,可以通過SOA中間件提供的接ロ封裝一層過濾器,也可以在發(fā)布的服務(wù)中添加一層校驗的功能,也可以基于SOA中間件之上再自定義封裝一層過濾器。步驟3、認證令牌更新,服務(wù)發(fā)布者定時更新與服務(wù)消費者匹配的認證令牌,并推送給服務(wù)消費者,啟用新認證令牌,作廢舊的認證令牌;具體包括I)服務(wù)發(fā)布者定時更新認證令牌,可以自定義更新規(guī)則,保存以下數(shù)據(jù)a)初始化認證令牌用做重置操作。b)上一次認證令牌用來彌補由于延時等原因引起的時間差異,允許在一定時間內(nèi),攜帯上一次認證令牌、新認證令牌都可以通過消費認證。c)新認證令牌該新認證令牌生效后,將撤銷上一次認證令牌。2)服務(wù)發(fā)布者調(diào)用接收服務(wù)推送認證令牌給服務(wù)消費者,如果推送成功,則新認證令牌生效;如果推送失敗,則新認證令牌更新失??;3)服務(wù)發(fā)布者將推送結(jié)果消息通知服務(wù)消費者。步驟4、認證令牌失效,服務(wù)發(fā)布者接到服務(wù)消費者停止消費服務(wù)的通知后,撤銷與之匹配的認證令牌;具體包括I)服務(wù)消費者提出停止消費服務(wù)的下線通知給服務(wù)發(fā)布者;2)服務(wù)發(fā)布者接到服務(wù)消費者停止消費服務(wù)的通知后,停止推送認證令牌;3)服務(wù)發(fā)布者從服務(wù)消費者列表中撤銷該服務(wù)消費者的記錄,撤銷與之匹配的認證令牌,攜帯該認證令牌的服務(wù)消費者不能通過消費認證,拒絕調(diào)用服務(wù);4)服務(wù)發(fā)布者將撤銷認證令牌的消息通知服務(wù)消費者。本發(fā)明提供一種面向服務(wù)架構(gòu)服務(wù)消費者的認證方法,服務(wù)消費者通過攜帶認證令牌訪問服務(wù),按照服務(wù)發(fā)布者的規(guī)則發(fā)送服務(wù)調(diào)用的消息,通過校驗后方可調(diào)用服務(wù)。通過本發(fā)明的技術(shù),服務(wù)消費者通過攜帶認證令牌的方式,統(tǒng)ー監(jiān)控服務(wù)的實際使用情況,增強服務(wù)安全消費及可控性,合理控制服務(wù)的調(diào)用;認證令牌采取自動推送,無需人工參與,以及支持動態(tài)令牌,由服務(wù)發(fā)布者定期更新令牌,服務(wù)消費更安全。上述說明示出并描述了本發(fā)明的ー個優(yōu)選實施例,但如前所述,應(yīng)當理解本發(fā)明并非局限于本文所披露的形式,不應(yīng)看作是對其他實施例的排除,而可用于各種其他組合、修改和環(huán)境,并能夠在本文所述發(fā)明構(gòu)想范圍內(nèi),通過上述教導或相關(guān)領(lǐng)域的技術(shù)或知識進行改動。而本領(lǐng)域人員所進行的改 動和變化不脫離本發(fā)明的精神和范圍,則都應(yīng)在本發(fā)明所附權(quán)利要求的保護范圍內(nèi)。
權(quán)利要求
1.一種面向服務(wù)架構(gòu)服務(wù)消費者的認證方法,其特征在于,包括 步驟I、服務(wù)消費者提交認證申請,獲取認證令牌; 步驟2、服務(wù)消費者根據(jù)獲取的認證令牌,攜帶認證令牌調(diào)用服務(wù)。
2.如權(quán)利要求I所述的方法,其特征在于,所述步驟I中,具體包括 步驟I. I)服務(wù)消費者根據(jù)服務(wù)發(fā)布者的規(guī)范提交消費認證申請; 步驟I. 2)服務(wù)發(fā)布者審批服務(wù)消費者的認證申請,生成并分配認證令牌給服務(wù)消費者。
3.如權(quán)利要求2所述的方法,其特征在于,所述步驟I.I中,具體包括 步驟I. I. I)服務(wù)消費者提交消費認證申請; 步驟I. I. 2)服務(wù)消費者接收服務(wù)發(fā)布者審批認證申請后發(fā)送的接收認證令牌服務(wù)規(guī)范開發(fā)接收認證令牌服務(wù),并提供給服務(wù)發(fā)布者。
4.如權(quán)利要求2所述的方法,其特征在于,所述步驟I.2中,具體包括 步驟I. 2. I)服務(wù)發(fā)布者審批服務(wù)消費者提交的認證申請,提供接收認證令牌服務(wù)規(guī)范給服務(wù)消費者; 步驟I. 2. 2)服務(wù)發(fā)布者調(diào)用接收認證令牌服務(wù)作測試,測試通過后登記提供接收認證令牌服務(wù)的服務(wù)消費者到服務(wù)消費者列表; 步驟I. 2. 3)服務(wù)發(fā)布者生成認證令牌,并分配所述認證令牌給服務(wù)消費者。
5.如權(quán)利要求2所述的方法,其特征在于,所述步驟I.2中,進一步包括 步驟I. 2. 4)服務(wù)發(fā)布者推送認證令牌給服務(wù)消費者,跟蹤調(diào)用結(jié)果; 步驟I. 2. 5)服務(wù)發(fā)布者根據(jù)服務(wù)消費者的調(diào)用情況判斷調(diào)用成功后,確認認證令牌生效; 步驟I. 2. 6)服務(wù)發(fā)布者將認證令牌生效的消息通知服務(wù)消費者。
6.如權(quán)利要求I所述的方法,其特征在于,所述步驟2,具體包括 步驟2. I)服務(wù)消費者根據(jù)獲取的認證令牌,攜帶認證令牌調(diào)用服務(wù); 步驟2. 2)服務(wù)發(fā)布者攔截服務(wù)消費者調(diào)用服務(wù)請求,獲取認證令牌; 步驟2. 3)服務(wù)發(fā)布者對獲取的認證令牌進行校驗,校驗成功,放行服務(wù)調(diào)用請求,消費者成功調(diào)用服務(wù);否則,直接退回請求,消息通知服務(wù)消費者。
7.如權(quán)利要求I所述的方法,其特征在于,所述方法進一步包括步驟3、服務(wù)發(fā)布者定時更新與服務(wù)消費者匹配的認證令牌。
8.如權(quán)利要求7所述的方法,其特征在于,所述步驟3具體包括 步驟3. I)服務(wù)發(fā)布者定時更新認證令牌; 步驟3. 2)服務(wù)發(fā)布者推送新認證令牌給服務(wù)消費者,推送成功,則新認證令牌生效;否則推送失敗,新認證令牌更新失敗。
9.如權(quán)利要求I所述的方法,其特征在于,所述方法進一步包括步驟4、服務(wù)發(fā)布者接到服務(wù)消費者停止消費服務(wù)的通知后,撤銷與之匹配的認證令牌。
10.如權(quán)利要求9所述的方法,其特征在于,所述步驟4具體包括 步驟4. I)服務(wù)消費者提出停止消費服務(wù)的下線通知給服務(wù)發(fā)布者; 步驟4. 2)服務(wù)發(fā)布者接到服務(wù)消費者停止消費服務(wù)的通知后,停止推送認證令牌; 步驟4. 3)服務(wù)發(fā)布者從服務(wù)消費者列表中撤銷所述服務(wù)消費者的記錄,撤銷與之匹配的認證 令牌。
全文摘要
本發(fā)明提供一種面向服務(wù)架構(gòu)服務(wù)消費者的認證方法,包括步驟1、服務(wù)消費者提交認證申請,獲取認證令牌;步驟2、服務(wù)消費者根據(jù)獲取的認證令牌,攜帶認證令牌調(diào)用服務(wù)。通過本發(fā)明提供的一種面向服務(wù)架構(gòu)服務(wù)消費者的認證方法,服務(wù)消費者通過攜帶認證令牌的方式,統(tǒng)一監(jiān)控服務(wù)的實際使用情況,增強服務(wù)安全消費及可控性,合理控制服務(wù)的調(diào)用。
文檔編號H04L9/32GK102739405SQ201210233840
公開日2012年10月17日 申請日期2012年7月6日 優(yōu)先權(quán)日2012年7月6日
發(fā)明者程默 申請人:深圳市遠行科技有限公司