一種實現單點登錄的方法及系統的製作方法
2023-11-06 06:15:57
專利名稱:一種實現單點登錄的方法及系統的製作方法
技術領域:
本發明涉及單點登錄技術領域,特別涉及一種實現單點登錄的方法及系統。
背景技術:
隨著網際網路的迅猛發展,各種各樣歸屬於不同提供商的應用也已大量存在,同時新應用也不斷湧現。而每個應用一般都要求實現用戶管理、身份認證、授權等必不可少的安全措施。為了簡化應用開發流程,同時避免用戶訪問應用時多次輸入用戶名和密碼,單點登錄技術應運而生。所謂單點登錄是指在多個應用中,用戶只需要登錄一次就可以訪問所有相互信任的應用。而現有的單點登錄技術一般通過配置統一的認證系統和集中統一的用戶管理來實現單點登錄。這樣認證系統和應用必須使用統一的用戶帳戶,但是對一些已經存在的應 用來說他們並不願意廢止自己的用戶管理。因此現有的單點登錄系統對於這種不願意放棄自己用戶管理的應用就不能實現單點登錄。圖l_a為現有技術的單點登錄伺服器結構示意圖。針對這個問題中國第CN101420416A號專利公開了一種身份聯合及統一登錄方法通過將用戶在身份管理平臺與應用的身份信息進行聯合,實現統一登錄。在該方法中,應用的用戶管理必須有效。但是該統一登錄方法是建立在身份聯合的基礎之上的,用戶需要使用在該應用中的身份訪問應用。這樣就要求所有應用需要有自己的用戶管理和身份認證,並且需要建立身份聯合,才能實現在多個應用之間的統一登錄,並不具備單點登錄方法的優點。
發明內容
本發明目的在於,為克服現有技術的單點登錄系統對有用戶管理的應用不能實現身份聯合的問題以及背景技術所述的發明專利雖然引入了身份聯合的思想卻並沒有實現真正的單點登錄(專利中記載的所有的應用都必須有自己的用戶管理平臺才能實現統一登錄,這樣會導致所有新開發的應用都必須開發自己的用戶管理平臺),從而提供一種實現單點登錄的方法及系統。本發明將單點登錄方法融合身份聯合的優點,為所有應用(包含有用戶管理的應用和無用戶管理的用戶)提供統一的身份認證服務。為實現上述發明目的,本發明提供一種單點登錄伺服器,用於為有用戶管理的應用和無用戶管理的應用統一提供單點登錄服務,且所述有用戶管理的應用採用單點登錄時基於用戶身份綁定的策略,該伺服器包含用戶管理模塊和會話管理模塊,其特徵在於,所述伺服器還包含信息交互模塊、應用管理模塊和身份綁定模塊;所述應用管理模塊,用於保存應用的信息;所述身份綁定模塊,用於綁定用戶在應用中的身份信息與用戶在單點登錄伺服器的身份信息;所述信息交互模塊,分別與所述會話管理模塊、應用管理模塊、身份綁定模塊連接,該信息交互模塊用於接收和響應應用的認證請求,與所述發出認證請求的應用採用交互方式建立綁定,向會話管理模塊查詢用戶登錄狀態,通知會話管理模塊認證用戶;其中,所述會話管理模塊,與所述用戶管理模塊連接,該模塊用於接收和驗證用戶輸入的登錄信息,並保持用戶的登錄狀態信息。上述技術方案中,所述應用的信息包括應用標識和應用是否有用戶管理模塊。所述用戶管理模塊用於保存用戶在單點登錄伺服器的信息。基於上述裝置本發明還提供一種實現單點登錄的方法,該方法可實現針對所有應用的單點登錄,所述方法包括單點登錄伺服器綁定用戶在該單點登錄伺服器和應用中的身份信息;用戶訪問應用的受保護資源時,應用請求單點登錄伺服器認證用戶;單點登錄伺服器完成用戶認證後,如果單點登錄伺服器已綁定用戶在該應用中身份信息,則返回用戶在該應用中的身份信息;否則返回用戶在單點登錄伺服器中的身份信息,完成登錄。上述技術方案中,所述身份信息包含用戶帳號、登錄名、用戶標識、角色或權限級別。 所述應用如果有用戶管理,則單點登錄伺服器提供綁定用戶在單點登錄伺服器中和在該應用中的身份信息的服務,即用戶能使用在應用中的身份訪問應用。所述應用如果沒有用戶管理系統,則用戶使用在單點登錄伺服器中的身份訪問該應用。採用上述的技術方案後,本發明具有以下優點I、單點登錄伺服器提供身份認證服務和身份綁定服務,從而降低業務提供門檻,提供者可以不必為每個應用開發獨立的身份認證系統和用戶管理模塊,同時更好的融合不同應用,應用如果有自己的用戶管理模塊,可以繼續使用;2、單點登錄伺服器完成用戶認證後,如果單點登錄伺服器已綁定用戶在該應用中身份信息,則返回用戶在該應用中的身份信息,從而使得用戶在訪問不同應用時,不需要重複登錄就可以切換身份。
圖Ι-a是現有技術的單點登錄伺服器結構示意圖;圖Ι-b是本發明中單點登錄伺服器結構示意圖;圖2本發明中應用實施例一結構示意圖;圖3本發明中應用實施例二結構示意圖;圖4本發明中身份綁定實施例流程示意5本發明方法單點登錄實施例的信息交互時序圖。
具體實施例方式為使本發明的目的、技術方案和優點更加清楚,下面結合附圖和具體實施例對本發明的單點登錄方法做進一步的詳細描述。圖Ι-b是本發明中單點登錄伺服器結構示意圖,包括用戶管理模塊,該模塊用於保存用戶在單點登錄伺服器的身份信息,包括用戶名、密碼;應用管理模塊,該模塊用於保存應用的信息,包括應用標識、應用是否有用戶管理模塊;會話管理模塊,與所述用戶管理模塊連接,該模塊用於接收和驗證用戶輸入的登錄信息,並保持用戶的登錄狀態信息;身份綁定模塊,該模塊保存用戶在應用的身份信息與用戶在單點登錄伺服器的身份信息的對應關係;信息交互模塊,與所述會話管理模塊、應用管理模塊、身份綁定模塊連接,該模塊用於接收和響應應用的認證請求,與應用交互建立用戶在所述應用的身份信息與用戶在單點登錄伺服器的身份信息的對應關係,向會話管理模塊查詢用戶登錄狀態,通知會話管理模塊認證用戶。圖2是本發明中應用實施例一結構示意圖,包括用戶管理模塊,該模塊用於管理用戶在應用中的信息,包括用戶名、密碼;身份查詢模塊,與所述用戶管理模塊連接,該模塊用於向單點登錄伺服器發送認證用戶請求,並接收響應,同時接收並響應單點登錄伺服器身份綁定請求。圖3是本發明中應用實施例二結構示意圖,包括身份查詢模塊,該模塊用於向單點登錄伺服器發送認證用戶請求,並接收響應。圖4是本發明中身份綁定實施例流程示意圖,應用請求單點登錄伺服器認證用戶,認證成功後,如果單點登錄伺服器發現該應用有用戶管理且用戶未進行身份綁定,則通知用戶可以進行身份綁定。具體綁定流程包括101)單點登錄伺服器詢問用戶是否綁定在該應用中的身份,用戶選擇綁定,轉102 ;用戶選擇不綁定,轉109 ;102)單點登錄伺服器將頁面重定向至應用,重定向請求中攜帶身份綁定請求、綁 定請求標識;103)應用接收身份綁定請求後,要求用戶輸入在應用中的用戶名和密碼;104)應用驗證用戶名和密碼成功後,驗證成功,轉105 ;驗證失敗,轉106 ;105)應用將頁面重定向至單點登錄伺服器,重定向信息中攜帶身份綁定成功消息、用戶在應用中的用戶名、綁定請求標識,轉107 ;106)應用將頁面重定向至單點登錄伺服器,重定向信息中攜帶身份綁定失敗消息、綁定請求標識,轉108 ;107)單點登錄伺服器接收到身份綁定成功消息後,記錄用戶在單點登錄伺服器中用戶名、應用標識、用戶在應用中用戶名的對應關係,轉109 ;108)單點登錄伺服器接收到身份綁定失敗消息後,則取消本次身份綁定,轉113 ;109)身份綁定流程結束。如圖5所示,具體介紹本發明作為一種單點登錄方法的實施例的各個操作步驟201)用戶訪問應用的受保護資源,應用在請求的cookie信息中未發現用戶名,轉202 ;發現用戶名,轉208 ;202)應用將頁面重定向至單點登錄伺服器,重定向請求中包含認證用戶請求、應用標識;203)單點登錄伺服器在用戶請求的cookie信息中發現用戶的訪問票據且未過期,即用戶已登錄,轉205 ;否則轉204 ;204)單點登錄伺服器要求用戶輸入用戶名和密碼進行登錄;單點登錄伺服器驗證用戶名和密碼成功後,生成用戶訪問票據和票據過期時間,並將用戶訪問票據存儲在用戶瀏覽器的cookie信息中,轉205 ;驗證失敗,該流程結束;205)單點登錄伺服器根據用戶在單點登錄伺服器的用戶名、應用標識在資料庫中未查詢出用戶在該應用中的用戶名,轉207 ;如果查詢出用戶在該應用中的用戶名,轉206 ;206)單點登錄伺服器將頁面重定向至應用,重定向信息中攜帶用戶在應用中的用戶名,轉208 ;207)單點登錄伺服器將頁面重定向至應用,重定向信息中攜帶用戶在單點登錄伺服器中的用戶名,轉208 ;208)應用獲取用戶名,與單點登錄模塊交互驗證用戶登錄是否有效是否過期,驗 證成功後,應用響應用戶請求;驗證失敗,即登錄過期,轉202要求用戶重新登錄。以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種單點登錄伺服器,用於為有用戶管理的應用和無用戶管理的應用統一提供單點登錄服務,且所述有用戶管理的應用採用單點登錄時基於用戶身份綁定的策略,該伺服器包含用戶管理模塊和會話管理模塊,其特徵在於, 所述伺服器還包含信息交互模塊、應用管理模塊和身份綁定模塊; 所述應用管理模塊,用於保存應用的信息; 所述身份綁定模塊,用於綁定用戶在應用中的身份信息與用戶在單點登錄伺服器的身份信息; 所述信息交互模塊,分別與所述會話管理模塊、應用管理模塊、身份綁定模塊連接,該信息交互模塊用於接收和響應應用的認證請求,與所述發出認證請求的應用採用交互方式建立綁定,向會話管理模塊查詢用戶登錄狀態,通知會話管理模塊認證用戶; 其中,所述會話管理模塊,與所述用戶管理模塊連接,該模塊用於接收和驗證用戶輸入的登錄信息,並保持用戶的登錄狀態信息;所述用戶管理模塊,用於保存用戶在單點登錄伺服器的信息。
2.根據權利要求I所述的單點登錄伺服器,其特徵在於,所述應用的信息包括應用標識和應用是否有用戶管理模塊。
3.根據權利要求I所述的單點登錄伺服器,其特徵在於所述身份信息包含用戶帳號、登錄名、用戶標識、角色或權限級別。
4.一種實現單點登錄的方法,該方法可實現針對所有應用的單點登錄,所述方法包括 單點登錄伺服器綁定用戶在該單點登錄伺服器和應用中的身份信息的步驟; 用戶訪問應用的受保護資源時,應用請求單點登錄伺服器認證用戶的步驟; 單點登錄伺服器完成用戶認證後,如果單點登錄伺服器已綁定用戶在該應用中身份信息,則返回用戶在該應用中的身份信息;否則返回用戶在單點登錄伺服器中的身份信息,完成登錄的步驟。
5.根據權利要求4所述的實現單點登錄的方法,其特徵在於所述身份信息包含用戶帳號、登錄名、用戶標識、角色或權限級別。
6.根據權利要求4所述的實現單點登錄的方法,其特徵在於,所述應用如果有用戶管理,則單點登錄伺服器提供綁定用戶在單點登錄伺服器中和在該應用中的身份信息的服務,即用戶能使用在應用中的身份訪問應用。
7.根據權利要求4所述的實現單點登錄的方法,其特徵在於所述應用如果沒有用戶管理系統,則用戶使用在單點登錄伺服器中的身份訪問該應用。
全文摘要
本發明提供一種實現單點登錄的方法及系統,該方法可實現針對所有應用的單點登錄,所述方法包括單點登錄伺服器綁定用戶在該單點登錄伺服器和應用中的身份信息的步驟;用戶訪問應用的受保護資源時,應用請求單點登錄伺服器認證用戶的步驟;單點登錄伺服器完成用戶認證後,如果單點登錄伺服器已綁定用戶在該應用中身份信息,則返回用戶在該應用中的身份信息;否則返回用戶在單點登錄伺服器中的身份信息,完成登錄的步驟。此外,基於上述方法本發明還提供一種單點登錄伺服器,該伺服器包含用戶管理模塊和會話管理模塊,其特徵在於,所述伺服器還包含信息交互模塊、應用管理模塊和身份綁定模塊。
文檔編號H04L29/06GK102882835SQ201110195869
公開日2013年1月16日 申請日期2011年7月13日 優先權日2011年7月13日
發明者劉磊, 徐劍, 牛津, 楊中臻, 王獻冠 申請人:中國科學院聲學研究所