单点登录
前言
本篇做为.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 被伪造
以上就是个人对单点登录的一个想法。欢迎大家指正。下一篇将简单的说一下统一菜单和权限管理