sso認證
A. 如何讓sso系統信任登錄系統和免登系統
單點登錄SSO(Single Sign On)說得簡單點就是在一個多系統共存的環境下,用戶在一處登錄後,就不用在其他系統中登錄,也就是用戶的一次登錄能得到其他所有系統的信任。單點登錄在大型網站里使用得非常頻繁,例如像阿里巴巴這樣的網站,在網站的背後是成百上千的子系統,用戶一次操作或交易可能涉及到幾十個子系統的協作,如果每個子系統都需要用戶認證,不僅用戶會瘋掉,各子系統也會為這種重復認證授權的邏輯搞瘋掉。實現單點登錄說到底就是要解決如何產生和存儲那個信任,再就是其他系統如何驗證這個信任的有效性,因此要點也就以下幾個:
存儲信任 驗證信任 只要解決了以上的問題,達到了開頭講得效果就可以說是SSO。最簡單實現SSO的方法就是用Cookie,實現流程如下所示:
常用的兩種web單點登錄SSO的實現原理X
不然發現以上的方案是把信任存儲在客戶端的Cookie里,這種方法雖然實現方便但立馬會讓人質疑兩個問題:
Cookie不安全 不能跨域免登 對於第一個問題一般都是通過加密Cookie來處理,第二個問題是硬傷,其實這種方案的思路的就是要把這個信任關系存儲在客戶端,要實現這個也不一定只能用Cookie,用flash也能解決,flash的Shared Object API就提供了存儲能力。
一般說來,大型系統會採取在服務端存儲信任關系的做法,實現流程如下所示:
常用的兩種web單點登錄SSO的實現原理
以上方案就是要把信任關系存儲在單獨的 SSO系統(暫且這么稱呼它)里,說起來只是簡單地從客戶端移到了服務端,但其中幾個問題需要重點解決:
如何高效存儲大量臨時性的信任數據 如何防止信息傳遞過程被篡改 如何讓SSO系統信任登錄系統和免登系統 對於第一個問題,一般可以採用類似與memcached的分布式緩存的方案, 既能提供可擴展數據量的機制,也能提供高效訪問。對於第二個問題,一般採取數字簽名的方法,要麼通過數字證書簽名,要麼通過像md5的方式,這就需要SSO系統返回免登URL的時候對需驗證的參數進行md5加密,並帶上token一起返回,最後需免登的系統進行驗證信任關系的時候,需把這個token傳給SSO系統,SSO系統通過對token的驗證就可以辨別信息是否被改過。對於最後一個問題,可以通過白名單來處理,說簡單點只有在白名單上的系統才能請求生產信任關系,
B. 門戶中如何實現單點登錄和統一身份認證
本案涉及三個概念及功能模塊,即門戶、單點登錄和統一身份認證。
單點登錄(Single Sign-On,縮寫為SSO),它是目前業務整合時使用較多的一種解決方案,通過SSO,用戶只需要在某個應用系統入口登錄一次,就可以訪問所有與該應用系統相互信任的其它應用系統。
目前成熟的SSO實現框架有很多,開源的有JOSSO、CAS等很多,你可以選擇其中之一與門戶集成即可,集成方法的問題可在選型後在網路中查找,可選方案請參考《Liferay 集成 CAS 實現單點登錄與應用系統集成》 http://www.ibm.com/developerworks/cn/opensource/os-cn-liferay-cas/index.html
所謂身份認證,就是判斷一個用戶是否為合法用戶的處理過程。最常用的簡單身份認證方式是系統通過核對用戶輸入的用戶名和口令,看其是否與系統中存儲的該用戶的用戶名和口令一致,來判斷用戶身份是否正確。復雜一些的身份認證方式採用一些較復雜的加密演算法與協議,需要用戶出示更多的信息(如私鑰)來證明自己的身份,如Kerberos身份認證系統。
目前基於SOA架構,可跨平台與多種類型的應用系統對接的統一身份認證平台也有很多,
身份存儲方式有:通用關系型資料庫、LDAP目錄、Microsoft Active Directory(AD)等形式,可選方案可參考《Web Service Case Study: 統一身份認證服務》
https://www.ibm.com/developerworks/cn/webservices/ws-casestudy/part4/
或《Liferay與CAS及LDAP》http://www.huqiwen.com/2013/12/18/liferay-cas-ldap/
C. SSO是什麼
SSO指的是單點登錄(Single Sign On),當用戶在身份認證伺服器上登錄了一次以後,即可獲得訪問單點登錄系統中其他聯邦系統和應用軟體的許可權。
同時這種實現是不需要管理員對用戶的登錄狀態或其他信息進行修改的,這意味著在多個應用系統中,用戶只需一次登錄就可以訪問所有相互信任的應用系統。
單點登錄是多個相關但獨立的軟體系統的訪問控制的屬性。使用此屬性,用戶使用單個ID和密碼登錄,以便在不使用不同用戶名或密碼的情況下訪問已連接的系統,或者在某些配置中在每個系統上無縫登錄。
單點登錄通常使用輕量級目錄訪問協議(LDAP)和(目錄)伺服器上存儲的LDAP資料庫來完成,可以使用cookie在IP網路上實現簡單版本的單點登錄。
圖為一種SSO系統:
(3)sso認證擴展閱讀
實現機制
當用戶第一次訪問應用系統1的時候,因為還沒有登錄,會被引導到認證系統中進行登錄;根據用戶提供的登錄信息,認證系統進行身份校驗,如果通過校驗,應該返回給用戶一個認證的憑據--ticket;
用戶再訪問別的應用的時候就會將這個ticket帶上,作為自己認證的憑據,應用系統接受到請求之後會把ticket送到認證系統進行校驗,檢查ticket的合法性。如果通過校驗,用戶就可以在不用再次登錄的情況下訪問應用系統2和應用系統3了。
SSO的優勢
1、降低訪問第三方站點的風險(未在外部存儲或管理的用戶密碼)。
2、從不同的用戶名和密碼組合減少密碼疲勞。
3、減少重新輸入相同身份的密碼所花費的時間。
4、由於關於密碼的IT服務台呼叫數量減少,降低了IT成本。
5、SSO共享所有其他應用程序和系統用於身份驗證的集中身份驗證伺服器,並將其與技術相結合,以確保用戶不必多次主動輸入其憑據。
D. 如何理解單點登錄2019年最新的單點登錄SSO有何推薦怎麼才能讓老闆選擇覺得選擇廠商來做沒錯
單點登錄SSO就是通過一個賬號密碼可以登錄公司所有的業務平台。
公司一般通過單點登錄主要是為了釋放IT運維的工作壓力以及員工頻繁登錄的困擾,但是說到底如果只是單點登錄並不能完全解決IT運維的工作壓力。
說幾個場景:
場景1:公司的人員流動打,經常會發生入離調,組織架構也經常變法,還需管理一些合作商的不同人的賬號。
場景2:由於人員多,IT經理其實沒有辦法明確知曉每一位員工的賬號許可權是否完全正確的開啟。
場景3:公司內部多個源,但是每個源中存儲的欄位不一樣,除了源還有應用系統,這樣就會到導致打通關系的復雜性高。
所以除了要購置單點登錄sso外,還需要玉符的全賬號生命周期管理也就是常說的LCM以及統一目錄UD。只有通過統一身份源後,才可以實現自動化的人員許可權的管理,徹底釋放IT運維的壓力。
E. 請問大家,支持多因素認證的單點登錄平台有哪些
有個玉符的平台就行啊,可以做到企業信息安全,而且技術也先進,望採納
F. 多系統集成,單點登錄SSO,用戶登錄許可權控制
區分這兩個User的許可權,一定要有一個區分的標識,這樣SystemA和SystemB才能做到許可權的管控,能作為這種區分標識的是username也好,是password也好,Ip也好,機器名也好,mac也好,只有區分出用戶,你才能做到許可權分別管控。
但現在看來,Username一樣,所以不能作為區分的標識;
Password作為標識,那麼你的SSO就失去了本身的意義所在;
IP,MAC,machineName作為標識,又不符合設計邏輯。
這種問題的處理,應該早在兩個系統的數據整合的時候就該想到了。AD,LDAP登錄用戶,如果沒有區分的標識,系統A和B是無法區分出來的,也就無法區分許可權。除非在你的系統中,找到這樣的特殊區分標識,然後在系統A和B中進行判斷。就現在看來,貌似無法完美實現你的要求。
G. 單點登錄是什麼
SSO,也就是單點登錄(single sign-on),它是一種認證方法,要求用戶只登錄一次,
使用一個用戶ID和密碼,登錄多個應用、系統或Web網站。而Open Group對單點登錄的定
義是「單點登錄(SSO)是用戶認證和授權的單一行為可以允許一位用戶訪問他的訪問許
可中包含的所有電腦和系統,而不要輸入多個密碼的機制。單點登錄減少了人為錯誤,
這是系統失敗的重要因素,需求量很大,但很難實施。」
企業的單點登錄(SSO)為終端用戶提供了改善用戶經驗,幫助IT員工減少管理大量應用
上的密碼的成本。
H. 如何實現 與windows 的sso
1、windows域登錄與SSO伺服器整合
1.1 分析:windows域登錄過程採用Kerberose v5協議進行登錄,過程非常復雜,並且登錄中身份認證以及域的權
限整合在一起。要剝離身份認證和許可權賦權非常困難。要整合現有的SSO伺服器,可以考慮,採用windows域控制器
統一管理用戶,SSO伺服器採用該域控制器的Active Directory中的用戶信息。windows工作站(比如winxp)登錄
域過程中,保持原域登錄的過程,在其中添加SSO伺服器的登錄過程。
1.2 實現:通過修改GINA模塊,在windows工作站(比如winxp)登錄域過程中,winlogon調用GINA組模塊,把用戶
提供的賬號和密碼傳達給GINA,由GINA負責在域控制器中以及SSO伺服器中賬號和密碼的有效性驗證,然後把驗證
結果反饋給Winlogon程序,只有域控制器和SSO伺服器同時認證成功,才是登錄成功。
另外開發一個DLL程序,暫時稱為SSOLogin模塊,GINA在登錄成功後,將SSO的登錄信息傳遞給SSOLogin模塊,動力
工作站在啟動時,首先調用SSOLogin模塊,判斷已經登錄的用戶,然後通過動力工作站訪問其他應用時,就可以通
過SSO伺服器進行單點登錄。
1.3 技術點:
(1)通過jCIFS實現SSO伺服器在Active Directory進行域登錄。
(2)採用WFC開發框架對GINA.dll進行修改,在注冊表中進行注冊
1.4 風險難點:(1)、windows域登錄過程的分析與改造。(2)、windows的應用不開源,代碼分析會比較困難。
1.5 其他:是否還考慮linux操作系統加入windows域的過程?
1.6 winxp登錄域過程如下:
(1).用戶首先按Ctrl+Alt+Del組合鍵。
(2).Winlogon檢測到用戶按下SAS鍵,就調用GINA,由GINA顯示登錄對話
框,以便用戶輸入賬號和密碼。
(3).用戶選擇所要登錄的域和填寫賬號與密碼,確定後,GINA將用戶輸入的
信息發送給LSA進行驗證。
(4).在用戶登錄到本機的情況下,LSA將請求發送給Kerberos驗證程序包。
通過散列演算法,根據用戶信息生成一個密鑰,並將密鑰存儲在證書緩存區中。
(5).Kerberos驗證程序向KDC(Key Distribution Center--密鑰分配中心)發
送一個包含用戶身份信息和驗證預處理數據的驗證服務請求,其中包含用戶證
書和散列演算法加密時間的標記。
(6).KDC接收到數據後,利用自己的密鑰對請求中的時間標記進行解密,通
過解密的時間標記是否正確,就可以判斷用戶是否有效。
(7).如果用戶有效,KDC將向用戶發送一個TGT(Ticket-Granting Ticket--
票據授予票據)。該TGT(AS_REP)將用戶的密鑰進行解密,其中包含會話密鑰、
該會話密鑰指向的用戶名稱、該票據的最大生命期以及其他一些可能需要的數
據和設置等。用戶所申請的票據在KDC的密鑰中被加密,並附著在AS_REP中。
在TGT的授權數據部分包含用戶賬號的SID以及該用戶所屬的全局組和通用組的
SID。注意,返回到LSA的SID包含用戶的訪問令牌。票據的最大生命期是由域
策略決定的。如果票據在活動的會話中超過期限,用戶就必須申請新的票據。
(8).當用戶試圖訪問資源時,客戶系統使用TGT從域控制器上的Kerberos
TGS請求服務票據(TGS_REQ)。然後TGS將服務票據(TGS_REP)發送給客戶。該
服務票據是使用伺服器的密鑰進行加密的。同時,SID被Kerberos服務從TGT復
制到所有的Kerberos服務包含的子序列服務票據中。
(9).客戶將票據直接提交到需要訪問的網路服務上,通過服務票據就能證明
用戶的標識和針對該服務的許可權,以及服務對應用戶的標識。
I. 單點登錄可以支持雙認證的方式嗎
支持雙認證方式的單點登錄方案 - 支持多認證方式的單點登錄是目前的一個新需求,通常這又使認證協議的實現和跨域的認證更加復雜。為此提出一種靈活的支..
J. SSO是什麼
微軟已經推出了Office System,其中的SharePoint Portal Server 2003(以下簡稱SPS2003)可以用來快速地建立起一個門戶網站,可以使企業內用戶輕易地找到所需要的信息,協同工作,同時,也可以向Internet上的用戶提供一個信息查詢的門戶網站。
如果用戶的客戶端和SPS2003伺服器以及其他一些伺服器(例如Exchange Server)在同一個域中,那麼通過SPS2003的網站,訪問其他的信息是一件輕而易舉的事情,但在很多時候,可能會遇到下面的問題:
1. 客戶端並沒有加入到域中,或者客戶端通過虛擬專用網(VPN)接入公司網路。此時,在訪問所有的伺服器時,都需要輸入用戶信息。
2. 用戶會使用一些第三方的產品,無法將這些伺服器加入到域中。此時,即使登錄了SPS2003的網站,在訪問其他伺服器的時候,還是會出現需要用戶信息的窗口。
正是基於以上的需求,在SPS2003中,有一項新的功能—Single Sign On(以下簡稱SSO)。SSO的基本思想就是:
建立一個加密的資料庫,把用戶的認證信息,存放到這個資料庫中。當成功地驗證了登錄SPS2003網站的用戶身份以後,就可以從加密的資料庫中,獲得用戶的信息,從而用來訪問其他的伺服器或者一些第三方的伺服器。