單點登錄
前言
本篇做為.Net 統一用戶管理的系列文章的開山之作,主要說一個單點登錄是怎么實現的,以及為啥要統一用戶管理。 單點登錄(Single Sign On),簡稱為 SSO,是目前比較流行的企業業務整合的解決方案之一。SSO的定義是在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。
單點登錄實現步驟
1.系統A 發送 用戶名 和密碼到統一驗證模塊
2.統一驗證模塊驗證密碼和賬號是否正確,正確返回一個OpenId
3. 系統A 將OpenId寫入Cookies (頂級域名下)
4. 系統B 登錄時候,檢查Cookies 是否存在,則發送OpenId到的統一驗證模塊,
5. 統一驗證模塊發送該OpenId是否存在。 不存在挑轉到登錄頁面
OpenId 的更新
如上可知OpenId 是存在cookies中的各個系統之間,信任的是也是這個OpenId. 所以我們需要設計一個過期機制
1. 當用戶在任何一個子系統點擊退出時,需要刪除該cookies ,
2. 由於cookies 存儲在客戶端,應該在用戶進行每個操作時,最好都能夠產生一個新的OpenId.防止OpenId 被偽造
以上就是個人對單點登錄的一個想法。歡迎大家指正。下一篇將簡單的說一下統一菜單和權限管理