單點登錄 (SSO) 允許公司以一種一致的方式跨多個應用程式實施存取控制策略。 在本文中,作者介紹了將 SSO 從企業擴展到雲的核心概念。 探討了在您的資料中心中運行的傳統應用程式與 SaaS 應用程式之間實現 SSO 的幾種不同機制。
單點登錄 (SSO) 是大部分大型企業向其使用者(員工、合作夥伴、客戶和承包商)提供的一項重要服務。 在 IT 安全制度越來越嚴格的時代裡,SSO 技術的使用使得公司能夠以一種一致的方式跨多個應用程式實施存取控制策略,這減少了實現的總體成本。 這些策略可能包括密碼長度、密碼複雜度、密碼使用時長、以前的密碼的重用等。 無論一個應用程式必須遵守哪些規則或策略,您都只需實現一次即可在以後重用。 對於利用此 SSO 基礎架構的系統,認證和審計也得到了簡化。
除了 IT 合規性,還能避免重大的風險。 您有多少次路過配電室 (cubicle isles),看到了寫著密碼的便箋? 您個人為記住每個企業系統的數百個密碼所選的方法是什麼? 在整個企業中擁有 SSO,使您的使用者只需記住一個密碼,這不僅減少了將密碼粘貼在配電室牆上的風險,還減少了密碼共用的風險。 如果您的電子郵件、人力資源福利制度,以及其他系統都使用同一個密碼,使用者不可能與他(或她)的同事共用該密碼。
在成本節省方面,事實證明 SSO 能夠通過減少服務台呼叫數量獲得直接的投資回報。 更少的不同密碼意味著某人因為忘記密碼而呼叫服務台的次數更少。 多篇 Internet 文章與 Gartner 和 Forrester Research 等公司的報告稱呼叫量可以減少 40% 到 70%。
SSO 的元件
我們首先看看支援 SSO 所需的一些基本的技術元件:
使用者。 一個嘗試登錄的使用者 Web 應用程式。 使用者嘗試登錄到的一個應用程式
對於本文,將該應用程式想作任何 JAVA™、Microsoft® .NET、PHP Web 應用程式或軟體即服務 (SaaS) 應用程式,比如 SalesForce.com、Google Apps、Microsoft Office 365、 Concur、ServiceNow 或 Workday。
Web 應用程式代理。 對於在企業資料中心內運行的非 SaaS 應用程式,通常安裝在託管該應用程式的 Web 或應用伺服器之上。 策略伺服器/SSO 伺服器。 提供實現 SSO 所需的所有功能和特性的軟體部分 目錄。 存儲使用者名、密碼和使用者的其他屬性的基礎存儲庫
在大部分組織中,您會看到 Active Directory® Domain Services 或其他一些實現羽量級目錄訪問協定 (LDAP) 的目錄軟體。 儘管不是最佳實踐,但您也可使用關係資料庫表。
圖 1 顯示了這些元件的實際應用。
圖 1. SSO 的高級元件
本文重點介紹用於基於 Web 的應用程式的 SSO(而不是桌面 SSO 或企業 SSO)。 在基本層面上,基於 Web 的 SSO 原則遵循 圖 1 中所示的架構。 讓我們通過一個示例,更具體地分析以下該圖。
SSO 需要的兩個重要元件:策略/SSO 伺服器和 Web 應用程式代理。 策略伺服器/SSO 伺服器常常稱為身份決策點 (IDP)。 IDP 「決定」 使用者憑據(使用者名/密碼)是否正確以及使用者是否可以登錄。 每個大型企業軟體供應商可能都提供了這一領域的部分技術或產品。 這一領域的頂級解決方案包括 IBM® Security Access Manager for Enterprise Single Sign-On、CA SiteMinder 和 Oracle Access Management。 此外,許多開源和 SaaS 產品正在市場中興起,它們正成為上述產品(OpenAM、Okta、DirectAxs 和 Ping Identity)的重要競爭對手。
上面提及的每個產品都隨帶了自己的代理,這些代理必須安裝在您嘗試保護和為其啟用 SSO 的應用程式的 Web 服務器和應用伺服器上。 一般而言,您將擁有大部分主要作業系統、Web 服務器軟體和應用伺服器軟體的代理。 代理的作用是攔截對一個應用程式的登錄請求,然後將該請求傳遞給 SSO 伺服器以制定決策。 因此,此元件常常稱為身份執行點。