2008年5月6日 星期二

Google Apps Education Edition 之二SSO原理篇

Single Sign-On (簡稱 SSO),中文名稱為「單一登入」。

可以讓 Google Apps for your Domain (簡稱 GAFYD)與企業、組織中現有的網路服務結合,只需要一組帳號密碼,就可以使用所有服務。

在 GAFYD 中,Google 的角色是 Sp (Service Provider 服務提供者),你自己的企業則是 IdP (Identity Provider 身份提供者)。

[[MORE]]

SSO 的意義在於只需要一個 IdP,可以搭配很多個 Sp。(一組帳號密碼可以使用很多個服務)

例如 Pixnet 本身是相簿的 SP,也是部落格的 SP,同時 Google 也提供信箱的服務,因此 Google 亦為 SP。但 Pixnet 又要負責整合這些服務,提供單一的帳號密碼,所以它同時也是 IdP。

如果你在 GAFYD 選擇使用 SSO,那麼 Google 就成為 SP,你就要自行負責帳號密碼的管理,因此你是 IdP。

在這種狀況下,Google 必須有帳號密碼資料,你自己伺服器中也需要有帳號密碼的資料。這兩邊的帳號是同步存在的,但密碼卻可以不相同。如果你沒有開啟 SSO,那就會用 Google 裡面的密碼進行身份驗證。如果你開啟了 SSO,就會用你自己伺服器中的密碼驗證。當然,為了避免困擾,將兩邊的密碼同步起來是一個好辦法。

SSO 進行身份驗證時,使用的是 SAML 的標準。通訊的過程主要是以 XML 及其變形作為資料傳遞的格式。其運作流程由瀏覽器分別與 SP 及 IdP 溝通,利用 XML 身份格式做為媒介,將這兩者搭起來。請參考此頁的圖示說明

有興趣實作 SSO 的朋友,亦可參考前輩的經驗,以免走冤枉路。

3 則留言: