一種單點登錄方法及裝置與流程
2023-12-06 03:41:28 3

本發明涉及通信技術領域,特別是涉及一種單點登錄方法及裝置。
背景技術:
隨著各種行動網路終端設備、特別是智慧型手機技術的發展和普及應用,人們每天都被大量各種信息和數據所包圍,信息社會已進入了大數據的時代。然而,信息和網絡技術的快速發展在推進社會文明進步、給人們工作和生活帶來各種方便的同時,個人的信息安全所面臨的危險也與日俱增。
比如,企業業務整合中常用到的單點登錄系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。在此過程中,只要用戶登錄認證信息被洩露出去,信息竊取者即可通過此票據來獲得其他應用的訪問權限,信息安全存在較大隱患。
技術實現要素:
本發明要解決的技術問題是提供一種單點登錄方法及裝置,用以解決現有技術中單點登錄信息安全存在較大隱患的問題。
一方面,本發明提供一種單點登錄方法,包括:用戶成功登錄第一應用後,生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據;當所述用戶啟動第二應用時,將所述加密票據發送給所述第二應用,以使所述第二應用啟動票據驗證過程;在所述第二應用提供的加密票據被驗證通過的情況下,允許所述用戶登錄所述第二應用。
可選的,所述用戶成功登錄第一應用後,生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據包括:通過手機號和驗證碼的方式接受用戶登錄所述第一應用;為所述用戶生成相應的認證票據並應用當前時間對所述認證票據加密以形成所述加密票據。
可選的,所述通過手機號和驗證碼的方式接受用戶登錄所述第一應用之後,形成所述加密票據之前,所述方法還包括:將所述用戶的、除登錄帳號之外的其他帳號與所述手機號綁定。
可選的,在所述第二應用提供的加密票據被驗證通過的情況下,允許所述用戶登錄所述第二應用包括:在所述第二應用提供的加密票據與伺服器生成的加密票據一致的情況下,將所述用戶的、與所述手機號綁定的所有帳號發送給所述第二應用;根據用戶的帳號選擇指令,接收從所述所有帳號中選擇一個目標帳號發起登錄請求;對所述第二應用提供的加密票據進行再次驗證,如果驗證通過,允許所述目標帳號登錄所述第二應用。
可選的,所述方法還包括:如果所述第二應用提供的加密票據與伺服器生成的加密票據不一致,禁止所述用戶登錄所述第二應用。
可選的,所述方法還包括每間隔預設時間對所述認證票據進行一次重新加密,以更新所述加密票據。
另一方面,本發明還提供一種單點登錄裝置,包括:生成與加密單元,用於在用戶成功登錄第一應用後,生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據;發送單元,用於當所述用戶啟動第二應用時,將所述加密票據發送給所述第二應用,以使所述第二應用啟動票據驗證過程;允許單元,用於在所述第二應用提供的加密票據被驗證通過的情況下,允許所述用戶登錄所述第二應用。
可選的,所述生成與加密單元包括:接受模塊,用於通過手機號和驗證碼的方式接受用戶登錄所述第一應用;加密模塊,用於為所述用戶生成相應的認證票據並應用當前時間對所述認證票據加密以形成所述加密票據。
可選的,所述裝置還包括綁定單元,用於在通過手機號和驗證碼的方式接受用戶登錄所述第一應用之後,形成所述加密票據之前,將所述用戶的、除登錄帳號之外的其他帳號與所述手機號綁定。
可選的,所述允許單元,具體用於:在所述第二應用提供的加密票據與伺服器生成的加密票據一致的情況下,將所述用戶的、與所述手機號綁定的所有帳號發送給所述第二應用;根據用戶的帳號選擇指令,接收從所述所有帳號中選擇一個目標帳號發起登錄請求;對所述第二應用提供的加密票據進行再次驗證,如果驗證通過,允許所述目標帳號登錄所述第二應用。
可選的,所述裝置還包括更新單元,用於每間隔預設時間對所述認證票據進行一次重新加密,以更新所述加密票據。
本發明實施例提供的單點登錄方法及裝置,用戶成功登錄第一應用後,能夠生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據,當所述用戶啟動第二應用時,將所述加密票據發送給所述第二應用,用於登錄第二應用。由於對認證票據的加密與時間條件相關,因此生成的加密票據具有嚴格的時效性,超過時限就無法驗證通過,從而大大減少了票據洩露帶來的風險,有效提高了單點登錄的安全性。
附圖說明
圖1是本發明實施例提供的單點登錄方法的一種流程圖;
圖2是本發明實施例提供的單點登錄方法的一種信號流向示意圖;
圖3是本發明實施例提供的單點登錄方法一種詳細的流程圖;
圖4是本發明實施例提供的單點登錄裝置的一種結構示意圖。
具體實施方式
以下結合附圖對本發明進行詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不限定本發明。
如圖1所示,本發明的實施例提供一種單點登錄方法,包括:
s11,用戶成功登錄第一應用後,生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據;
s12,當所述用戶啟動第二應用時,將所述加密票據發送給所述第二應用,以使所述第二應用啟動票據驗證過程;
s13,在所述第二應用提供的加密票據被驗證通過的情況下,允許所述用戶登錄所述第二應用。
本發明實施例提供的單點登錄方法,用戶成功登錄第一應用後,能夠生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據,當所述用戶啟動第二應用時,將所述加密票據發送給所述第二應用,用於登錄第二應用。由於對認證票據的加密與時間條件相關,因此生成的加密票據具有嚴格的時效性,超過時限就無法驗證通過,從而大大減少了票據洩露帶來的風險,有效提高了單點登錄的安全性。
可選的,在步驟s11中,用戶可以使用用戶名加密碼的方式登錄第一應用,也可以使用手機號加驗證碼或者郵箱加驗證碼的方式登錄第一應用。登錄第一應用後,伺服器可以為該用戶生成相應的認證票據,從而使該用戶在登錄其他應用時可以憑藉此票據直接登錄。為了加強認證票據的安全性,生成的認證票據可以採用與時間條件相關的加密方式進行加密。本發明實施例中所謂的與時間條件相關具體是指對認證票據的加密具有嚴格的時效性,例如可以是當前時間經過預設算法形成的加密算法等,如果時間相差較大,則對應得加密方式不同。生成加密票據的伺服器可以每隔預設時間對該認證票據進行一次重新加密,以便更新該加密票據。
在本發明的一個實施例中,為了防止用戶名和密碼被盜帶來的風險,在步驟s11中,用戶成功登錄第一應用後,生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據可具體包括:
通過手機號和驗證碼的方式接受用戶登錄所述第一應用;
為所述用戶生成相應的認證票據並應用當前時間對所述認證票據加密以形成所述加密票據。
也就是說,用戶在登錄第一應用時,可以直接輸入手機號,伺服器可以將對應得驗證碼發送到該手機號對應的移動終端。用戶可以通過查看移動終端上的驗證碼並將驗證碼輸入登錄系統完成對第一應用的登錄。
進一步的,對於某些應用,一個用戶可能會有多個帳號,用戶也可能會對同一應用使用不同帳號登錄。為了方便用戶對這種場景的使用,也為了提高在這種場景下的登錄安全,在本發明的一個實施例中,通過手機號和驗證碼的方式接受用戶登錄所述第一應用之後,形成所述加密票據之前,本發明實施例提供的單點登錄方法還包括:將所述用戶的、除登錄帳號之外的其他帳號與所述手機號綁定。基於此,在所述第二應用提供的加密票據被驗證通過的情況下,允許所述用戶登錄所述第二應用包括:
在所述第二應用提供的加密票據與伺服器生成的加密票據一致的情況下,將所述用戶的、與所述手機號綁定的所有帳號發送給所述第二應用;
根據用戶的帳號選擇指令,接收從所述所有帳號中選擇一個目標帳號發起登錄請求;
對所述第二應用提供的加密票據進行再次驗證,如果驗證通過,允許所述目標帳號登錄所述第二應用。
例如,當用戶使用手機號加驗證碼的方式登錄第一用戶後,可以將該用戶的其他用戶名w1,w2與該手機號綁定,然後將用戶名w1、w2對應的帳號向第二應用發送,以供用戶選擇。當用戶選擇了其中一個帳號後,可以對該帳號使用同樣的加密票據進行驗證登錄,從而方便地提供了不同帳號的安全登錄方式。
可選的,對加密票據的驗證可以為檢測第二應用提供的加密票據與伺服器生成的票據是否一致,在二者一致的情況下,確定該加密票據通過驗證,允許第二應用登錄,在二者不一致的情況下,確定該加密票據沒有通過驗證,禁止該用戶登錄第二應用。
下面通過具體實施例對本發明提供的單點登錄方法進行詳細的說明。
圖2是本發明實施例提供的單點登錄方法的信號流向示意圖,圖3是本發明實施例提供的單點登錄方法的流程圖。結合圖2和圖3,本實施例中的單點登錄方法可包括如下步驟:
s201,用戶通過移動終端訪問第一應用,填寫手機號,發送驗證碼,填寫手機收到的驗證碼後登錄成功。
s202,如果用戶有未綁定至此手機號的帳號,使用帳號綁定功能綁定這些帳號。
s203,用戶使用第一應用單點登錄功能。伺服器根據當前的時間對認證票據進行加密並下相應的加密票據。
s204,第一應用將此票據傳遞給第二應用,第二應用收到此票據後啟動單點登錄的票據驗證碼過程。
s205,第二應用向伺服器請求票據的校驗,通過校驗後,伺服器下發此票據對應帳號的所有子帳號。
s206,第二應用彈出子帳號選擇頁面。用戶選擇某一個帳號,向伺服器發起登錄請求,登錄此帳號成功。
本實施例提供的單點登錄方法,通過使用手機號和驗證碼的登錄方式上減少了用戶信息洩露的風險。並且可通過手機號綁定多個子帳號,因而減少了用戶信息洩露的風險和範圍,使用戶獲得更簡單的體驗。而且,用戶登錄後生成的票據具有時效性,大大降低了因為此票據洩露而造成用戶信息洩露的風險。總之,本實施例提供的單點登錄方法更加安全,有效,同時使用戶使用起來更加方便。
相應的,如圖4所示,本發明的實施例還提供一種單點登錄裝置,包括:
生成與加密單元41,用於在用戶成功登錄第一應用後,生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據;
發送單元42,用於當所述用戶啟動第二應用時,將所述加密票據發送給所述第二應用,以使所述第二應用啟動票據驗證過程;
允許單元43,用於在所述第二應用提供的加密票據被驗證通過的情況下,允許所述用戶登錄所述第二應用。
本發明實施例提供的單點登錄裝置,用戶成功登錄第一應用後,能夠生成相應的認證票據並對所述認證票據進行與時間條件相關的加密以形成加密票據,當所述用戶啟動第二應用時,將所述加密票據發送給所述第二應用,用於登錄第二應用。由於對認證票據的加密與時間條件相關,因此生成的加密票據具有嚴格的時效性,超過時限就無法驗證通過,從而大大減少了票據洩露帶來的風險,有效提高了單點登錄的安全性。
可選的,生成與加密單元41可包括:
接受模塊,用於通過手機號和驗證碼的方式接受用戶登錄所述第一應用;
加密模塊,用於為所述用戶生成相應的認證票據並應用當前時間對所述認證票據加密以形成所述加密票據。
可選的,本發明提供的單點登錄裝置還可包括綁定單元,用於在通過手機號和驗證碼的方式接受用戶登錄所述第一應用之後,形成所述加密票據之前,將所述用戶的、除登錄帳號之外的其他帳號與所述手機號綁定。
可選的,允許單元43,具體可用於:
在所述第二應用提供的加密票據與伺服器生成的加密票據一致的情況下,將所述用戶的、與所述手機號綁定的所有帳號發送給所述第二應用;
根據用戶的帳號選擇指令,接收從所述所有帳號中選擇一個目標帳號發起登錄請求;
對所述第二應用提供的加密票據進行再次驗證,如果驗證通過,允許所述目標帳號登錄所述第二應用。
進一步的,本發明實施例提供的單點登錄裝置還可包括更新單元,用於每間隔預設時間對所述認證票據進行一次重新加密,以更新所述加密票據。
需要說明的是,在本文中,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句「包括一個……」限定的要素,並不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可藉助軟體加必需的通用硬體平臺的方式來實現,當然也可以通過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質(如rom/ram、磁碟、光碟)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,伺服器,空調器,或者網絡設備等)執行本發明各個實施例所述的方法。
儘管為示例目的,已經公開了本發明的優選實施例,本領域的技術人員將意識到各種改進、增加和取代也是可能的,因此,本發明的範圍應當不限於上述實施例。