文章目录

  • 背景
  • 关键概念
  • 系统设计思路
  • 总结

背景

借技术总结时间梳理一下三方登录授权的一些技术细节实现,假设saas 店铺商品管理插件中心是两个独立的账号体系(内部分别对应 shopId 和 sellerId),saas 店铺的商品管理模块在商品管理插件中心进行管理,如下图所示:

其中saas 店铺首次使用商品管理插件中心时,需要注册商品插件卖家账号,注册完账号再次使用时会自动登录商品插件卖家账号(商家无感跳转)。过程中需要考虑以下技术细节:

  • saas 店铺商品管理插件中心是两个独立的域名,怎么做跨域访问信息传递,又要保证信息的安全性?
  • 店主在商品管理插件中心管理商品时,怎么知道管理的是哪个店铺的商品?(即当前的 sellerId 应该对应哪个 shopId)
  • 如果 saas 店铺店主多个店员在操作同一个商品插件卖家账号怎么办,会不会出现登录失效的场景?

关键概念

  • saas店铺:底座使用 saas 开放平台,每个 saas 店铺账号对应一个 shopId
  • 商品插件管理中心: 独立的域名和服务,商品插件管理中心必须要登录商品卖家账号,每个商品卖家账号对应一个 sellerId

系统设计思路

核心技术实现细节点:

  • 跨域问题使用 url 携带业务参数来解决,同时结合 OAuth2.0 框架实现 saas 店铺身份的传递
  • 商品插件卖家 session 存储 saas 店铺 shopId 信息,便于知道在插件中操作的是哪个店铺
  • 商品管理插件中心使用 redis 存储 shopId 和 token 之间的关联关系,同时设置失效时间,便于后续在插件中心获取 token 使用 open api 访问店铺信息
  • 商品管理插件中心维护 shopId 与 sellerId 之间的关联关系,便于后续自动登录使用

下面和业务串联起来使用(看图说话,细节不再详述,有问题直接留言,回复快):

  • 场景一:saas 店铺首次使用商品管理插件中心

  • 场景二:saas 店铺再次使用商品管理插件中心

总结

本文意在传递三方登录的关键技术细节,图中的很多技术细节和业务细节没有详述,比如 OAuth2.0框架、自动登录技术实现细节、怎么把 shopId 放到会话 session中等。有问题可直接留言,回复较快。欢迎如转载,请注明出处!欢迎关注微信公众号:方辰的博客

三方账号授权登录系统设计思路相关推荐

  1. 干货|JustAuth三方账号授权登录免费搭建全流程

    三方登录的方式想必大家都很熟悉,基本健全的网页都会整几个入口,比如日常的微信.QQ,金融的支付宝,音视频的抖音.快手,码农领域的Github.Gitee等. 作为功能测试,我们就随机取一个简单的三方授 ...

  2. 苹果apple账号授权登录第三方APP

    Apple官方文档 前言:由于公司最近有个业务需求是要进行Apple账号授权登录,于是我看边看文档边借鉴其他人的写法,发现好多文章都有一个共性,一个是在解析JWT的时候自己设置参数后进行判断,这样做没 ...

  3. iOS小课堂: 集成 《阿里百川》教程( 打开商品详情页、 淘宝账号授权登录、 完成交易闭环)

    文章目录 前言 I 打开商品详情页面 II 淘宝账号授权登录 2.2 集成文档 2.3 Cocoapod方式引入百川SDK 上 III 常见错误 3.2 读取身份图片AppKey失败, see als ...

  4. web网页第三方账号授权登录

    ❤️最细微信小程序版本上传.提交审核.发布[建议收藏]❤️ ❤️2021直击大厂前端开发岗位面试题❤️ ❤️效果图如下,如有需要请自取修改[建议收藏]!❤️ ❤️微信小程序的灰度发布❤️ web网页端 ...

  5. 利用github进行账号授权登录

    本文用到了OAuth2.0中最复杂的授权码模式,正好拿我这个案例给大家分享一下OAuth2.0的授权过程. 先去github上注册一下身份,附上链接 https://github.com/login/ ...

  6. JS实现华为账号授权服务,一键登录!

    0.效果 1.集成HMS服务 1.1 新建项目工程 新建项目所设定的包名就是后面在AGC创建项目所用到的包名 1.2 添加依赖 1.2.1 项目级build.gradle dependencies { ...

  7. uni-app 第三方授权登录

    uni-app 第三方授权登录 使用uniapp开发跨平台app, 难免会涉及第三方账号授权登录 uni-app官方文档 本文主要使用uni.login API实现第三方登录, H5上的授权登录, u ...

  8. Spring Boot Security 多种登录方式集成配置思路及方法 账号用户名登录+微信网页授权登录

    概述 实现账号用户名+微信网页授权登录集成在Spring Security的思路 前情提要 本思路完全抛弃Spring Security的配置式账号密码登录模式,采用完全独立的Filter.Provi ...

  9. 微信、QQ等第三方账号登录的具体思路

    一.多账户登陆 互联网应用当中,我们的应用会使用多个第三方账号进行登录,比如:网易.微信.QQ等,我们把此称为多账户统一登陆. 通过这篇文章, 我想阐释多账户登陆的技术方案细节,以及相应的表设计,流程 ...

最新文章

  1. 代码生成codegen
  2. pandas使用rename函数重命名dataframe中数据列的名称、从而创建一个包含重复列名称的dataframe数据集
  3. js更改html元素颜色,HTML - 使用JS根据值更改文本的颜色
  4. python【力扣LeetCode算法题库】20- 有效的括号(辅助栈)
  5. linux+python+djiango+mysql编译安装学习笔记
  6. feign-hystrix的使用
  7. 成功必读本:培养人脉的106个技巧
  8. 如何通过PHP将excel的数据导入MySQL中
  9. uniapp 表单页面_uniapp自定义表单模板经验分享
  10. eclipse 安装反编译软件jadclipse
  11. 滤波电容、去耦电容、旁路电容的作用
  12. void main()误区
  13. 大学生游戏静态HTML网页作业--美丽中国
  14. 超详细讲解ArcGIS拓扑分析(附路网练习数据下载)
  15. IplImage结构体
  16. 采用LocalDateTime获取指定时间段
  17. 自己的IP地址可以被随便查到吗?
  18. 05如何处理类别特征?
  19. 程序设计C实验二题目一计算员工周工资
  20. Magic value如何解决?

热门文章

  1. 程序员实用工具和网站(转)
  2. 外包3年,吃透这三份Java程序员必刷的算法宝典后,已从13K涨到25K
  3. Flash Play无法安装的解决办法
  4. 程序员工作六年的感悟
  5. 计算机美国硕士,美国计算机硕士项目申请难度大PK
  6. Ebox系列Corecon不同版本不宜安装在一起
  7. 之江汇空间如何加音乐背景_之江汇互动课堂如何使用?之江汇互动课堂使用方法...
  8. 计算机网络管理员基础电子书,网络管理员教程.pdf
  9. 苹果a15处理器相当于骁龙多少 苹果a15处理器性能
  10. fastAdmin后台一键生成后台菜单