為不同服務(wù)器間的單一登錄使用x.509驗(yàn)證的制作方法
【專利說明】為不同服務(wù)器間的單一登錄使用X.509驗(yàn)證
[0001]背景
[0002]當(dāng)前,許多商業(yè)和政府組織使用用于執(zhí)行各種商業(yè)功能并提供服務(wù)的企業(yè)軟件。商業(yè)功能可以包括預(yù)訂處理、采購、生產(chǎn)調(diào)度、客戶信息管理、能量管理以及會計(jì)。企業(yè)軟件所提供的服務(wù)一般是面向商業(yè)的工具,諸如在線購物和在線支付處理、交互式產(chǎn)品目錄、自動(dòng)化記賬系統(tǒng)、安全性、企業(yè)內(nèi)容管理、IT服務(wù)管理、客戶關(guān)系管理、企業(yè)資源計(jì)劃、商業(yè)智能、項(xiàng)目管理、合作、人力資源管理、制造、企業(yè)應(yīng)用集成以及企業(yè)表單自動(dòng)化。企業(yè)軟件一般托管于服務(wù)器上,并且一般通過計(jì)算網(wǎng)絡(luò)向大量用戶提供同時(shí)服務(wù)。這與單用戶應(yīng)用相反,單用戶應(yīng)用執(zhí)行于用戶的個(gè)人計(jì)算機(jī)上并且一次僅服務(wù)于一個(gè)用戶。由許多商業(yè)和政府組織使用的企業(yè)軟件包括來自德國沃爾多夫的SAP AG公司的SAP應(yīng)用。
[0003]企業(yè)軟件通常與單獨(dú)服務(wù)器托管的web應(yīng)用平臺集成,以使用戶能通過發(fā)起自web應(yīng)用平臺服務(wù)器至企業(yè)軟件服務(wù)器的“登錄”操作(即,用戶名登錄),遠(yuǎn)程地訪問企業(yè)軟件服務(wù)器所托管的數(shù)據(jù)。一種這樣的web應(yīng)用平臺可以包括來自華盛頓州雷德蒙市的微軟公司的SHAREP0INT服務(wù)器。與訪問web應(yīng)用平臺服務(wù)器和企業(yè)軟件服務(wù)器之間的數(shù)據(jù)相關(guān)聯(lián)的一個(gè)已知問題是與驗(yàn)證相關(guān)聯(lián),該驗(yàn)證是執(zhí)行單一登錄操作以允許訪問企業(yè)軟件服務(wù)器上的數(shù)據(jù)所需的全部各種安全性設(shè)置和數(shù)據(jù)訪問特權(quán)。以前用于解決上述問題的方案包括使用具有開放式數(shù)據(jù)協(xié)議(“OData”)的安全性斷言標(biāo)記語言(“SAML”)令牌驗(yàn)證。OData由一些web應(yīng)用平臺軟件和企業(yè)應(yīng)用軟件應(yīng)用使用,用于通過超文本傳輸協(xié)議(“HTTP”)查詢和更新數(shù)據(jù),包括SHAREP0INT服務(wù)器應(yīng)用軟件和SAP應(yīng)用軟件。然而,OData不規(guī)定與SAML —起使用時(shí)的任何驗(yàn)證方法。針對這些及其他考慮因素,作出本發(fā)明的各個(gè)實(shí)施例。
[0004]概述
[0005]提供該概述以便以簡化形式引入概念的選集,概念將在以下詳細(xì)描述中進(jìn)一步描述。該概述不意圖標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或基本特征,也不意圖幫助確定所要求保護(hù)的主題的范圍。
[0006]提供多個(gè)實(shí)施例以使用驗(yàn)證方案來便于不同服務(wù)器間的單一登錄操作。一個(gè)或多個(gè)服務(wù)器(例如,SHAREP0INT服務(wù)器)接收指向不同服務(wù)器(例如,SAP服務(wù)器)的數(shù)據(jù)請求。加載根證書(例如,X.509根證書)以經(jīng)由單一登錄操作訪問該不同服務(wù)器。動(dòng)態(tài)地生成用戶證書以標(biāo)識已登錄的用戶。然而應(yīng)當(dāng)理解,在替代實(shí)施例中,用戶證書可以在配置期間預(yù)先生成,并且被存儲于安全存儲服務(wù)中。在用戶證書生成之后,用戶證書用根證書來簽名,并且被發(fā)送至該不同服務(wù)器以與數(shù)據(jù)請求綁定。數(shù)據(jù)請求被發(fā)送至該不同服務(wù)器以便使用用戶證書來驗(yàn)證。該不同服務(wù)器訪問映射表以映射用戶證書中的主題名。當(dāng)在映射表中找到已登錄用戶的條目時(shí),在多個(gè)服務(wù)器間啟用數(shù)據(jù)操作。然后從該不同服務(wù)器接收包含所請求的數(shù)據(jù)的開放式web協(xié)議響應(yīng)。
[0007]這些及其他特征和優(yōu)點(diǎn)將從閱讀以下詳細(xì)描述及瀏覽相關(guān)附圖后顯而易見。應(yīng)當(dāng)理解,以上概述及以下詳細(xì)描述都僅僅是說明性的,而不限制所要求保護(hù)的發(fā)明。
[0008]附圖簡述
[0009]圖1是圖示按照各個(gè)實(shí)施例、為不同服務(wù)器間的單一登錄使用驗(yàn)證方案的網(wǎng)絡(luò)體系結(jié)構(gòu)的框圖;
[0010]圖2是圖示按照各個(gè)實(shí)施例、在執(zhí)行不同服務(wù)器間的單一登錄時(shí)使用的用戶映射表的框圖;
[0011]圖3是圖示按照各個(gè)實(shí)施例、為不同服務(wù)器間的單一登錄使用驗(yàn)證方案的例程的流程圖;
[0012]圖4是可用其實(shí)現(xiàn)各個(gè)實(shí)施例的計(jì)算設(shè)備的簡化框圖;
[0013]圖5A是可用其實(shí)現(xiàn)各個(gè)實(shí)施例的移動(dòng)計(jì)算設(shè)備的簡化框圖;
[0014]圖5B是可用其實(shí)現(xiàn)各個(gè)實(shí)施例的移動(dòng)計(jì)算設(shè)備的簡化框圖;以及
[0015]圖6是可用其實(shí)現(xiàn)各個(gè)實(shí)施例的分布式計(jì)算設(shè)備的簡化框圖。
[0016]詳細(xì)描述
[0017]提供了使用驗(yàn)證方案來便于不同服務(wù)器間的單一登錄操作的實(shí)施例。一個(gè)或多個(gè)服務(wù)器(例如,SHAREP0INT服務(wù)器)接收指向不同服務(wù)器(例如,SAP服務(wù)器)的數(shù)據(jù)請求。加載根證書(例如,X.509根證書)以經(jīng)由單一登錄操作訪問該不同服務(wù)器。動(dòng)態(tài)地生成用戶證書以標(biāo)識已登錄的用戶。然后,用戶證書用根證書來簽名,并且被發(fā)送至該不同服務(wù)器以與數(shù)據(jù)請求綁定。數(shù)據(jù)請求被發(fā)送至該不同服務(wù)器以便使用用戶證書來驗(yàn)證。該不同服務(wù)器訪問映射表以映射用戶證書中的主題名。應(yīng)當(dāng)理解,在咨詢映射表之前,該不同服務(wù)器可以確認(rèn)用戶證書是有效的。由于該不同服務(wù)器之前被配置以知曉根證書,因此該不同服務(wù)器可以使用該知識來驗(yàn)證該數(shù)據(jù)請求來自于受信任的始發(fā)服務(wù)器。當(dāng)在映射表中找到已登錄用戶的條目時(shí),在服務(wù)器之間啟用數(shù)據(jù)操作。然后,從該不同服務(wù)器接收包含所請求的數(shù)據(jù)的開放式web協(xié)議響應(yīng)。
[0018]在以下詳細(xì)描述中,參照形成詳細(xì)描述一部分的附圖,附圖中通過圖示示出具體的實(shí)施例或示例。這些實(shí)施例可以被組合,其他實(shí)施例可被使用,且可以作出結(jié)構(gòu)上的變化,而不背離本發(fā)明的精神或范圍。因此,以下詳細(xì)描述并非是限制性的,本發(fā)明的范圍由所附權(quán)利要求及其等價(jià)物限定。
[0019]現(xiàn)在參照附圖,其中相同的數(shù)字表示幾個(gè)附圖中的相同元件,將描述本發(fā)明的各個(gè)方面。圖1是圖示按照各個(gè)實(shí)施例、為不同服務(wù)器間的單一登錄使用驗(yàn)證方案的網(wǎng)絡(luò)體系結(jié)構(gòu)的框圖。網(wǎng)絡(luò)體系結(jié)構(gòu)包括與服務(wù)器30通信的一個(gè)或多個(gè)服務(wù)器10(下文中稱為“服務(wù)器10”)。按照一實(shí)施例,服務(wù)器10可以包括被配置成執(zhí)行來自華盛頓州雷德蒙市的微軟公司的SHAREP0INT服務(wù)器的一個(gè)或多個(gè)計(jì)算機(jī)。應(yīng)當(dāng)理解,按照實(shí)施例,服務(wù)器10可包括多個(gè)計(jì)算機(jī)(即,服務(wù)器場),其中每個(gè)服務(wù)器被配置成執(zhí)行上述的SHAREP0INT服務(wù)器應(yīng)用。然而應(yīng)當(dāng)理解,按照此處描述的各種實(shí)施例,可以使用來自其他制造商的其他服務(wù)器應(yīng)用。按照一實(shí)施例,服務(wù)器30可以包括SAP網(wǎng)關(guān),SAP網(wǎng)關(guān)被配置成執(zhí)行來自德國沃爾多夫的SAPAG公司的SAP應(yīng)用。如本領(lǐng)域技術(shù)人員已知的,SAP應(yīng)用可由企業(yè)用來執(zhí)行各種商業(yè)功能并提供服務(wù)。商業(yè)功能可以包括預(yù)訂處理、采購、生產(chǎn)調(diào)度、客戶信息管理、能量管理以及會計(jì)。服務(wù)可以包括面向商業(yè)的工具,諸如在線購物和在線支付處理、交互式產(chǎn)品目錄、自動(dòng)化記賬系統(tǒng)、安全性、企業(yè)內(nèi)容管理、IT服務(wù)管理、客戶關(guān)系管理、企業(yè)資源計(jì)劃、商業(yè)智能、項(xiàng)目管理、合作、人力資源管理、制造、企業(yè)應(yīng)用集成以及企業(yè)表單自動(dòng)化。然而應(yīng)當(dāng)理解,按照此處描述的各種實(shí)施例,可以使用來自其他制造商的其他企業(yè)軟件。
[0020]按照一實(shí)施例,服務(wù)器10和30可各由管理員2和4(例如,SHAREP0INT管理員和SAP管理員)使用。特別是,管理員2可以使用應(yīng)用12來發(fā)起根證書6的創(chuàng)建以及根證書6到管理員4的傳送。管理員4可以發(fā)起將根證書6存儲于服務(wù)器30上的證書信任存儲32中。按照一實(shí)施例,根證書6可以包括X.509根證書。如本領(lǐng)域技術(shù)人員已知的,X.509是用于公鑰架構(gòu)(“PKI”)和特權(quán)管理架構(gòu)(“PMI”)的ITU-T標(biāo)準(zhǔn)。此外,X.509可以指定公鑰證書的標(biāo)準(zhǔn)格式、證書撤銷列表、屬性證書以及證書路徑確認(rèn)算法。在X.509系統(tǒng)中,證書機(jī)構(gòu)可以發(fā)布一證書,該證書將公鑰綁定至特定區(qū)別名稱或綁定至諸如電子郵件地址或DNS條目這樣的替代名稱。應(yīng)當(dāng)理解,服務(wù)器10也可由終端用戶70用來檢索所請求的數(shù)據(jù)。例如,按照一實(shí)施例,終端用戶70可以使用瀏覽器應(yīng)用72來登錄至SHAREPOINI^g務(wù)器來進(jìn)行數(shù)據(jù)檢索。
[0021]服務(wù)器10可以包括應(yīng)用12、應(yīng)用配置應(yīng)用程序接口( “API”)14、安全存儲服務(wù)16、應(yīng)用開放式數(shù)據(jù)協(xié)議(“Odata”)擴(kuò)展提供者18以及商業(yè)連接服務(wù)(“BCS”)/混合遙控者20。按照一實(shí)施例,應(yīng)用12可以包括由微軟公司和SAP AG公司聯(lián)合開發(fā)的DUETENTERPRISE軟件,微軟公司位于華盛頓州雷德蒙市,SAP AG公司位于德國沃爾多夫。如本領(lǐng)域技術(shù)人員已知的,DUET ENTERPRISE軟件通過將協(xié)作和生產(chǎn)與商業(yè)數(shù)據(jù)和過程組合,混合了 SAP和SHAREP0INT功能。如以下參照圖3進(jìn)一步詳述,應(yīng)用12可以被配置成使用根證書6來動(dòng)態(tài)地創(chuàng)建用于啟用與服務(wù)器30的單一登錄操作的用戶證書。
[0022]應(yīng)用配置API 14可被用于接收應(yīng)用12所創(chuàng)建的根證書6,并且用于將根證書6存儲于安全存儲服務(wù)16中。應(yīng)用OData推廣者18是用于BCS/混合遙控者20的軟件插件。應(yīng)用OData擴(kuò)展提供者18可以被配置成從除域用戶以外的安全存儲服務(wù)16接收根證書6。OData擴(kuò)展提供者18也可以被配置成輸出動(dòng)態(tài)創(chuàng)建的用戶證書8以啟用與服務(wù)器30的