專利名稱:遠程使用證書與密鑰進行認證的方法、裝置及系統的制作方法
技術領域:
本發明涉及計算機技術領域,尤其涉及一種遠程使用證書與密鑰進行認證的方法、裝置及系統。
背景技術:
遠程應用發布屬于應用虛擬化技術,其將應用程序的人機交互邏輯(應用程序界面、鍵盤及鼠標的操作、音頻輸入輸出、讀卡器、打印輸出等)與計算邏輯隔離開來,在用戶訪問一個服務器虛擬化后的應用時,用戶終端設備只需要把人機交互邏輯通過RDP/ICA等遠程桌面協議傳送到服務器端,服務器端為用戶開設獨立的會話空間,應用程序的計算邏輯在這個會話空間中運行,把變化后的人機交互邏輯傳送給用戶終端設備,并且在用戶終端設備的相應顯示設備中展示出來,從而使用戶獲得如同運行本地應用程序一樣的訪問感受。隨著虛擬化技術的逐漸成熟,遠程應用發布功能逐漸成為SSL VPN(Secure Sockets Layer Virtual Private Network,安全套接層虛擬專用網絡)產品的一項必備功能;與傳統的客戶端-服務器模式相比,遠程應用發布更具信息安全性、部署方便性和終端易維護性。目前,對于各種OA (Office Automatic,辦公自動化)系統,遠程應用發布均只支持利用鼠標、鍵盤等可輸入的方式來認證,如短信認證、動態令牌、口令等,而需要使用證書和Dkey (Dispersion Key,分散密鑰)認證的系統則無法作為遠程應用發布資源來使用。對于證書認證,可以通過為每個windows(窗口操作系統)用戶賬號導入對應的用戶證書來解決,但這些證書需要通過管理員批量導入或用戶遠程登錄到遠程應用發布服務器自行導入,因此在安全性和易用性上都無法滿足客戶需求。對于Dkey認證用戶來說,不可能通過在發布服務器上插入自己的Dkey來使用OA系統,所以Dkey認證現在還無法應用于遠程應用發布的OA系統上。有廠商直接做USB(Universal Serial Bus,通用串行總線)映射的方案,該方案將用戶PC (Personal Computer,個人計算機)的USB接口映射到服務器,這樣用戶雖然可以在其PC的USB接口上直接插入Dkey實現認證,但用戶同樣可通過在其PC的USB接口上使用 U盤和其他移動存儲設備,不受限制的進行文件的上傳和下載,這給遠程應用服務器帶來信息泄露與病毒感染的危險。
發明內容
本發明的主要目的是提供一種遠程使用證書與密鑰進行認證的方法,旨在通過將原需要在遠程應用發布服務器上執行的證書認證流程轉移到用戶PC的客戶端上執行,達到遠程應用支持證書、Dkey認證的目的,同時使用戶無感知的直接使用OA系統。本發明公開了一種遠程使用證書與密鑰進行認證的方法,包括以下步驟證書認證攔截模塊攔截證書/Dkey認證模塊發送的用戶證書和簽名的請求信息,通過證書認證轉發模塊將所述請求信息轉發至證書認證應答模塊;證書認證應答模塊接收到認證請求后進行簽名,通過證書認證轉發模塊將用戶證書和簽名結果轉發至證書認證攔截模塊;證書認證攔截模塊返回用戶證書和簽名的結果至證書/Dkey認證模塊。優選地,所述證書認證攔截模塊攔截用戶證書和簽名的請求信息進一步包括利用函數掛鉤技術,通過調用符合CSP (Cryptographic Service Provider,加密模塊接口標準)和使用證書相關的各函數進行掛鉤,將所述的用戶證書和簽名的請求信息進行攔截。優選地,所述證書認證攔截模塊返回用戶證書和簽名的結果至證書/Dkey認證模塊的步驟具體為在所述掛鉤函數在執行攔截用戶證書和簽名的請求信息的中斷處將用戶證書和簽名的結果進行返回。優選地,所述方法還包括步驟證書/Dkey認證模塊根據用戶證書和簽名結果返回認證結果,判斷是否通過認證。本發明還公開了一種遠程使用證書與密鑰進行認證的裝置,包括證書認證攔截模塊,用于攔截證書/Dkey認證模塊發送的用戶證書和簽名的請求信息,并將其下發給證書認證轉發模塊;還用于返回用戶證書和簽名的結果至證書/Dkey 認證模塊;證書認證轉發模塊,用于將證書認證攔截模塊下發的請求信息轉發給證書認證應答模塊;還用于將證書認證應答模塊發送的用戶證書和簽名結果轉發至證書認證攔截模塊;證書認證應答模塊,用于應答用戶證書和簽名的請求信息,提供用戶證書和簽名。優選地,所述證書認證攔截模塊具體用于利用函數掛鉤技術,通過調用符合加密模塊接口標準CSP和使用證書相關的各函數進行掛鉤,將所述的用戶證書和簽名的請求信息進行攔截,然后再將其發送至證書認證轉發模塊。優選地,所述證書認證攔截模塊具體用于在所述掛鉤函數執行轉發用戶證書和簽名請求信息的中斷處進行返回所述用戶證書和簽名。優選地,所述認證裝置還包括證書/Dkey認證模塊用于根據用戶證書和簽名結果返回認證結果,判斷是否通過認證。本發明還公開了一種遠程使用證書與密鑰進行認證的系統,包括OA服務器,包含證書/Dkey認證模塊,用于向遠程應用發布服務器請求用戶證書和簽名,并根據遠程應用發布服務器返回的用戶證書和簽名結果,返回其認證結果,判斷是否通過認證;遠程應用發布服務器,包含證書認證攔截模塊,用于攔截OA服務器發送的用戶證書和簽名的請求信息,并將其下發給遠程應用發布技術環境;還用于將遠程應用發布技術環境轉發的用戶證書和簽名結果返回給OA服務器; 遠程應用發布技術環境,包含證書認證轉發模塊,用于轉發遠程應用發布服務器下發的用戶證書和簽名請求信息以及用戶個人計算機PC發送的用戶證書和簽名結果;
用戶PC,包含證書認證應答模塊,用于應答用戶證書和簽名的請求信息,提供用戶證書和簽名。優選地,所述遠程應用發布服務器具體用于利用函數掛鉤技術,通過調用符合加密模塊接口標準CSP和使用證書相關的各函數進行掛鉤,將所述的用戶證書和簽名的請求信息進行攔截;且在所述掛鉤函數執行轉發用戶證書和簽名請求信息的中斷處將用戶證書和簽名結果返回給OA服務器。本發明公開的遠程使用證書與密鑰進行認證的方法、裝置及系統,通過將認證流程從遠程應用發布服務器轉移到用戶PC,達到了遠程使用證書和Dkey進行認證的目的,同時使用戶無感知的直接使用OA系統,提高了遠程應用發布對OA系統認證的信息安全性、部署方便性和終端的易維護性。
圖1是本發明遠程使用證書與密鑰進行認證的方法第一實施例的流程示意圖;圖2是本發明遠程使用證書與密鑰進行認證的方法第二實施例的流程示意圖;圖3是本發明遠程使用證書與密鑰進行認證的裝置第一實施例的流程示意圖;圖4是本發明遠程使用證書與密鑰進行認證的裝置第二實施例的流程示意圖;圖5是本發明遠程使用證書與密鑰進行認證的系統一實施例的流程示意圖;圖6是現有技術中遠程應用發布的OA系統用戶登錄界面;圖7是采用本發明遠程使用證書與密鑰進行認證的方法后,遠程應用發布的OA系統用戶登錄界面。本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。
具體實施例方式以下結合說明書附圖及具體實施例進一步說明本發明的技術方案。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。參照圖1,圖1是本發明遠程使用證書與密鑰進行認證的方法第一實施例的流程示意圖,本發明遠程使用證書與密鑰進行認證的方法包括以下步驟S01、證書認證攔截模塊攔截證書/Dkey認證模塊發送的用戶證書和簽名的請求信息,通過證書認證轉發模塊將所述請求信息轉發至證書認證應答模塊;用戶在PC上點擊遠程應用發布服務器發布出來的OA系統的證書認證按鈕,相當于遠程應用發布服務器上的OA系統客戶端向OA服務器發出證書認證請求;當OA服務器收到遠程應用發布服務器發出的證書認證請求時,OA服務器向遠程應用發布服務器請求用戶證書和簽名;遠程應用發布服務器中的證書認證攔截模塊主要利用函數掛鉤技術,如API 攔截技術,將發布在應用發布服務器上的應用程序,通過對其調用的符合CSP標準和使用證書相關的各個函數進行掛鉤,將OA服務器上證書/Dkey認證模塊對遠程應用發布服務器發送的用戶證書和簽名的認證請求進行攔截,并通過證書認證轉發模塊把用戶證書和簽名的請求的內容轉發到用戶PC。所述遠程應用發布技術環境主要包括SSL VPN環境,但并不限于使用SSLVPN環境,證書認證轉發模塊的部署方式也適用于用到遠程發布技術的其他環境。S02、證書認證應答模塊接收到認證請求后進行簽名,通過證書認證轉發模塊將用戶證書和簽名結果轉發至證書認證攔截模塊;用戶PC上的證書認證應答模塊接收到證書認證轉發模塊轉發的用戶證書和簽名的認證請求后,使用本地滿足CSP標準的用戶私鑰進行簽名,并把用戶證書和簽名結果傳給證書認證轉發模塊;證書認證轉發模塊再將用戶PC的用戶證書和簽名轉發至證書認證攔截模塊;S03、證書認證攔截模塊返回用戶證書和簽名的結果至證書/Dkey認證模塊。遠程應用發布服務器中的證書認證攔截模塊在步驟SOl所述的掛鉤函數在執行轉發用戶證書和簽名的請求信息的中斷處,將用戶PC的用戶證書和簽名結果返回給OA服務器的證書/Dkey認證模塊。利用函數掛鉤技術,通過將認證流程從遠程應用發布服務器轉移到用戶PC上執行,達到了遠程使用證書和密鑰進行認證的目的,同時使用戶無感知的直接使用OA系統, 提升了遠程使用證書和密鑰進行認證的信息安全性及部署方便性。參照圖2,圖2是本發明遠程使用證書與密鑰進行認證的方法第二實施例的流程示意圖,本發明遠程使用證書與密鑰進行認證的方法還包括步驟S04、證書/Dkey認證模塊根據用戶證書和簽名結果返回認證結果,判斷是否通過認證。OA服務器收到遠程應用發布服務器的應答信息后,證書/Dkey認證模塊對用戶證書和簽名的應答信息進行認證處理同時返回認證結果通過認證則執行步驟S041 ;否則, 執行步驟S042。步驟S041、允許登錄;步驟S042、拒絕登陸。參照圖3,圖3是本發明遠程使用證書與密鑰進行認證的裝置第一實施例的流程示意圖,本發明遠程使用證書與密鑰進行認證的裝置包括證書認證攔截模塊011,用于攔截證書/Dkey認證模塊發送的用戶證書和簽名的請求信息,并下發給證書認證轉發模塊;還用于返回用戶證書和簽名的結果至證書/Dkey 認證模塊;證書認證轉發模塊021,用于將證書認證攔截模塊下發的請求信息轉發給證書認證應答模塊;還用于將證書認證應答模塊發送的用戶證書和簽名結果轉發至證書認證攔截模塊; 證書認證應答模塊031,用于應答用戶證書和簽名的請求信息,提供用戶證書和簽名。 當遠程應用發布服務器接收到OA系統發出的用戶證書和簽名的請求后,證書認證攔截模塊011利用函數掛鉤技術,通過對其調用符合CSP標準和使用證書相關的各個函數進行掛鉤,將OA服務器上證書/Dkey認證模塊對遠程應用發布服務器發送的認證請求進行攔截,并把請求內容發送到證書認證轉發模塊021 ;
證書認證轉發模塊021接收到證書認證攔截模塊011發送的用戶證書和簽名的請求信息后,將其轉發至用證書認證應答模塊031 ;證書認證應答模塊031接收到請求后,使用本地滿足CSP標準的用戶私鑰進行簽名,并把用戶證書和簽名結果傳給證書認證轉發模塊021 ;證書認證轉發模塊021將用戶證書和簽名結果轉發給證書認證攔截模塊011,證書認證攔截模塊011在掛鉤函數執行轉發用戶證書和簽名的請求信息的中斷處,將用戶證書和簽名結果返回給OA服務器的證書/Dkey認證模塊。利用函數掛鉤技術,通過將認證流程從遠程應用發布服務器轉移到用戶PC上執行,達到了遠程使用證書和密鑰進行認證的目的,使用戶無感知的直接使用OA系統,提升了遠程使用證書和密鑰進行認證的信息安全性及部署方便性。參照圖4,圖4是本發明遠程使用證書與密鑰進行認證的裝置第二實施例的流程示意圖,本發明遠程使用證書與密鑰進行認證的裝置還包括證書/Dkey認證模塊041,用于根據用戶證書和簽名結果返回認證結果,判斷是否通過認證。證書/Dkey認證模塊041收到遠程應用發布服務器返回的用戶證書和簽名的應答信息后,返回認證結果,判斷是否通過認證通過認證則允許登錄,否則拒絕登陸。參照圖5,圖5是本發明遠程使用證書與密鑰進行認證的系統一實施例的流程示意圖,本發明遠程使用證書與密鑰進行認證的系統包括OA服務器04,包含證書/Dkey認證模塊041,用于向遠程應用發布服務器01請求用戶證書和簽名并根據遠程應用發布服務器01返回的用戶證書和簽名結果,返回其認證結果,判斷是否通過認證;遠程應用發布服務器01,包含證書認證攔截模塊011,用于攔截OA服務器04發送的用戶證書和簽名的請求信息并下發給遠程應用發布技術環境02 ;還用于將遠程應用發布技術環境02轉發的用戶證書和簽名結果返回給OA服務器04 ;遠程應用發布技術環境02,包含證書認證轉發模塊021,用于轉發遠程應用發布服務器01下發的用戶證書和簽名請求信息以及用戶PC03發送的用戶證書和簽名結果;用戶PC03,包含證書認證應答模塊031,用于應答用戶證書和簽名的請求信息,提供用戶證書和簽名。在用戶PC客戶端,用戶點擊遠程應用發布服務器01發布出來的OA系統的證書認證按鈕,相當于遠程應用發布服務器01上的OA系統客戶端向OA服務器04發出證書認證請求;當OA服務器04收到遠程應用發布服務器01發出的證書認證請求時,OA服務器04 向遠程應用發布服務器01請求用戶證書和簽名;遠程應用發布服務器01中的證書認證攔截模塊主要利用函數掛鉤技術,如API攔截技術,將發布在應用發布服務器01上的應用程序,通過對其調用的符合CSP標準和使用證書相關的各個函數進行掛鉤,將OA服務器04對遠程應用發布服務器01的認證請求進行攔截,并通過遠程應用發布技術環境02把用戶證書和簽名的請求的內容轉發到用戶PC03。用戶PC03接收到遠程應用發布技術環境02轉發的用戶證書和簽名的認證請求后,使用本地滿足CSP標準的用戶私鑰進行簽名,并把用戶證書和簽名結果傳給遠程應用發布技術環境02 ;遠程應用發布技術環境02再將用戶PC03的用戶證書和簽名轉發至遠程應用發布服務器01。遠程應用發布服務器01在所述的掛鉤函數執行轉發用戶證書和簽名的請求信息的中斷處,將用戶PC03的用戶證書和簽名結果返回給OA服務器04。OA服務器04收到遠程應用發布服務器01發送的用戶證書和簽名結果的應答信息后,OA服務器04對應答信息進行認證處理同時返回認證結果通過認證給予登陸;否則,拒絕登陸。本發明遠程使用證書與密鑰進行認證的方法、裝置及系統的有益效果將參照圖6 與圖7的對比來進一步說明。參照圖6,圖6是現有技術中遠程應用發布的OA系統用戶登錄界面,現有技術中, 在用戶PC端插入Dkey,遠程應用發布的OA系統在登錄界面的用戶欄內無法選擇到要登錄的用戶,點擊無效。參照圖7,圖7是采用本發明遠程使用證書與密鑰進行認證的方法后,遠程應用發布的OA系統用戶登錄界面;使用本發明后,在用戶PC端插入Dkey,遠程應用發布的OA系統在登錄界面的用戶欄內顯示用戶名,點擊登錄后,用戶可以順利的登錄OA系統進行訪問。本發明遠程使用證書與密鑰進行認證的方法、裝置及系統,主要利用函數掛鉤技術,通過將證書與密鑰的認證流程從遠程應用發布服務器轉移到用戶PC客戶端,達到了遠程應用支持證書、Dkey認證的目的,同時使用戶無感知的直接使用OA系統,提高了信息安全性、部署方便性和終端的易維護性。以上所述僅為本發明的優選實施例,并非因此限制其專利范圍,凡是利用本發明說明書及附圖內容所作的等效結構或等效流程變換,直接或間接運用在其他相關的技術領域,均同理包括在本發明的專利保護范圍內。
權利要求
1.一種遠程使用證書與密鑰進行認證的方法,其特征在于,包括以下步驟證書認證攔截模塊攔截證書/Dkey認證模塊發送的用戶證書和簽名的請求信息,通過證書認證轉發模塊將所述請求信息轉發至證書認證應答模塊;證書認證應答模塊接收到認證請求后進行簽名,通過證書認證轉發模塊將用戶證書和簽名結果轉發至證書認證攔截模塊;證書認證攔截模塊返回用戶證書和簽名的結果至證書/Dkey認證模塊。
2.根據權利要求1所述的方法,其特征在于,所述證書認證攔截模塊攔截用戶證書和簽名的請求信息進一步包括利用函數掛鉤技術,通過調用符合加密模塊接口標準CSP和使用證書相關的各函數進行掛鉤,將所述的用戶證書和簽名的請求信息進行攔截。
3.根據權利要求1或2所述的方法,其特征在于,所述證書認證攔截模塊返回用戶證書和簽名的結果至證書/Dkey認證模塊的步驟具體為在所述掛鉤函數在執行攔截用戶證書和簽名的請求信息的中斷處將用戶證書和簽名的結果進行返回。
4.根據權利要求1所述的方法,其特征在于,所述方法還包括步驟證書/Dkey認證模塊根據用戶證書和簽名結果返回認證結果,判斷是否通過認證。
5.一種遠程使用證書與密鑰進行認證的裝置,其特征在于,包括證書認證攔截模塊,用于攔截證書/Dkey認證模塊發送的用戶證書和簽名的請求信息,并將其下發給證書認證轉發模塊;還用于返回用戶證書和簽名的結果至證書/Dkey認證模塊;證書認證轉發模塊,用于將證書認證攔截模塊下發的請求信息轉發給證書認證應答模塊;還用于將證書認證應答模塊發送的用戶證書和簽名結果轉發至證書認證攔截模塊; 證書認證應答模塊,用于應答用戶證書和簽名的請求信息,提供用戶證書和簽名。
6.根據權利要求5所述的裝置,其特征在于,所述證書認證攔截模塊具體用于利用函數掛鉤技術,通過調用符合加密模塊接口標準CSP和使用證書相關的各函數進行掛鉤,將所述的用戶證書和簽名的請求信息進行攔截,然后再將其發送至證書認證轉發模塊。
7.根據權利要求5或6所述的裝置,其特征在于,所述證書認證攔截模塊具體用于 在所述掛鉤函數執行轉發用戶證書和簽名請求信息的中斷處返回所述用戶證書和簽名。
8.根據權利請求5所述的裝置,其特征在于,所述認證裝置還包括證書/Dkey認證模塊用于根據用戶證書和簽名結果返回認證結果,判斷是否通過認證。
9.一種遠程使用證書與密鑰進行認證的系統,其特征在于,包括OA服務器,包含證書/Dkey認證模塊,用于向遠程應用發布服務器請求用戶證書和簽名,并根據遠程應用發布服務器返回的用戶證書和簽名結果,返回其認證結果,判斷是否通過認證;遠程應用發布服務器,包含證書認證攔截模塊,用于攔截OA服務器發送的用戶證書和簽名的請求信息,并將其下發給遠程應用發布技術環境;還用于將遠程應用發布技術環境轉發的用戶證書和簽名結果返回給OA服務器;遠程應用發布技術環境,包含證書認證轉發模塊,用于轉發遠程應用發布服務器下發的用戶證書和簽名請求信息以及用戶個人計算機PC發送的用戶證書和簽名結果;用戶PC,包含證書認證應答模塊,用于應答用戶證書和簽名的請求信息,提供用戶證書和簽名。
10.根據權利要求9所述的認證系統,其特征在于,所述遠程應用發布服務器具體用于利用函數掛鉤技術,通過調用符合加密模塊接口標準CSP和使用證書相關的各函數進行掛鉤,將所述的用戶證書和簽名的請求信息進行攔截;且在所述掛鉤函數執行轉發用戶證書和簽名請求信息的中斷處將用戶證書和簽名結果返回給OA服務器。
全文摘要
本發明公開一種遠程使用證書與密鑰進行認證的方法、裝置及系統,該認證方法包括以下步驟證書認證攔截模塊攔截證書/Dkey認證模塊發送的用戶證書和簽名的請求信息,通過證書認證轉發模塊將所述請求信息轉發至證書認證應答模塊;證書認證應答模塊接收到認證請求后進行簽名,通過證書認證轉發模塊將用戶證書和簽名結果轉發至證書認證攔截模塊;證書認證攔截模塊返回用戶證書和簽名的結果至證書/Dkey認證模塊。本發明主要利用函數掛鉤技術,將原需在遠程應用發布服務器上執行的證書操作轉移到用戶PC上的客戶端進行執行,使用戶無感知的直接使用OA系統,提高了遠程應用發布的信息安全性、部署方便性和終端的易維護性。
文檔編號H04L29/06GK102412969SQ20111035969
公開日2012年4月11日 申請日期2011年11月14日 優先權日2011年11月14日
發明者林彥, 林海長, 潘偉琛 申請人:深圳市深信服電子科技有限公司