System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及互聯網領域,具體涉及一種微服務架構下的單點登錄方法、設備及介質。
技術介紹
1、隨著產品規模的不斷擴大,產品版本的更新迭代,系統越來越繁雜龐大,越來越多的系統之間需要一個統一的入口實現統一登錄,對單點登錄提出了要求。其中,單點登錄(sso)是一種身份驗證過程,允許用戶使用一個賬戶和密碼登錄多個應用程序或系統,而無需為每個應用程序單獨登錄。
2、能夠快捷的登錄登出認證系統,是一個系統集群最核心和最根本的要求,如何實現這一需求也成了重中之重。
3、而傳統的方案中,第三方平臺往往需要觸及用戶的賬戶信息,才能夠實現單點登錄過程,這就降低了用戶的安全性和保密性。
技術實現思路
1、為了解決上述問題,本申請提出了一種微服務架構下的單點登錄方法,包括:
2、接入指定用戶從第三方平臺發起的單點登錄請求,基于oauth2.0協議在提取點中,判斷所述單點登錄請求是否包含所述指定用戶的用戶認證憑證;
3、若不符合,則執行重定向,將所述單點登錄請求回調至用于統一存儲用戶信息和用戶認證憑證的統一認證中心,以通過所述統一認證中心返回認證完成所述指定用戶的用戶認證憑證;
4、接收所述統一認證中心返回的回調請求,若確定所述回調請求中攜帶的用戶認證憑證滿足所述提取點,則通過訪問所述統一認證中心,獲取所述指定用戶的用戶信息;
5、基于所述用戶信息對所述指定用戶進行認證,并在認證成功后,構建本地用戶資源庫。
6、在一個示例中,
7、執行提取邏輯,提取出所述指定用戶對應的關鍵信息;其中,所述關鍵信息基于所述統一認證中心的設置而不同;
8、基于所述關鍵信息,通過訪問所述統一認證中心,獲取所述指定用戶的用戶信息。
9、在一個示例中,基于所述關鍵信息,通過訪問所述統一認證中心,獲取所述指定用戶的用戶信息,具體包括:
10、基于所述關鍵信息,與所述統一認證中心,以獲取所述指定用戶的用戶信息;
11、若成功獲取所述用戶信息,則調用相應的數據庫接口恢復出所述用戶信息,并執行對所述指定用戶的用戶合法性校驗邏輯。
12、在一個示例中,基于所述用戶信息對所述指定用戶進行認證之后,所述方法還包括:
13、若認證失敗,則重定向至認證失敗界面,并放行所述單點登錄請求。
14、在一個示例中,所述方法還包括:
15、獲取認證失敗的階段,其中,所述第一階段對應于獲取所述指定用戶的用戶認證憑證,所述第二階段對應于獲取所述指定用戶的用戶信息;
16、若所述第一階段認證失敗,則在所述認證失敗界面中添加第一按鈕,所述第一按鈕用于重新發送所述單點登錄請求;
17、若所述第二階段認證失敗,則在所述認證失敗界面中添加第二按鈕,所述第二按鈕用于重新獲取所述指定用戶的用戶信息。
18、在一個示例中,所述方法還包括:
19、若所述用戶基于所述第一按鈕或所述第二按鈕,重新執行所述第一階段或所述第二階段后,仍認證失敗,則在所述認證失敗界面中添加第三按鈕,所述第三按鈕用于跳轉至所述單點登錄請求對應的應用系統的注冊界面。
20、在一個示例中,通過所述統一認證中心返回認證完成所述指定用戶的用戶認證憑證之后,所述方法還包括:
21、確定所述用戶認證憑證對應的生效時間;
22、在認證成功后,基于所述生效時間構建本地用戶資源庫,并在所述生效時間內,再次接入所述指定用戶的單點登錄請求時,確定其中包含所述指定用戶的用戶認證憑證。
23、在一個示例中,確定所述用戶認證憑證對應的生效時間之前,所述方法還包括:
24、通過所述統一認證中心,確定所述單點登錄請求中,所述指定用戶將要訪問的應用系統;
25、獲取所述應用系統的信任等級,以及所述應用系統的業務平均執行時長,以及所述指定用戶的業務平均登錄次數;
26、基于所述信任等級、所述業務平均執行時長、所述業務平均登錄次數,得到所述用戶認證憑證對應的生效時間;其中,所述信任等級、所述業務平均執行時長、所述業務平均登錄次數與所述生效時間呈正相關。
27、另一方面,本申請還提出了一種微服務架構下的單點登錄設備,包括:
28、至少一個處理器;以及,
29、與所述至少一個處理器通信連接的存儲器;其中,
30、所述存儲器存儲有可被所述至少一個處理器執行的指令,所述指令被所述至少一個處理器執行,以使所述至少一個處理器能夠執行如:上述任一示例所述的微服務架構下的單點登錄方法。
31、另一方面,本申請還提出了一種非易失性計算機存儲介質,存儲有計算機可執行指令,所述計算機可執行指令設置為:上述任一示例所述的微服務架構下的單點登錄方法。
32、通過本申請提出微服務架構下的單點登錄方法能夠帶來如下有益效果:
33、oauth2.0協議對于用戶提供了一個安全、開放簡易的標準,與傳統的授權方式不同的是,oauth2.0協議不會使第三方平臺觸及用戶的賬號信息,即第三方平臺無需使用用戶的用戶名和密碼就可以申請獲得用戶資源的授權,全部過程從本應用系統中即可完成對用戶的認證,因此具有安全性和保密性。
本文檔來自技高網...【技術保護點】
1.一種微服務架構下的單點登錄方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,通過訪問所述統一認證中心,獲取所述指定用戶的用戶信息,具體包括:
3.根據權利要求2所述的方法,其特征在于,基于所述關鍵信息,通過訪問所述統一認證中心,獲取所述指定用戶的用戶信息,具體包括:
4.根據權利要求1所述的方法,其特征在于,基于所述用戶信息對所述指定用戶進行認證之后,所述方法還包括:
5.根據權利要求4所述的方法,其特征在于,所述方法還包括:
6.根據權利要求5所述的方法,其特征在于,所述方法還包括:
7.根據權利要求1所述的方法,其特征在于,通過所述統一認證中心返回認證完成所述指定用戶的用戶認證憑證之后,所述方法還包括:
8.根據權利要求7所述的方法,其特征在于,確定所述用戶認證憑證對應的生效時間之前,所述方法還包括:
9.一種微服務架構下的單點登錄設備,其特征在于,包括:
10.一種非易失性計算機存儲介質,存儲有計算機可執行指令,其特征在于,所述計算機可執行指令設
...【技術特征摘要】
1.一種微服務架構下的單點登錄方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,通過訪問所述統一認證中心,獲取所述指定用戶的用戶信息,具體包括:
3.根據權利要求2所述的方法,其特征在于,基于所述關鍵信息,通過訪問所述統一認證中心,獲取所述指定用戶的用戶信息,具體包括:
4.根據權利要求1所述的方法,其特征在于,基于所述用戶信息對所述指定用戶進行認證之后,所述方法還包括:
5.根據權利要求4所述的方法,其特征在于,所述方法還包括:
6.根據權利要求5...
【專利技術屬性】
技術研發人員:賀魯銘,周祥國,宮保金,王家琦,楊程遠,喬東旭,
申請(專利權)人:浪潮通用軟件有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。