单点登录与单态登录

今天开会有个需求是账号只能在一个设备上登录,否则后登录的设备会改变原设备的登录状态为未登录。然后有位同事把这种状态叫做“单点登录”。那么问题来了,什么是单点登录,这种情况应该称为单点登录吗?

单点登录

定义

单点登录全称Single Sign On(简称SSO),是指在多系统应用群中登录一个系统,便可在其他所有系统中得到授权而无需再次登录,包括单点登录与单点注销两部分。
单点登录是面对多系统的复杂性而设计的一种登录方式。
例子:在同一个浏览器中,网易主页登录网易账号后,既可以打开博客,又可以打开对应的邮箱,还可以用这个账号评论新闻等等。可以通过博客园、百度、csdn、淘宝等网站的登录过程加深对单点登录的理解,注意观察登录过程中的跳转url与参数

特点

登录需要一个SSO认证中心负责统一管理各系统的登录信息。只有认证中心能接受用户的用户名密码等安全信息,其他系统不提供登录入口,只接受认证中心的间接授权。间接授权通过令牌实现,sso认证中心验证用户的用户名密码没问题,创建授权令牌,在接下来的跳转过程中,授权令牌作为参数发送给各个子系统,子系统拿到令牌,即得到了授权,可以借此创建局部会话,局部会话登录方式与单系统的登录方式相同。
单点登录自然也要单点注销,在一个子系统中注销,所有子系统的会话都将被销毁。SSO认证中心一直监听全局会话的状态,一旦全局会话销毁,监听器将通知所有注册系统执行注销操作

单态登录

定义

单态登录就是一个账号只能在一台机器上登录,如果在其他机器上登录了,则原来的登录自动失效。单态登录的目的是防止多台机器同时使用一个账号。

特点

单态登录使用监听器。通过监控 Session 的 personInfo 属性是否添加删除实现的。如果新添加了一个personInfo 的属性,则认为是新登录用户,Listener 中 查看该用户的账号是否已经在其他机器上登录。如果已经登录过了,则旧的登录信息失效。

结论

单点登录和单态登录没有半毛钱关系,会议的上这种情况应该归为单态登录或者叫做单设备登录更合适。

延申阅读
什么是单点登录(原理与实现简介)
单点登录(SSO),从原理到实现
单态登录

猜你喜欢

转载自blog.csdn.net/qq_33562122/article/details/115376125
今日推荐