博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
跨平台第三方平台登录和单点登录
阅读量:2049 次
发布时间:2019-04-28

本文共 1117 字,大约阅读时间需要 3 分钟。

跨平台第三方平台登录和单点登录

官方介绍:
单点登录:简称为 SSO,是比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
个人理解:
对于单点登录和第三方平台登录功能我还是习惯以自己的理解去记忆:   单点登录: 从A平台通过链接方式到B系统,中间免去登录过程。   第三方登录: 从A平台通过B平台的登录进入A系统。中间免去A平台的直接登录,使用B平台的用户认证。   其实在功能实现流程上来说,“第三方登录”就是包含了“单点登录”流程。

案例实现:

平台AAA 和 平台BBB直接实现第三方平台和单点登录,需求如下:

(1) 从AAA 平台登录界面使用“第三方平台登录”进入BBB平台登录界面,登录成功后进入AAA平台。

在这里插入图片描述

(2) 从BBB平台内容,通过aaa链接点击直接进入AAA平台.

在这里插入图片描述

实际上需求(1)已经满足了(2)的功能,只是中间需要一个验证用户登录流程。本文主要以(1)为例实现。

在这里插入图片描述

功能分析:

  1. 点击“BBB平台登录标识”进入登录界面,输入用户名密码登录。此过程需要使用BBB平台用户认证
  2. 登录认证成功之后需要跳转到AAA平台页面,此时需要AAA平台提供一个回调地址,用于BBB平台认 证通过后跳转进入AAA平台。
  3. 进入AAA平台之后,AAA平台需要通过自己系统的用户认证来进入系统

以上为3个核心业务流程,但是在实现过程中需要综合其他因素:安全性、用户认证等。

比如
1.AAA和BBB平台都是有自己的用户认证体系的,不建议共享用户权限,这会差生跨权访问;
2.两平台间信息交互,如果不做好安全,平台数据容易出问题。。。

功能、流程设计:

功能实现需要两个平台配合实现,第一:AAA平台系统向BBB平台申请系统资源(本例使用用户信息)。

第二:BBB系统拿到资源后需要将处理资源信息。

BBB平台工作:

1. 需要AAA平台提供一个回调地址。
2.给AAA平台提供申请资源等API,此过程中不能直接提供信息,需要使用token令牌。保证系统数据安全。
流程如下:
在这里插入图片描述
AAA平台工作

  • AAA平台再拿到令牌token之后,获取BBB平台用户信息,这个时候一般需要将该用户与本系统用户建立关联信息。用处:1.下次直接登录免去建立关系的操作。2.提取本系统用户信息,使用本系统用户认证。

接下来的工作主要就是AAA平台本身的一个认证体系,核心业务流程就是BBB平台一个认证过程。

本文就描述到这,细节有点多,有意向讨论的可以留言!以上仅表示我个人理解和处理方式,中间使用到了JWT(Token生成加密和解析),Spring Security(用户认证)。

转载地址:http://bjhof.baihongyu.com/

你可能感兴趣的文章
微服务简介
查看>>
CAP定理
查看>>
Docker初探
查看>>
Docker镜像常用命令
查看>>
使用Dockerfile定制镜像
查看>>
Docker容器数据持久化
查看>>
Docker Compose
查看>>
GitLab克隆项目出现 “git未能顺利结束(退出码128)”问题的解决
查看>>
SpringBoot整合FastDFS(附源码)
查看>>
在RoboWare Studio下利用python语言实现话题
查看>>
科学计算库——NumPy库
查看>>
数据分析处理库——Pandas
查看>>
Ubuntu 18.04 swap分区扩展
查看>>
Sophus的编译与使用
查看>>
Python中切片的用法
查看>>
安装OpenCV时提示缺少boostdesc_bgm.i文件的问题解决方案(附带百度云资源)
查看>>
最简单的 kubernetes 高可用安装方式
查看>>
Contour 学习笔记(一):使用 Contour 接管 Kubernetes 的南北流量
查看>>
K8s 学习者绝对不能错过的最全知识图谱(内含 58个知识点链接)
查看>>
Contour 学习笔记(一):使用 Contour 接管 Kubernetes 的南北流量
查看>>