專利名稱:基于私有協(xié)議的統(tǒng)一身份認證方法
技術領域:
本發(fā)明涉及一種統(tǒng)一身份認證的方法,更具體的說,涉及一種基于私有協(xié)議的統(tǒng)一身份認證的方法,屬于互聯(lián)網(wǎng)用戶身份標識與認證領域。
背景技術:
企業(yè)信息化的發(fā)展,大致都經(jīng)歷了網(wǎng)絡基礎建設階段、應用系統(tǒng)建設階段,目前正面臨著平臺應用整合的建設階段。企業(yè)在進行信息化的不同階段建設了許多不同的應用系統(tǒng),有B/S架構的,也有C/S架構的,各系統(tǒng)之間相互獨立,同一用戶訪問不同系統(tǒng)必須要重復進行多次系統(tǒng)登錄,而且不同系統(tǒng)之間資源和信息無法做到互訪和共享,導致工作效率非常低下。單點登錄統(tǒng)一身份認證技術完美的解決了上述問題,通過統(tǒng)一身份認證方式,用戶只需要登錄一次就可以訪問所有相互信任的應用系統(tǒng)。它包括可以將這次主要的登錄映射到其他應用中用于同一個用戶的登錄的機制。它能夠較為理想的實現(xiàn)用戶信息集中統(tǒng)一管理,但是,用戶及其賬號的管理較為復雜,系統(tǒng)存在一定的風險。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術問題是,克服現(xiàn)有技術的缺點,提供一種用戶及其賬號的集中便捷管理,降低跨平臺系統(tǒng)風險的基于私有協(xié)議的統(tǒng)一身份認證的方法。為了解決以上技術問題,本發(fā)明提供基于私有協(xié)議的統(tǒng)一身份認證方法,所述方法應用于第三方系統(tǒng)和應用平臺之間,包含如下步驟
㈠第三方系統(tǒng)接入應用平臺,具體按以下步驟進行
⑴第三方系統(tǒng)和應用平臺分別提供兩個URL地址,用于處理第三方系統(tǒng)發(fā)送的請求信息,并根據(jù)處理結果,返回對應的響應狀態(tài)代碼;
⑵第三方系統(tǒng)預接入應用平臺時,第三方系統(tǒng)向應用平臺發(fā)送經(jīng)過加密處理的請求數(shù)據(jù)包,請求接入;
⑶應用平臺接收請求數(shù)據(jù)包,進行解密,根據(jù)請求內(nèi)容提供統(tǒng)一身份認證環(huán)境的信息和接口信息;
⑷第三方系統(tǒng)獲取應用平臺的統(tǒng)一身份認證環(huán)境信息和接口信息,完成接入; ㈡第三方系統(tǒng)接入應用平臺后,第三方系統(tǒng)的用戶按照以下兩種方式處理①無需獨立用戶的第三方系統(tǒng)的用戶處理方法;②需要獨立用戶的第三方系統(tǒng)的處理方法; 所述①無需獨立用戶的第三方系統(tǒng)的用戶處理方法具體按以下步驟進行 i第三方系統(tǒng)接入應用平臺時,如果沒有自身的用戶信息,直接使用平臺的用戶信息; 如果有一定數(shù)量的用戶但不需要保留,則將用戶信息完全導入到平臺中,使用平臺的用戶 fn息;
平臺用戶訪問第三方系統(tǒng)的受限信息,第三方系統(tǒng)判斷會話狀態(tài)緩存表中是否存在當前用戶登錄的會話信息,如果存在,則繼續(xù)訪問;如果不存在,調用統(tǒng)一身份認證的組件接口,檢查用戶在應用平臺的會話標識是否有效,如果有效,則繼續(xù)訪問,同時更新第三方系統(tǒng)的會話狀態(tài)緩存表;如果無效,則定向用戶到統(tǒng)一身份認證中的統(tǒng)一登錄界面完成登錄后,繼續(xù)訪問;
所述②需要獨立用戶的第三方系統(tǒng)的處理方法具體按以下步驟進行 I需要獨立用戶的第三方系統(tǒng)接入應用平臺,如果應用平臺用戶可以訪問第三方系統(tǒng),第三方系統(tǒng)用戶不可以訪問平臺,則進行步驟(II),如果應用平臺用戶的第三方系統(tǒng)用
戶可以互相訪問,則進行步驟(111);
II對于應用平臺用戶可以訪問第三方系統(tǒng),第三方系統(tǒng)用戶不可以訪問平臺的情況, 使用“用戶賬號關聯(lián)綁定”的方式解決,即在第三方應用系統(tǒng)內(nèi)實現(xiàn)和維護應用平臺用戶和本系統(tǒng)自身用戶賬號之間的關聯(lián)關系;
III對于應用平臺用戶的第三方系統(tǒng)用戶可以互相訪問的情況,第三方系統(tǒng)將用戶信
息封裝成組件,由應用平臺的統(tǒng)一身份認證中心對第三方系統(tǒng)的用戶進行管理,當?shù)谌较到y(tǒng)發(fā)送身份驗證請求時,統(tǒng)一身份認證中心根據(jù)用戶提交的身份標識,調用對應的訪問方法,完成驗證過程。本發(fā)明進一步限定的技術方案是所述的第三方系統(tǒng)接入應用平臺步驟中,步驟 (2)中發(fā)送的請求數(shù)據(jù)包的參數(shù)包括經(jīng)過簽名和對稱加密處理的接口參數(shù)和對上述接口參數(shù)進行不對稱加密后的數(shù)據(jù)。進一步的,所述的第三方系統(tǒng)接入應用平臺步驟中,步驟(3)中統(tǒng)一身份認證環(huán)境的信息包括第三方系統(tǒng)的服務代碼,應用平臺測試服務器和實際服務器的接口請求地址, 應用平臺測試服務器和實際服務器的公鑰證書,第三方系統(tǒng)的測試用證書和第三方系統(tǒng)的正式證書。進一步的,所述的第三方系統(tǒng)接入應用平臺步驟中,步驟(3)中的接口信息包括 SSO服務器的身份驗證請求接口、第三方應用系統(tǒng)的身份驗證響應接口、SSO服務器的單點注銷接口、SSO服務器的用戶狀態(tài)心跳接口、第三方應用系統(tǒng)的單點注銷接口。進一步的,所述的第三方系統(tǒng)用戶的處理步驟中,步驟(II )中應用“用戶賬號關聯(lián)綁定”的方法為應用平臺的用戶第一次訪問第三方應用系統(tǒng)時,第三方系統(tǒng)顯示帳號綁定的界面,詢問當前用戶是否已經(jīng)具有該第三方系統(tǒng)的登錄帳號,如果有,則提示用戶輸入登錄信息,登錄成功后,將應用平臺賬戶和第三方系統(tǒng)用戶綁定,在第三方系統(tǒng)內(nèi)建立關聯(lián)關系;如果沒有,則不建立關聯(lián)關系。本發(fā)明的有益效果是本發(fā)明提供的基于私有協(xié)議的統(tǒng)一身份認證方法,使用私有協(xié)議的單點登錄統(tǒng)一身份認證接口,實現(xiàn)用戶只需登錄一次即可進入多個系統(tǒng),無需重復登錄驗證,方便快捷,并且降低了安全風險,提升了應用效率,在企業(yè)信息化的發(fā)展過程中,起到至關重要的作用。
圖1為本發(fā)明的無需獨立用戶的第三方系統(tǒng)接入應用平臺方法的流程圖; 圖2為本發(fā)明的需要獨立用戶的第三方系統(tǒng)接入應用平臺方法的流程圖。
具體實施例方式實施例1
本實施例提供的一種基于私有協(xié)議的統(tǒng)一身份認證方法,所述方法應用于第三方系統(tǒng)和應用平臺之間,包含如下步驟
㈠第三方系統(tǒng)接入應用平臺,具體按以下步驟進行
⑴第三方系統(tǒng)和應用平臺分別提供兩個URL地址,用于處理第三方系統(tǒng)發(fā)送的請求信息,并根據(jù)處理結果,返回對應的響應狀態(tài)代碼;
⑵第三方系統(tǒng)預接入應用平臺時,第三方系統(tǒng)向應用平臺發(fā)送經(jīng)過加密處理的請求數(shù)據(jù)包,請求接入;
請求數(shù)據(jù)包的參數(shù)包括經(jīng)過簽名和對稱加密處理的接口參數(shù)和對上述接口參數(shù)進行不對稱加密后的數(shù)據(jù)。第三方系統(tǒng)通過HTTP-POST或HTTP-GET方式,向應用平臺發(fā)送請求時,請求的參數(shù)必須包含下述兩個參數(shù)
sso_request 經(jīng)過簽名和加密處理后的接口參數(shù)的內(nèi)容。具體請求的參數(shù)內(nèi)容使用發(fā)送方的私鑰進行簽名,并使用隨機生成的對稱加密密鑰加密處理;
sso_secret 使用接收方的公鑰,對上述加密ssc^request參數(shù)值時使用的對稱加密密鑰信息進行不對稱加密后的內(nèi)容。⑶應用平臺接收請求數(shù)據(jù)包,進行解密,根據(jù)請求內(nèi)容提供統(tǒng)一身份認證環(huán)境的信息和接口信息;
其中,統(tǒng)一身份認證環(huán)境的信息包括
第三方系統(tǒng)的服務代碼表示每個第三方應用系統(tǒng)的唯一代碼; 應用平臺測試服務器和實際服務器的接口請求地址; 應用平臺測試服務器和實際服務器的公鑰證書;
第三方系統(tǒng)的測試用證書由應用平臺提供的和SSO測試服務器通訊時使用的包含私鑰信息的X. 509證書和私鑰證書使用密碼,僅用于和SSO測試服務器進行通訊,待正式接入時,應用平臺會重新頒發(fā)給該系統(tǒng)可用的正式證書;
第三方系統(tǒng)的正式證書由應用平臺CA頒發(fā)的包含私鑰信息的χ. 509證書以及私鑰證書使用密碼,如果該第三方系統(tǒng)已經(jīng)基于PKI/RSA體系,并且具有自己的私鑰證書,只需在向平臺進行接入注冊時,向平臺提供其公鑰證書即可,無須應用平臺CA單獨頒發(fā),該證書以及證書使用密碼通過其他方式或途徑單獨提供給服務提供商,以確保密鑰的安全。接口信息包括SS0服務器的身份驗證請求接口、第三方應用系統(tǒng)的身份驗證響應接口、SSO服務器的單點注銷接口、SSO服務器的用戶狀態(tài)心跳接口、第三方應用系統(tǒng)的單點注銷接口。⑷第三方系統(tǒng)獲取應用平臺的統(tǒng)一身份認證環(huán)境信息和接口信息,完成接入;
以上所有發(fā)送和接收的信息中,身份驗證請求和響應的接口參數(shù)都必須被發(fā)送方進行簽名,并由接收方進行驗證,對接口參數(shù)的簽名是為了防止未經(jīng)授權的第三方篡改原始請求fe息。信息發(fā)送過程中,使用H(CS#1中定義的RSASSA-PKCSl-vl_5簽名算法,使用SHA-I 作為EMSA-PKCSl-vl_5的散列算法,簽名方使用自己的χ. 509私鑰證書對經(jīng)過正?;幚砗蟮慕涌趨?shù)字符串進行簽名,接收方使用發(fā)送方的X. 509公鑰對簽名數(shù)據(jù)進行驗證。給信息加密時,使用對稱加密算法和不對稱加密算法,對請求參數(shù)的內(nèi)容進行加密保護。即,使用隨機生成的對稱加密密鑰,對sS0_requeSt內(nèi)容進行加密,并將密鑰作為 sso_secret參數(shù)值;使用不對稱加密算法對ss0_secret中的對稱密鑰進行加密。在接收到請求方發(fā)送的請求信息時,接收方使用請求參數(shù)加密描述的相反過程, 對請求參數(shù)進行解密,再使用接口參數(shù)簽名描述的過程對接口參數(shù)簽名進行驗證。㈡第三方系統(tǒng)接入應用平臺后,第三方系統(tǒng)的用戶按照以下兩種方式處理①無需獨立用戶的第三方系統(tǒng)的用戶處理方法;②需要獨立用戶的第三方系統(tǒng)的處理方法;
所述①無需獨立用戶的第三方系統(tǒng)的用戶處理方法具體按以下步驟進行,流程圖如圖 1所示
i第三方系統(tǒng)接入應用平臺時,如果沒有自身的用戶信息,直接使用平臺的用戶信息; 如果有一定數(shù)量的用戶但不需要保留,則將用戶信息完全導入到平臺中,使用平臺的用戶 fn息;
平臺用戶訪問第三方系統(tǒng)的受限信息,第三方系統(tǒng)判斷會話狀態(tài)緩存表中是否存在當前用戶登錄的會話信息,如果存在,則繼續(xù)訪問;如果不存在,調用統(tǒng)一身份認證的組件接口,檢查用戶在應用平臺的會話標識是否有效,如果有效,則繼續(xù)訪問,同時更新第三方系統(tǒng)的會話狀態(tài)緩存表;如果無效,則定向用戶到統(tǒng)一身份認證中的統(tǒng)一登錄界面完成登錄后,繼續(xù)訪問。所述②需要獨立用戶的第三方系統(tǒng)的處理方法具體按以下步驟進行,流程圖如圖 2所示
I需要獨立用戶的第三方系統(tǒng)接入應用平臺,如果應用平臺用戶可以訪問第三方系統(tǒng),第三方系統(tǒng)用戶不可以訪問平臺,則進行步驟(II),如果應用平臺用戶的第三方系統(tǒng)用
戶可以互相訪問,則進行步驟(III。II對于應用平臺用戶可以訪問第三方系統(tǒng),第三方系統(tǒng)用戶不可以訪問平臺的情況,使用“用戶賬號關聯(lián)綁定”的方式解決,即在第三方應用系統(tǒng)內(nèi)實現(xiàn)和維護應用平臺用戶和本系統(tǒng)自身用戶賬號之間的關聯(lián)關系?!坝脩糍~號關聯(lián)綁定”的方法為應用平臺的用戶第一次訪問第三方應用系統(tǒng)時, 第三方系統(tǒng)顯示帳號綁定的界面,詢問當前用戶是否已經(jīng)具有該第三方系統(tǒng)的登錄帳號, 如果有,則提示用戶輸入登錄信息,登錄成功后,將應用平臺賬戶和第三方系統(tǒng)用戶綁定, 在第三方系統(tǒng)內(nèi)建立關聯(lián)關系;如果沒有,則不建立關聯(lián)關系。III對于應用平臺用戶的第三方系統(tǒng)用戶可以互相訪問的情況,第三方系統(tǒng)將用
戶信息封裝成組件,由應用平臺的統(tǒng)一身份認證中心對第三方系統(tǒng)的用戶進行管理,當?shù)谌较到y(tǒng)發(fā)送身份驗證請求時,統(tǒng)一身份認證中心根據(jù)用戶提交的身份標識,調用對應的訪問方法,完成驗證過程。除上述實施例外,本發(fā)明還可以有其他實施方式。凡采用等同替換或等效變換形成的技術方案,均落在本發(fā)明要求的保護范圍。
權利要求
1.基于私有協(xié)議的統(tǒng)一身份認證方法,其特征在于所述方法應用于第三方系統(tǒng)和應用平臺之間,包含如下步驟㈠第三方系統(tǒng)接入應用平臺,具體按以下步驟進行⑴第三方系統(tǒng)和應用平臺分別提供兩個URL地址,用于處理第三方系統(tǒng)發(fā)送的請求信息,并根據(jù)處理結果,返回對應的響應狀態(tài)代碼;⑵第三方系統(tǒng)預接入應用平臺時,第三方系統(tǒng)向應用平臺發(fā)送經(jīng)過加密處理的請求數(shù)據(jù)包,請求接入;⑶應用平臺接收請求數(shù)據(jù)包,進行解密,根據(jù)請求內(nèi)容提供統(tǒng)一身份認證環(huán)境的信息和接口信息;⑷第三方系統(tǒng)獲取應用平臺的統(tǒng)一身份認證環(huán)境信息和接口信息,完成接入; ㈡第三方系統(tǒng)接入應用平臺后,第三方系統(tǒng)的用戶按照以下兩種方式處理①無需獨立用戶的第三方系統(tǒng)的用戶處理方法;②需要獨立用戶的第三方系統(tǒng)的處理方法; 所述①無需獨立用戶的第三方系統(tǒng)的用戶處理方法具體按以下步驟進行 i第三方系統(tǒng)接入應用平臺時,如果沒有自身的用戶信息,直接使用平臺的用戶信息; 如果有一定數(shù)量的用戶但不需要保留,則將用戶信息完全導入到平臺中,使用平臺的用戶 fn息; 平臺用戶訪問第三方系統(tǒng)的受限信息,第三方系統(tǒng)判斷會話狀態(tài)緩存表中是否存在當前用戶登錄的會話信息,如果存在,則繼續(xù)訪問;如果不存在,調用統(tǒng)一身份認證的組件接口,檢查用戶在應用平臺的會話標識是否有效,如果有效,則繼續(xù)訪問,同時更新第三方系統(tǒng)的會話狀態(tài)緩存表;如果無效,則定向用戶到統(tǒng)一身份認證中的統(tǒng)一登錄界面完成登錄后,繼續(xù)訪問;所述②需要獨立用戶的第三方系統(tǒng)的處理方法具體按以下步驟進行 I需要獨立用戶的第三方系統(tǒng)接入應用平臺,如果應用平臺用戶可以訪問第三方系統(tǒng),第三方系統(tǒng)用戶不可以訪問平臺,則進行步驟(II),如果應用平臺用戶的第三方系統(tǒng)用戶可以互相訪問,則進行步驟(ΙΠ);II對于應用平臺用戶可以訪問第三方系統(tǒng),第三方系統(tǒng)用戶不可以訪問平臺的情況, 使用“用戶賬號關聯(lián)綁定”的方式解決,即在第三方應用系統(tǒng)內(nèi)實現(xiàn)和維護應用平臺用戶和本芊統(tǒng)自身用戶賬號之間的關聯(lián)關系;m對于應用平臺用戶的第三方系統(tǒng)用戶可以互相訪問的情況,第三方系統(tǒng)將用戶信息封裝成組件,由應用平臺的統(tǒng)一身份認證中心對第三方系統(tǒng)的用戶進行管理,當?shù)谌较到y(tǒng)發(fā)送身份驗證請求時,統(tǒng)一身份認證中心根據(jù)用戶提交的身份標識,調用對應的訪問方法,完成驗證過程。
2.根據(jù)權利要求1所述的基于私有協(xié)議的統(tǒng)一身份認證方法,其特征在于所述的第三方系統(tǒng)接入應用平臺步驟中,步驟(2)中發(fā)送的請求數(shù)據(jù)包的參數(shù)包括經(jīng)過簽名和對稱加密處理的接口參數(shù)和對上述接口參數(shù)進行不對稱加密后的數(shù)據(jù)。
3.根據(jù)權利要求1所述的基于私有協(xié)議的統(tǒng)一身份認證方法,其特征在于所述的第三方系統(tǒng)接入應用平臺步驟中,步驟(3)中統(tǒng)一身份認證環(huán)境的信息包括第三方系統(tǒng)的服務代碼,應用平臺測試服務器和實際服務器的接口請求地址,應用平臺測試服務器和實際服務器的公鑰證書,第三方系統(tǒng)的測試用證書和第三方系統(tǒng)的正式證書。
4.根據(jù)權利要求1所述的基于私有協(xié)議的統(tǒng)一身份認證方法,其特征在于所述的第三方系統(tǒng)接入應用平臺步驟中,步驟(3)中的接口信息包括SSO服務器的身份驗證請求接口、第三方應用系統(tǒng)的身份驗證響應接口、SSO服務器的單點注銷接口、SSO服務器的用戶狀態(tài)心跳接口、第三方應用系統(tǒng)的單點注銷接口。
5.根據(jù)權利要求1所述的基于私有協(xié)議的統(tǒng)一身份認證方法,其特征在于所述的第三方系統(tǒng)用戶的處理步驟中,步驟(II)中應用“用戶賬號關聯(lián)綁定”的方法為應用平臺的用戶第一次訪問第三方應用系統(tǒng)時,第三方系統(tǒng)顯示帳號綁定的界面,詢問當前用戶是否已經(jīng)具有該第三方系統(tǒng)的登錄帳號,如果有,則提示用戶輸入登錄信息,登錄成功后,將應用平臺賬戶和第三方系統(tǒng)用戶綁定,在第三方系統(tǒng)內(nèi)建立關聯(lián)關系;如果沒有,則不建立關聯(lián)關系。
全文摘要
本發(fā)明公開了基于私有協(xié)議的統(tǒng)一身份認證方法,所述方法應用于第三方系統(tǒng)和應用平臺之間,包含如下步驟第三方系統(tǒng)接入應用平臺,處理接入信息,完成接入。完成接入之后,需要對第三方系統(tǒng)的用戶做兩種方式處理無需獨立用戶的第三方系統(tǒng)接入應用平臺的用戶處理方法和需要獨立用戶的第三方系統(tǒng)接入應用平臺的用戶處理方法。所述方法實現(xiàn)用戶只需登錄一次即可進入多個系統(tǒng),無需重復登錄驗證,方便快捷,并且降低了安全風險,提升了應用效率,在企業(yè)信息化的發(fā)展過程中,起到至關重要的作用。
文檔編號H04L29/06GK102315945SQ201110320299
公開日2012年1月11日 申請日期2011年10月20日 優(yōu)先權日2011年10月20日
發(fā)明者周剛, 惠志本, 戴超, 湯衛(wèi)鋒, 田又豐, 許云龍 申請人:江蘇三源教育實業(yè)有限公司