先上个图,画得比较粗糙,请见谅

 

简单的单点登录模型sso_单点登录

1,单点登录存储用户登录信息,并产生密钥(软加密或者硬加密都好,有加密机的项目用硬件加密更安全)

2,从sso跳转到server1,2,3或者反向跳转都要验证密钥,失败则回到登录首页。

3,在线页面发送注册心跳,每个server独立管理自己的session,但登录状态由sso统一管理,由于跨域访问,每个页面发送心跳都是跨域的(见上一篇博客),当然心跳也涉及一些加密手段,只有收信任的数据才能接收。

4,达到效果:单点登录,维持用户只能登录一次,并监控用户实时状态

5,总结:我的做法有点模拟C/S了,并且安全性还有欠缺,例如网络传输层等等,下一步打算把在线注册和成熟的SSO开源软件(例如CAS,OPENSso等)结合起来,再做优化,这只是一个简单的模型,做法与实际操作还有差异,本人能力和经验有限,有说错的地方,希望有经验者可以指教一下,我还需要优化和学习。

   简单的一些想法做了一下分享,希望大家能给我提出更多的改进意见,我想多多学习一下。