專利名稱:單一登入方法
技術領域:
本發(fā)明是有關于一種登入方法,尤其涉及一種單一登入方法。
背景技術:
單一登入(Single Sign-On,簡稱為SSO)機制是指多個應用系統(tǒng)(applications)經(jīng)過集成之后,使用者只要經(jīng)過一次身份認證(通常為帳號/密碼)登入后,即可使用這些應用系統(tǒng)的服務,而不必在每切換到一個應用系統(tǒng)時就要再做一次登入動作。在這里,應用系統(tǒng)是為了某種特定的用途而被開發(fā)的軟件,它可以是一個特定的程序,也可以是一個由眾多獨立程序組成的龐大的軟件系統(tǒng),如ERP(企業(yè)資源計劃)、CRM (客戶關系管理)系統(tǒng)。
以企業(yè)信息入口網(wǎng)站(Enterprise Information Portal,簡稱為EIP)為例,其集成多個應用系統(tǒng)的服務,如新聞瀏覽、收發(fā)電子郵件、行事歷、專案計劃管理、ERP、 CRM等應用系統(tǒng),如果沒有SSO機制,使用者在進入各應用系統(tǒng)前都必須執(zhí)行登入動作以進行身份認證,相當不便。所以,對使用者而言,SSO機制可以減少多次身份認證所花費的時間,還可以避免同時保有多個身份認證信息而產(chǎn)生混淆的可能性;對管理者而言,能通過單一的維護機制來管理帳號的變化,減少維護的成本。
SSO機制對于Web應用系統(tǒng)已有解決方案,目前的做法通常是將所有Web應用系統(tǒng)集成到一個伺服器,由所述伺服器在驗證身份認證信息成功后產(chǎn)生登入鑰匙(SignOnKey,簡稱為SOK)并設定到使用者端的Cookie,用來表示已經(jīng)登入,而后通過網(wǎng)頁瀏覽的機制來存取Cookie中的登入鑰匙,使用者不必在每切換到一個Web應用系統(tǒng)時就要再做一次登入動作。但是,目前這樣的SSO機制對于Non-Web應用系統(tǒng)不能達到預期的效果,這是因為Non-Web應用系統(tǒng)無法以瀏覽器進行網(wǎng)頁的瀏覽、操作,導致無法取得Cookie中的登入鑰匙,也就不能達到SSO的效果。有一種做法是將Non-Web應用系統(tǒng)加以Web化,但這樣必須去修改原Non-Web應用系統(tǒng),既花費時間金錢還可能產(chǎn)生原本沒有的錯誤(bug)。在這里,Web應用系統(tǒng)是一種可通過瀏覽器瀏覽操作的應用系統(tǒng),其使用者接口為超文本(hypertext)可由網(wǎng)頁瀏覽器顯示;而Non-Web應用系統(tǒng)不是通過瀏覽器執(zhí)行的應用系統(tǒng),例如以VB、 C/C++、 Delphi...等程序語言所發(fā)展的應用系統(tǒng)。
由于大部分企業(yè)的舊系統(tǒng)(legacy system)仍有很多Non-Web應用系統(tǒng),因此很需要一種SSO機制,在不影響原有Non-Web應用系統(tǒng)架構(gòu)下,讓使用者只要經(jīng)過一次身份認證登入后,即可在Web應用系統(tǒng)及/或Non-Web應用系統(tǒng)之間切換時不必再做任何登入動作。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種單一登入方法,在不影響原有Non-Web應用系統(tǒng)架構(gòu)下達到Web及Non-Web應用系統(tǒng)之間的單一登入效果。
為了達成上述目的與其他目的,本發(fā)明提供了一種單一登入方法,適用于一單一登入系統(tǒng),所述單一登入系統(tǒng)包括用戶端計算機、單一登入伺服器以及驗證伺服器,且用戶端計算機中安裝Non-Web應用系統(tǒng)。在此方法中,在以一身份認證信息第一次成功登入單一登入系統(tǒng)后,單一登入伺服器產(chǎn)生一登入鑰匙并存放在用戶端計算才幾中,接下來即可在Web及Non-Web應用系統(tǒng)之間切換而不必再次登入。首先,在網(wǎng)頁上點擊與Non-Web應用系統(tǒng)有關的超鏈接,以啟動超鏈接所鏈接到的JNLP文件產(chǎn)生程序,JNLP文件產(chǎn)生程序在單一登入伺服器中執(zhí)行。接著,JNLP文件產(chǎn)生程序動態(tài)產(chǎn)生一 JNLP文件,并4爪取用戶端計算機中的登入鑰匙作為JNLP文件的參數(shù)。用戶端計算機會讀取JNLP文件,以觸發(fā)安裝在用戶端計算機的Java Web Start應用程序。然后,用戶端計算機從單一登入伺服器下載一啟動程序,并在用戶端計算機中執(zhí)行啟動程序,啟動程序?qū)⒂蒍NLP文件取得的登入鑰匙通過一網(wǎng)絡服務(web service)向單一登入伺服器要求驗證。若驗證成功,則單一登入伺服器將經(jīng)過認證后的身份認證信息回傳到用戶端計算機。最后,啟動程序以經(jīng)過認證后的身份認證信息登入并啟動Non-Web應用系統(tǒng)。
本發(fā)明在已登入此單一登入系統(tǒng)而在用戶端計算機上設置有登入鑰匙的情形下,因采用Java Web Start技術而能在網(wǎng)頁瀏覽器顯示的網(wǎng)頁上點擊與Non-Web應用系統(tǒng)有關的超鏈接之后,動態(tài)產(chǎn)生JNLP文件且加入登入鑰匙作為一參數(shù),進而在用戶端計算機上執(zhí)行啟動程序,通過網(wǎng)絡服務安全機制傳送登入鑰匙到單 一登入伺服器配合驗證伺服器進行驗證并回傳驗證結(jié)果,驗證成
功則得以登入并啟動Non-Web應用系統(tǒng)。因此,在不影響原有Non-Web應用系統(tǒng)架構(gòu)下達到Web及Non-Web應用系統(tǒng)之間的單一登入效果。
圖1為依照本發(fā)明一實施例所繪示的單一登入系統(tǒng)的方塊圖2A及圖2B為依照本發(fā)明一實施例所繪示的單一登入方法的流程圖,顯示使用者預備登入一 Web應用系統(tǒng)的各個步驟;
圖3A及圖3B為依照本發(fā)明 一 實施例所繪示的單一登入方法的流程圖,顯示使用者預備登入一 Non-Web應用系統(tǒng)的各個步驟。
附圖標記說明100-單一登入(SSO)系統(tǒng);110-用戶端計算機;112-網(wǎng)頁瀏覽器;114-Cookie; 116-Non-Web應用系統(tǒng);120-網(wǎng)頁伺服器;126-Web應用系統(tǒng);130-單一登入(SSO)伺服器;132-JNLP文件產(chǎn)生程序;134-啟動程序;140-驗證伺服器;200-網(wǎng)絡;S201-請求Web應用系統(tǒng)的登入頁面;S203-重導到SSO系統(tǒng)的登入頁面;S205-判斷是否第一次登入;S207-第一次登入,要求輸入帳號/密碼;S209-輸入帳號/密碼;S211-請求驗證帳號/密碼;S213-驗證;S215-驗證結(jié)果;S217-驗證成功,產(chǎn)生SOK和ST; S219-將SOK寫入Cookie; S221-將ST回傳;S223-請求驗證ST/Web應用系統(tǒng)的網(wǎng)址;S225-驗證;S227-驗證成功,將帳號回傳;S229-登入Web應用系統(tǒng);S231-重導到Web應用系統(tǒng)登入后首頁;S301-點擊網(wǎng)頁上Non-Web應用系統(tǒng)的超鏈接導到網(wǎng)頁伺服器;S303-導到JNLP文件產(chǎn)生程序;S305-JNLP文件產(chǎn)生程序抓取Cookie中的SOK; S307-將SOK作為參數(shù)加入產(chǎn)生的JNLP文件;S309-網(wǎng)頁瀏覽器讀取JNLP文件而觸發(fā)JWS;S311-下載啟動程序;S313-執(zhí)行啟動程序;S315-取得SSO伺服器的公鑰;S317-產(chǎn)生對稱加密用的SK; S319-以公鑰加密SOK及SK; S321-傳送加密后的SOK及SK; S323-用SSO伺服器的私鑰解密;S325-請求驗證SOK; S327-驗證;S329-驗證結(jié)果;S331-驗證成功,以SK加密帳號;S333-傳送加密后的帳號;S335-解密取得帳號,以此帳號登入Non-Web應用系統(tǒng)。
具體實施例方式
以下結(jié)合附圖,對發(fā)明上述的和另外的技術特征和優(yōu)點作更詳細的說明。圖1為依照本發(fā)明一實施例所繪示的單一登入系統(tǒng)的方塊圖。請參照圖1,
6本發(fā)明的單一登入(SSO)系統(tǒng)100包括用戶端計算機110、網(wǎng)頁伺服器120、單 一登入(SSO)伺服器130以及驗證伺服器140,彼此之間通過網(wǎng)絡200相連接。 雖然本實施例中SSO系統(tǒng)100包括一臺用戶端計算機110、一臺網(wǎng)頁伺服器120、 一臺SSO伺服器130以及一臺驗證伺服器140,但并非僅限于此;例如,本發(fā) 明的SSO系統(tǒng)可以包括多臺用戶端計算機以及多臺網(wǎng)頁伺服器,這些用戶端計 算機可以分別提供各自的使用者進行單一登入動作,而這些網(wǎng)頁伺服器可以分 別掛載(plug in)不同的Web應用系統(tǒng),讓使用者通過網(wǎng)絡使用不同的Web應用 系統(tǒng)。另夕卜,網(wǎng)絡200可以是互聯(lián)網(wǎng)(Internet)/企業(yè)內(nèi)部網(wǎng)絡(Intranet)/企業(yè)外部 網(wǎng)絡(Extranet)、區(qū)域網(wǎng)絡/廣域網(wǎng)絡,但并非僅限于此。
所述用戶端計算機110為安裝有用戶端程序(client)的本地端計算機。在這 里,計算機為根據(jù)一系列指令來對數(shù)據(jù)進行處理的機器,如個人計算機、行動 電話、個人數(shù)字助理(PDA)等;用戶端程序為安裝在如用戶端計算機110的本地 端計算機上,為使用者提供本地服務的程序,如網(wǎng)頁瀏覽器112;用戶端程序通 過網(wǎng)絡與伺服端程序(server)互相配合運行,其中伺服端程序安裝在如伺服器 120、 130、 140的遠端計算機上,管理資源并為使用者提供服務的程序,如微軟 公司的IIS伺服端程序。另外,用戶端計算機110還可安裝有Non-Web應用系 統(tǒng)116。
所述網(wǎng)頁伺服器120為管理Web應用系統(tǒng)126的網(wǎng)頁元件(如登入頁面等) 和回應所述網(wǎng)頁瀏覽器112的請求的計算機。在本實施例中,所述Web應用系 統(tǒng)126掛載到所述網(wǎng)頁伺服器120上,因此使用者可借著所述網(wǎng)頁瀏覽器112 通過網(wǎng)絡200溝通網(wǎng)頁伺服器120,進而遠端操作所述Web應用系統(tǒng)126,但并 不僅限于此;例如,所述Web應用系統(tǒng)126可放在專門的應用系統(tǒng)伺服器 (application server)。所述SSO伺服器130為管理所述SSO系統(tǒng)100的網(wǎng)頁元件 (如登入頁面、JNLP文件產(chǎn)生程序132、啟動程序134等)和回應所述網(wǎng)頁瀏覽 器112的請求的計算機。在本實施例中,所述SSO伺服器130將配合所述驗證 伺服器140對使用者輸入的身份認證信息(如帳號/密碼)進行驗證。
圖2A~圖3B為依照本發(fā)明實施例所繪示的單一登入方法的流程圖,適用 于圖1所示的SSO系統(tǒng)100。其中,圖2A及圖2B以Pl P4相連接,顯示使 用者預備登入一 Web應用系統(tǒng)的各個步驟;而圖3A及圖3B以Ql Q4相連接, 顯示使用者預備登入一 Non-Web應用系統(tǒng)的各個步驟。
請先同時參照圖1、圖2A及圖2B,使用者預備登入Web應用系統(tǒng)126。使用者通過所述用戶端計算機110的網(wǎng)頁瀏覽器112的操作,如直接輸入所述
Web應用系統(tǒng)126的URL(或稱為網(wǎng)頁地址、網(wǎng)址),使所述網(wǎng)頁瀏覽器112向 所述網(wǎng)頁伺服器120請求所述Web應用系統(tǒng)126的登入頁面(S201)。所述網(wǎng)頁 伺服器120接收到所述網(wǎng)頁瀏覽器112的請求后,并不會將所述Web應用系統(tǒng) 126的登入頁面導向所述網(wǎng)頁瀏覽器112顯示,而是重導到所述SSO系統(tǒng)100 的登入頁面(S203),此時相當于所述網(wǎng)頁瀏覽器112向所述SSO伺月良器130請 求放在所述SSO祠服器130的SSO系統(tǒng)100的登入頁面。所述SSO伺服器130 判斷使用者是否第一次登入所述SSO系統(tǒng)100 (S205),若是則將所述SSO系統(tǒng) 100的登入頁面導向所述網(wǎng)頁瀏覽器112顯示,要求使用者輸入身份認證信息, 在本實施例為帳號/密碼(S207)。
當使用者輸入帳號/密碼(S209)之后,SSO伺服器130向驗證伺服器140請 求驗證使用者輸入的帳號/密碼(S211)。驗證伺服器140對此帳號/密碼進行驗證 (S213),此時驗證伺服器140需要向用來管理使用者身份認證信息的數(shù)據(jù)庫(圖 中未繪示,如Oracle、 SQL Server等等)要求驗證。SSO伺服器130接收驗證伺 服器140回傳的驗證結(jié)果(S215),若驗證結(jié)果為驗證失敗,則SSO伺服器130 將驗證失敗的網(wǎng)頁導向網(wǎng)頁瀏覽器112顯示;若驗證結(jié)果表示驗證成功,則SSO 伺服器130產(chǎn)生一登入鑰匙(Sign On Key,簡稱為SOK)及一服務票據(jù)(Service Ticket,簡稱為ST)(S217),其中登入鑰匙(SOK)例如是依據(jù)使用者帳號、SSO伺 服器130的網(wǎng)址、鑰匙有效時間等信息編碼后的字串,用以提供是否已登入SSO 系統(tǒng)100的驗證;而服務票據(jù)(ST)例如是依據(jù)登入鑰匙(SOK)、Web應用系統(tǒng)126 的名稱或網(wǎng)址等信息編碼后的字串,用以提供登入Web應用系統(tǒng)126的驗證, 且可據(jù)以向SSO伺服器130請求其它Web應用系統(tǒng)的服務票據(jù)(ST)而達成SSO 效果。SSO伺服器130將此登入鑰匙(SOK)寫入到用戶端計算機110中網(wǎng)頁瀏覽 器112的臨時文本文件Cookie 114 (S219),并將此服務票據(jù)(ST)回傳到網(wǎng)頁伺服 器120 (S221),即將此服務票據(jù)(ST)當作參數(shù)加在Web應用系統(tǒng)126的URL后 面來回4專。
系統(tǒng)126,但是為了防止第三者在將此服務票據(jù)(ST)回傳到網(wǎng)頁伺服器120的時 候通過在URL后面加入其它服務票據(jù)(ST),進而非法取得其它Web應用系統(tǒng)的 使用權(quán)限,因此在網(wǎng)頁伺服器120取得此服務票據(jù)(ST)之后,必須先向SSO伺 服器130請求驗證(S223)。 SSO伺服器130對服務票據(jù)(ST)及其相應的Web應用系統(tǒng)126的名稱或網(wǎng)址進行驗證(S225),若驗證失敗,則SSO伺服器130將 驗證失敗的網(wǎng)頁導向網(wǎng)頁瀏覽器112顯示;若驗證成功,則SSO伺服器130回 傳前述第一次登入使用者所輸入且經(jīng)過驗證成功的帳號到網(wǎng)頁伺服器120 (S227),網(wǎng)頁伺服器120將以此帳號登入Web應用系統(tǒng)126 (S229),并將Web 應用系統(tǒng)126登入后的首頁重導到網(wǎng)頁瀏覽器112顯示(S231),此時使用者可通 過網(wǎng)頁瀏覽器112以此帳號操作Web應用系統(tǒng)126。
在此必須說明,圖2A及圖2B所示僅是本發(fā)明的單一登入方法在使用者預 備登入一 Web應用系統(tǒng)126的一實施例,但并非僅限于此。事實上,只要第一 次登入后可產(chǎn)生登入鑰匙(SOK)且登入鑰匙(SOK)可通過網(wǎng)絡流通散播的單一登 入方法均適用于本發(fā)明。另外,在步驟S207、 S209、 S211由于會傳送帳號/密 碼,因此必須采用如SSL、 TLS等的網(wǎng)絡安全傳輸協(xié)議來傳送信息。
請再同時參照圖1、圖3A及圖3B,在已登入SSO系統(tǒng)100的前提下,即 SSO系統(tǒng)100已產(chǎn)生有登入鑰匙(SOK),使用者預備登入Non-Web應用系統(tǒng)116。 使用者在網(wǎng)頁瀏覽器112所顯示的網(wǎng)頁上點擊與Non-Web應用系統(tǒng)116有關的 超鏈接(hyperlink),這個超鏈接將鏈接導到一網(wǎng)頁伺服器,例如是網(wǎng)頁伺服器120 (S301),接著這個網(wǎng)頁伺服器120再將這個鏈接導到SSO伺服器130的JNLP 文件產(chǎn)生程序132 (S303),其中JNLP為Java Network Launching Protocol (Java 網(wǎng)絡載入?yún)f(xié)議)的簡稱。JNLP文件產(chǎn)生程序132其實是一個在伺服器上執(zhí)行的程 序(servlet),用以動態(tài)產(chǎn)生JNLP文件,而JNLP文件用以觸發(fā)本地端計算機的 Java Web Start (簡稱JWS)應用程序。
當使用者借著用戶端計算機110的網(wǎng)頁瀏覽器112對網(wǎng)頁伺服器12 0進行 要求時,網(wǎng)頁瀏覽器112會對網(wǎng)頁伺服器120送出一些信息,如表單、Cookie 等信息,這些信息將會儲存在網(wǎng)頁伺服器120的Request物件中。當網(wǎng)頁伺服器 120將鏈接導到SSO伺服器130,這些網(wǎng)頁瀏覽器112送出的信息會跟著傳送并 儲存在SSO伺服器130的R叫uest物件中。因此,在JNLP文件產(chǎn)生程序132 產(chǎn)生JNLP文件的過程中,就可以借著Request物件的操作而從SSO伺服器130 的Request物件所包含的Cookie中取得登入鑰匙(SOK),此相當于JNLP文件產(chǎn) 生程序132從用戶端計算機110抓取Cookie 114中的登入鑰匙(SOK)(S305),將 其作為一個參數(shù)加入JNLP文件中(S307)。接著網(wǎng)頁瀏覽器112自動讀取JNLP 文件而觸發(fā)用戶端計算機110的JWS應用程序(S309), JWS應用程序接著從SSO 伺服器130下載一啟動程序134 (S311)暫存在用戶端計算機110,并執(zhí)行此啟動程序134(S3B)。此時啟動程序134已借著JNLP文件取得登入鑰匙(SOK),接 下來啟動程序134將通過網(wǎng)絡服務安全(web service security)機制向SSO伺服器 130請求驗證登入鑰匙(SOK),驗證成功則得以登入并啟動Non-Web應用系統(tǒng) 116而不需要使用者再進行一次登入動作,達到SSO效果。
以下將詳細說明啟動程序134通過網(wǎng)絡服務安全機制向SSO伺服器130請 求驗證登入鑰匙(SOK),驗證成功則得以登入并啟動Non-Web應用系統(tǒng)116。首
這個公鑰是公開而可供下載,任何要傳送到SSO伺服器130的信息均可以此公 鑰加密,SSO伺服器130接收到以此公鑰加密的信息后再以其私鑰解密即可取 得此信息,這個私鑰則是不公開而只有SSO伺服器130擁有。
接著,用戶端計算機110隨機產(chǎn)生作對稱加密用的對稱鑰匙(SessionKey, 簡稱為SK)(S317),這個對稱鑰匙(SK)將連同登入鑰匙(SOK)以SSO伺服器130 的公鑰加密(S319)后再回傳給SSO伺服器130 (S321)。再來,SSO伺服器130 用SSO伺服器130的私鑰解密取得對稱鑰匙(SK)及登入鑰匙(SOK)(S323),此時 用戶端計算機110及SSO伺服器130都擁有對稱鑰匙(SK),因此SSO伺服器130 可以此對稱鑰匙(SK)加密信息后再傳送到用戶端計算機110,用戶端計算機110 就可以此對稱鑰匙(SK)解密而取得SSO伺服器130傳送的信息。
SSO伺服器130用私鑰解密后還會取得登入鑰匙(SOK),其會向驗證伺服器 140請求驗證此登入鑰匙(SOK)(S325)。驗證伺服器140對登入鑰匙(SOK)進行驗 證(S327)后將驗證結(jié)果回傳SSO祠服器130 (S329),若驗證結(jié)果為驗證失敗,則 SSO伺服器130將驗證失敗的網(wǎng)頁導向網(wǎng)頁瀏覽器112顯示;若驗證結(jié)果表示 驗證成功,表示使用者已經(jīng)輸入帳號/密碼成功登入過SSO系統(tǒng)100,因此SSO 伺服器130將此認證后的帳號以對稱鑰匙(SK)加密(S331),然后回傳到用戶端計 算機110(S333)。最后,用戶端計算機IIO再以對稱鑰匙(SK)解密取得此認證后 的巾長號,以此巾艮號登入用戶端計算才幾110上的Non-Web應用系統(tǒng)116。
綜上所述,本發(fā)明在已登入SSO系統(tǒng)100而在用戶端計算機110上設置有 登入鑰匙(SOK)的情形下,因采用Java Web Start技術而能在網(wǎng)頁瀏覽器112顯 示的網(wǎng)頁上點擊與Non-Web應用系統(tǒng)116有關的超鏈接之后,動態(tài)產(chǎn)生JNLP 文件且加入登入鑰匙(SOK)作為一參數(shù),進而在用戶端計算機110上執(zhí)行啟動程 序134,通過網(wǎng)絡服務安全機制傳送登入鑰匙(SOK)到SSO伺服器130配合驗證 伺服器140進行驗證并回傳驗證結(jié)果,驗證成功則得以登入并啟動Non-Web應用系統(tǒng)116。因此,在不影響原有Non-Web應用系統(tǒng)架構(gòu)下達到Web及Non-Web 應用系統(tǒng)之間的單一登入效果。
以上說明對發(fā)明而言只是說明性的,而非限制性的,本領域普通技術人員 理解,在不脫離以下所附權(quán)利要求所限定的精神和范圍的情況下,可做出許多 修改,變化,或等效,但都將落入本發(fā)明的保護范圍內(nèi)。
權(quán)利要求
1、一種單一登入方法,適用于一單一登入系統(tǒng),所述單一登入系統(tǒng)包括一用戶端計算機、一單一登入伺服器以及一驗證伺服器,所述用戶端計算機中安裝一Non-Web應用系統(tǒng),其特征在于,所述單一登入方法包括在以一身份認證信息第一次成功登入所述單一登入系統(tǒng)后,所述單一登入伺服器產(chǎn)生一登入鑰匙并存放在所述用戶端計算機中;在網(wǎng)頁上點擊與所述Non-Web應用系統(tǒng)有關的一超鏈接,以啟動所述超鏈接所鏈接到的一JNLP文件產(chǎn)生程序,所述JNLP文件產(chǎn)生程序在所述單一登入伺服器中執(zhí)行;所述JNLP文件產(chǎn)生程序動態(tài)產(chǎn)生一JNLP文件,并抓取所述用戶端計算機中的登入鑰匙作為所述JNLP文件的參數(shù);所述用戶端計算機讀取所述JNLP文件,以觸發(fā)安裝在所述用戶端計算機的Java Web Start應用程序;所述用戶端計算機從所述單一登入伺服器下載一啟動程序,并在所述用戶端計算機中執(zhí)行所述啟動程序;所述啟動程序?qū)⒂伤鯦NLP文件取得的所述登入鑰匙通過一網(wǎng)絡服務向所述單一登入伺服器要求驗證,若驗證成功,則所述單一登入伺服器將經(jīng)過認證后的所述身份認證信息回傳到所述用戶端計算機;以及所述啟動程序以經(jīng)過認證后的所述身份認證信息登入并啟動所述Non-Web應用系統(tǒng)。
2、 如權(quán)利要求1所述的單一登入方法,其特征在于,所述網(wǎng)絡服務包括 所述用戶端計算機從所述單一登入伺服器下載取得所述單一登入伺服器的公鑰;所述用戶端計算機隨機產(chǎn)生作對稱加密用的一對稱鑰匙;所述用戶端計算機以所述單一登入伺服器的公鑰加密所述對稱鑰匙及所述 登入鑰匙后密后回傳給所述單 一登入伺服器;所述單一登入伺服器以所述單一登入伺服器的私鑰解密,取得所述對稱鑰 匙及所述登入鑰匙;以及所述單一登入伺服器向所述驗證伺服器請求驗證所述登入鑰匙,若驗證成 功,則以所述對稱鑰匙加密取得驗證的身份認證信息并回傳給到所述用戶端計算機,而所述用戶端計算機以所述對稱鑰匙解密取得經(jīng)過認證后的身份認證信自
3、 如權(quán)利要求1所述的單一登入方法,其特征在于,所述用戶端計算機包括個人計算機、行動電話或個人數(shù)字助理。
4、 如權(quán)利要求1所述的單一登入方法,其特征在于,所述登入鑰匙存放在所述用戶端計算機的Cookie中。
5、 如權(quán)利要求1所述的單一登入方法,其特征在于,所述身份認證信息包括帳號及密碼。
全文摘要
本發(fā)明提供了一種適用于單一登入系統(tǒng)的單一登入方法,所述單一登入系統(tǒng)包括用戶端計算機、單一登入伺服器以及驗證伺服器,且用戶端計算機中安裝Non-Web應用系統(tǒng)。在已登入此單一登入系統(tǒng)而在用戶端計算機上設置有登入鑰匙的情形下,因采用Java Web Start技術而能在網(wǎng)頁瀏覽器顯示的網(wǎng)頁上點擊與Non-Web應用系統(tǒng)有關的超鏈接之后,動態(tài)產(chǎn)生JNLP文件且加入登入鑰匙作為一參數(shù),進而在用戶端計算機上執(zhí)行啟動程序,通過網(wǎng)絡服務安全機制傳送登入鑰匙到單一登入伺服器配合驗證伺服器進行驗證并回傳驗證結(jié)果,驗證成功則得以登入并啟動Non-Web應用系統(tǒng)。因此,在不影響原有Non-Web應用系統(tǒng)架構(gòu)下達到Web及Non-Web應用系統(tǒng)之間的單一登入效果。
文檔編號H04L29/06GK101656714SQ20081014629
公開日2010年2月24日 申請日期2008年8月18日 優(yōu)先權(quán)日2008年8月18日
發(fā)明者曾信誠 申請人:鼎新電腦股份有限公司