這激發了我對「單一簽入」系統的進一步想法。過去,我從信用卡刷卡機制方式中類推了一個身份認證的流程(其實完全抄自於銀行信用卡刷卡流程)。像是天瓏書局就是與國泰世華銀行結合,當使用者把訂單確定後,就會轉到國泰世華銀行的信用卡刷卡頁面,待信用卡認證後,國泰世華銀行網頁就會再轉回天瓏書局的頁面,天瓏網站從其中可得知使用者刷卡結果並決定訂單是否該出貨。
而「單一簽入」的流程也是使用者先來到服務網站,當他點下需要「登入」才能使用的網頁時,會先轉到認證網站去,而此時瀏覽器會帶著一個 SESSIONID ,接下來,使用者在認證網站上填入帳號/密碼,經認證網站確認後,將使用者的瀏覽頁面轉向回服務網站,而服務網站能針對 SESSIONID 繼續提供使用者服務。
這麼作有幾點好處:
- 當所有的服務網站都採用相同的認證網站時,那麼使用者就不用記住非常多組的帳號/密碼了。
- 服務網站永遠不知道使用者的密碼,這提昇使用者的隱私保全。
- 除了帳號/密碼只有一組外,使用者的個人身份資料也只會有一組,這樣到了新的服務網站就可以少打很多資料了。
上述的舊想法只簡化了認證的動作,但經過那個懶站長的抱怨後,我到有另一個想法可以結合「單一簽入」的概念,讓使用者根本不需要打密碼。
話說以前的 bbs 站台有提供 pop3 認證的功能,只要你相信站長不會偷用你的信箱,你可以直接把 pop3 帳號/密碼設在 bbs 站上,讓站主確認你就是那個 email 的擁有者。但這樣作,真的需要信心。所以直接把 email 帳號/密碼告訴站長在現今的社會是不可行的。不過,這方向滿正確的。現代人那個沒有 email ,我想大概就是那位靠著沿街賣馬鈴薯,賣到賺一間公司的老伯吧!所以說,如果你不是賣馬鈴薯賺大錢,還是要申請一個 email 。
上述的 email 認證方法,我們拿來結合進「單一簽入」系統,當使用者來到認證網站時,只需要輸入 email 帳號,按下確定後,認證網站發出一封認證信到使用者的信箱,只要使用者點選了那封信的認證連結,那麼就回到原來的認證網站,而認證網站也就確認了使用者確確實實擁有那個註冊 email 。如此一來,每次使用者都是透過點選認證信的方式來到認證網站,這樣他也不需要在認證網站上設定密碼了。
我們如果再把 email 的想法延伸到 Gtalk 、 Skype 、 MSN 等傳訊軟體,使用者只要點選認證訊息一樣可以回到認證網站,那麼使用者要作驗證的動作也就更容易。
ps. 事實上,我還在看有關 OpenID 以及 Identify 2.0 的文件,或許它們還有更好的方法。
ms 之前有搞過一個passport 的東西
回覆刪除跟這個蠻類似的,只是它的野心讓人不敢接受