1
uselessVisitor 2021-04-08 13:54:48 +08:00
搜一下 SSO ?
|
2
SmiteChow 2021-04-08 17:03:20 +08:00
不就是单点么?
|
3
SmiteChow 2021-04-08 17:05:10 +08:00
单点和 OAuth2 授权本来就是两个概念呀,一个用于网站群,一个用于获取受限资源。
|
4
redbelt 51 天前
楼主 有没有找到方法
|
5
redbelt 51 天前
> 比如使用 Github 登录 StackOverflow 。实际上是 Stackoverflow 上新建了一个用户里面绑定了 Github ,当你登出 Github 之后,StackOverflow 还是处于登录的状态。
---- 使用 github 登录 stackoverflow ,之所以会弹框让你点击确定,是因为这里不是单纯的登录,而是 stackoverflow 还想要请求 github 上你的资源(头像昵称等),所以实际上使用的是 oauth2 协议, 而这里的确定交互,也仅仅在第一次使用 github 登录时会发生,之后不会,只要 github 本身在登录状态,很快就跳转到 stackoverflow 。 google.com youtube.com 这两个网站的单点登录功能为什么那么丝滑?可以简单的理解为他们是一家的,不需要授权既可以取得数据,google.com 和 youtube.com 在未登录状态下都会重定向到 accounts.google.com 进行登录,成功登录后 account.google.com 下会被种上 cookie ,当再 google.com 或者 youtube.com 的时候如果发现当前网站没有登录态,会直接重定向到 account.google.com ,如果 account.google.com 有登录态,会带着登录态信息重定向到想要登录的网站比如 youtube.com, youtube.com 会根据这个登录态 cookie 找到当前用户是谁,并在返回的时候种下 youtube.com 的 cookie 。 SmiteChow 说的 没错,这就是 SSO 。 |
6
qwerthhusn OP @redbelt 老哥虽然你在挖坟,但是我还是说下吧。
三年前的事情了,我早被裁了。。 不过那时候我们最后还是采用自定义的协议,因为我们是后台管理系统,当管理员在我们这边做变更后,需要业务系统及时知道,比如权限被收回了等等。所以那种 OAuth 的压根不适用。 我们采用了业务系统登录会直接跳转用户中心,完事后会带着一个 Token ,然后业务系统后台需要去用户中心后台验证 Token 有效,并且在用户登出的时候用户中心后台会通知所有业务系统。。。除此之外,用户中心还提供给业务系统一些查询用户信息的接口等等。。。。。最后的效果是,我们自己家的业务系统跟用户中心的连接很好,用户体验也很好,就跟支付宝淘宝,Gooogle 油管那样丝滑,登录一个之后,另外一个无感进入。。。但是其他家第三方系统对接效果就不咋样了,可能是这套协议比较复杂,对方也懒得仔细弄,经常出现用户中心 Cookie 过期了甚至用户都被禁用了那边还能用的情况。。。 |
7
redbelt 47 天前
|