1. 程式人生 > >SSO(單點登錄)與旅遊年卡

SSO(單點登錄)與旅遊年卡

影響 存在 心情 ges .cn 長城 jpg 新的 刪除

  SSO(單點登錄)與旅遊年卡

  SSO英文全稱Single Sign On,單點登錄。SSO是在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。它包括可以將這次主要的登錄映射到其他應用中用於同一個用戶的登錄的機制。它是目前比較流行的企業業務整合的解決方案之一。(來自百度百科)

  旅遊年卡:一次辦卡,多個景點遊玩。避免了每個景點排隊買票浪費時間影響心情。

  我喜歡逛,07年廣州一行讓我愛上了旅行。十年間轉戰祖國大江南北。東到浙江蘇州上海,南到廣東珠海澳門,西到宜昌長江三峽,北到首都長城山海關。經常說的一句話,歷史上的雲遊詩人作家什麽的,到現在是寫不出那些膾炙人口的詩詞作曲的。為啥?全都圈起來收費啦。這些年去過得地方火車票和門票都是厚厚的一紮。

   技術分享

  好了,話回正題。SSO與旅遊年卡有什麽關系呢?上面已經說過了他們兩個的各自的作用。他們有什麽共同點呢?一次,都只需要一次。單點登錄一次登錄,就可以訪問多個互相信任的應用系統,而不需要用戶訪問每個應用系統的時候都登錄一次。旅遊年卡一次開卡,就可以遊玩多個授權的景點,而不需要遊客到每個景點大門都排隊買票。省錢省事省時,你說爽不爽。

  然而,在網上看了很多老司機寫的SSO單點登錄的原理與實現,都很難一下子明白(我是最業余的程序員)。無意看到去遊玩時的照片,想起每次都是用旅遊年卡去遊玩,立馬想到哎嘛這不就是單點登錄麽?到植物園門口"滴"一下就進去了;到動物園門口“滴”一下就進去了;到海洋館“滴”一下就進去了……其實,在SSO登錄後再訪問別的應用系統,也有一個“滴”的過程,只是這個過程太快。我們根本看不到而已。

  

  下面,我就帶著大家一起在SSO的世界裏旅遊吧。

  首先,要登錄系統必須要有一個賬號,要旅遊必須要有一個年卡。

  其次,要訪問不同的應用系統必須得在其中一個系統中發起登錄。同樣,要使用旅遊年卡,必須在其中一個景點開卡(錄指紋、激活)。

  然後,SSO服務器會對賬號密碼進行校驗,如果校驗成功,會將登錄用戶信息存放到一個tokey中,並返回到請求的應用系統中。

    比如,有三個應用系統:博客園(www.cnblogs.com)、植物園(www.zhiwuyuan.com)、動物園(www.dongwuyuan.com)。(搞定了跨域,那其他的都不是問題)不要問我為什麽一上來就搞跨域,我就問你不跨域你幹嘛要用SSO?

    另外還有一個SSO登錄驗證系統(www.sso.com)。

    好,現在我要去博客園看猴子(www.cnblogs.com/monkey),啊。需要登錄。。。biu,頁面跳轉到SSO登錄頁(www.sso.com/login?url=www.cnblogs.com/monkey)。

    輸入賬號、密碼(年卡刷卡驗指紋)。登錄成功,好,給你帶上令牌(token)再回去(www.cnblogs.com/monkey?token=猴子看到不咬你)。來到博客園的猴山,發現不少程序猿。一個個眼紅睚眥的瞪著你。突然,猴王看到你胸前掛著的令牌(token=猴子看到不咬你)。微笑著向你打起了招呼:哎呀,快看。是同類耶……於是你就在博客園跟猴子們愉快的玩耍了半天。

    吃過午飯,你又想去植物園逛逛。於是打開了(www.zhiwuyuan.com)。把你手中的令牌(年卡)遞給了園丁大叔,園丁大叔拿著你的令牌“biu”的一下跑到驗證系統驗證你是否登錄(www.sso.com/login?url=www.zhiwuyuan.com&token=猴子看到不咬你),系統:咦,這不是猴子看到不咬你麽。好、驗證通過。然後又“biu”的一下跑回來,而這時候你的眼睛還沒有眨一下。然後大叔向你打開了植物園的大門。植物們看到你胸前的令牌,都不害怕了,爭相開放著鮮艷的花朵,散發出迷猴、啊不、迷人的芬芳。

  到了晚上,你還想去動物園看看菜鳥,於是你就帶著令牌出發了……

  就這樣愉快的玩了一天,第二天,你要出差了,也不知道要去多久。於是你就告訴博客園:博博,我要走了,別再記著我了。博客園聽到此話,biu的一下跑到驗證系統(www.sso.com/logout?token=猴子看到不咬你),驗證系統從記錄中刪除猴子看到不咬你對應的信息。並且告訴你:安心的去吧,下次再來猴子看到會咬你的哦。(旅遊年卡註銷)而後你再拿著猴子看到不咬你的令牌到植物園人家就不給你開門了。因為(www.sso.com/login?url=www.zhiwuyuan.com&token=猴子看到不咬你)猴子看到不咬你已經不存在了。

  我們知道旅遊年卡一般都是有有效期的(通常為一年),同樣。SSO登錄驗證也是有有效期的,這個可以根據系統設置。如果在這個有效期內用戶沒有主動退出,則一直到過這個有效期,再訪問應用系統則需要重新登錄(旅遊年卡則需要重新激活)。而到下一次再訪問登錄時,SSO驗證系統會給你一個新的(token=猩猩看到不咬你)令牌。(旅遊年卡會給你一個新的有效期起止時間),然而賬號密碼(年卡、指紋)還是不變的。

  

  好了,這篇文章只講了SSO相關的思路,並沒有講具體的實現與邏輯處理。權當拋磚引玉了。歡迎拍磚。

  (完)

SSO(單點登錄)與旅遊年卡