簡體   English   中英

公司的企業SSO實施

[英]Enterprise SSO implementation for a company

我一直在嘗試在企業環境中解決SSO問題,哪種解決方案最適合我的公司問題。

我們的網域上有數個應用程式(主要是.net,但有些是Java)。a.mydomain.com,b.mydomain.com等...

我的問題在於試圖弄清楚如何實現單一登錄,因為據我所知,OpenID和OpenAuth之類的東西用於基於SSO(即基於消費者的SSO)鏈接的facebook,twitter。

我們需要一個內部SSO系統設置,但是我找不到許多企業示例來說明如何執行此操作以及要使用哪些協議/框架/服務器。

誰能給我一個想法,在這種情況下應如何使用OpenID / OpenAuth,以及有什么優點和缺點?

同樣,基於令牌的SSO會是一個好主意嗎? 考慮到所有應用程序都將位於同一域(已設置SSL)。

最后,基於cookie的SSO怎么樣?

謝謝尼爾

正如您提到的那樣,所有應用程序都在同一個域中,並且您正在尋找內部SSO解決方案,因此建議您使用基於cookie的SSO服務。

  • 實施起來會更容易。 只需檢查Cookie並授予用戶訪問應用程序的權限。
  • 您的不同應用程序之間無需交換XML消息(無需設計架構)
  • 您不需要雇用任何Web服務專家。 (只要您的開發人員知道如何處理Cookie)
  • 最終它將取決於您的可伸縮性要求

更新:

可擴展性:

  • 將來,您可能會在不同地理位置擴展用戶基礎。
  • 您的不同應用程序可能具有不同的服務器,並且用戶數據庫可能變得分散。
  • 在這種情況下,您將必須維護身份存儲庫以將身份驗證作為服務提供(這由您提到的身份驗證框架完成)

餅干:

  • Cookie的處理不是火箭科學。 瀏覽器會在HTTP請求中自動將cookie發送到您的服務器,而您只需要閱讀它即可。
  • 創建cookie wen用戶登錄。將domain屬性設置為您的根域,以便其他子域可以訪問它。
  • 用戶嘗試登錄應用程序時檢查cookie。 如果存在cookie,則表示用戶已經登錄。
  • 用戶注銷時,請不要忘記刪除它們。

Active Directory聯合身份驗證服務( http://msdn.microsoft.com/en-us/library/bb897402.aspx )是一種企業解決方案。 我不建議您編寫自己的令牌發行者,因為其中涉及很多風險,安全性和性能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM