Java生鲜电商平台-生鲜电商平台SSO(单点登陆)技术方案(小程序/APP)

第三方业务系统单点登陆技术方案

1   概述

单点登录简单说,就是通过用户的一次性鉴别登录,即可获得需访问系统和应用软件的授权,在此条件下,管理员无需修改或干涉用户登录就能方便的实施希望得到的安全控制。

2  背景

平台负责把各种应用、服务、业务集成,对它们系统的用户信息进行统一管理。只要在平台登录的用户,都可以得到一个由平台颁发的虚拟令牌,这样便可轻松的来回其它不同业务,对所有被授权的网络资源进行无缝访问了。这不仅了提高网络用户的工作效率,降低网络操作的费用,还提高了网络的安全性。

3  解决方案

1、工作流程:

2、流程描述

(一)  登录Portal

1)        用户向Portal请求登陆。

2)        Portal获取用户名和密码后,向AAA请求认证。

3)        AAA查询用户名、密码,确认用户存在。

4)        AAA生成token加密串,和有效时间(当前时间+默认配置时间),保存token。

5)        并把token返回给Portal。

6)        Portal创建用户会话,并保存token,返回首页。

(二)  访问第三方业务

1)        当用户在Potal上点击一个业务链接时,系统会访问第三方业务系统,并把当前用户的token和AAA入口地址时作为请求参数带上。

2)        第三方业务系统带上token参数,请求AAA认证身份。

3)        AAA认证身份通过后并通知第三方业务系统。

4)        第三方业务系统建立用户会话,并保存token。

5)        系统跳转到第三方业务系统可操作界面。

6)        在第三方业务系统中,操作内部服务,仅仅验证用户会话。

(三)  从第三方业务系统返回Portal

1)        在第三方业务系统中,Portal的首页的URL应该为:portal_URL+AAA_URL+token。

2)        点击Poratl首页,Portal先验证用户会话是否有效,如果有效,返回首页;否则向AAA请求验证token,验证通过后,Portal重新建立用户会话,并保存token。

3、重点说明

1)        在系统内部操作时,验证用户会话。

2)        当跳转到其他业务系统时(系统切换),传递token参数。此时先验证用户会话是否有效,有效则放行;无效则请求AAA验证token,通过后重新建立用户会话。

3)        Token的失效时间配置长点(需要评估),用户在某个业务系统中操作比较长时间后切换系统,保证token仍然有效。

4 提供给第三方业务接口

1、  统一用户登录认证接口

1.1          接口功能描述

第三方业务系统向AAA进行用户鉴权

1.2          接口方向

第三方业务àAAA

1.3          接口协议

协议:HTTP

方法:GET

URL:http:/IP:PORT/aaa/auth?token=*******

1.4          接口返回

协议:JSON

属性定义:resultCode;1表示鉴权成功,0表示鉴权失败。(必填)

desc; 描述信息 (非必填)

需要用户哪些信息,与AAA约定,让他传递。

示例:

{

"resultCode": "0",

"desc": " token已经失效"

}

2、  Portal登录接口

2.1、接口功能描述

Portal向AAA请求登录

2.2、接口方向

PortalàAAA

2.3、接口协议

协议:HTTP

方法:GET

URL:http:/IP:PORT/aaa/login?account=**&password=**&mobileNum=**

2.4、接口返回

协议:JSON

属性定义:resultCode;1登录成功,0登录失败(必填)

token;用户认证令牌(resultCode=1时必填)

desc; 描述信息 (非必填)

需要用户哪些信息,与AAA约定,让他传递。

示例:

{

"resultCode": "1",

"token": "WEOSLDF=+EWR=O--=+LDFG",

"desc": "登录成功"

}

5 第三方业务系统规范

1、  第三方业务系统需要请求PORTAL提供的鉴权链接(URL+TOKEN)进行鉴权。

2、  Token认证通过后,建立用户会话。

3、  构建Portal首页地址为:portal_URL+AAA_URL+token

4、  需要第三方业务系统的用户信息同步给AAA系统。(需要讨论同步协议,策略)

6 Portal规范

1、需要保存第三方业务系统向AAA鉴权时的接口地址和用户token

2、点击某一个业务链接进入第三方业务系统接口需要提供第3方鉴权链接(URL+TOKEN)链接。

3、请求Portal首页的URL带有token时,先验证用户会话是否有效,无限则向AAA请求token认证,认证成功后重新建立用户会话。

共同学习QQ群:793305035

巨人java生鲜app下载_Java生鲜电商平台-生鲜电商平台SSO(单点登陆)技术方案(小程序/APP)...相关推荐

  1. Java生鲜电商平台-商品中心的架构设计与源码解析(小程序/APP)

    Java生鲜电商平台-商品中心的架构设计与源码解析(小程序/APP) 说明:Java生鲜电商平台中,由于商品的架构很大程度决定了电商的扩展性与伸缩性.对此根据自己多年的生鲜电商经验,整理了以下的商品中 ...

  2. 电商系统中API接口防止参数篡改和重放攻击(小程序/APP)

    说明:目前所有的系统架构都是采用前后端分离的系统架构,那么就不可能避免的需要服务对外提供API,那么如何保证对外的API的安全呢? 即生鲜电商中API接口防止参数篡改和重放攻击 目录 1. 什么是AP ...

  3. WANLSHOP 直播短视频种草多用户电商系统源码自营+多商户+多终端(H5+小程序+APP)

    WANLSHOP高级版 可用于自营+外包项目(多主体). 可用于外包定制开发项目. 提供开源源码,私有化部署.一款基于 FastAdmin + Uni-APP 开发的 多终端(H5移动端.APP.微信 ...

  4. java 超卖_Java生鲜电商平台-秒杀系统如何防止超买与超卖?(小程序/APP)

    本文主要是通过实际代码讲解,帮助你一步步搭建一个简易的秒杀系统.从而快速的了解生鲜电商秒杀系统的主要难点,并且迅速上手实际项目. 我对生鲜电商秒杀系统文章的规划: 从零开始打造简易秒杀系统:乐观锁防止 ...

  5. 今年最新任务平台红利系统/悬赏威客积分墙系统接单小程序APP的优势在哪?

    什么是任务红利平台呢? 今天给大家说说这个<任务红利平台>话题吧! 我们的系统属于聚合平台类型,什么是聚合类型呢!顾名思义就是把各大资源整合在一个站点上,这样的一个聚合站会让你省事很多,买 ...

  6. 巨人java生鲜app下载_Java生鲜电商平台-生鲜电商商品中心系统设计与数据库架构(生鲜小程序/APP)...

    Java生鲜电商平台-生鲜电商商品中心系统设计与数据库架构(生鲜小程序/APP) 说明:Java生鲜电商平台-生鲜电商商品中心系统设计与数据库架构(生鲜小程序/APP) 日日鲜-商品中心系统设计 项目 ...

  7. Java生鲜电商平台-微服务生鲜电商用户中心的系统设计(小程序/APP)

    Java生鲜电商平台-微服务生鲜电商用户中心的系统设计(小程序/APP) 说明:在微服务生鲜电商用户中心的系统设计中,我一直强调一个观点,就是你这个系统使用用户到底是TO B的还是TO C的呢?这个是 ...

  8. Java开发多、单商户淘宝客+任务系统cps系统源码小程序app

    Java开发的多商户淘宝客.任务cps系统源码淘宝客+美团外卖+饿了么外卖+多麦CPS+京东+拼多多+多商户自营+任务墙+本地生活模块+抖音+唯品会+文娱充值+话费充值小程序app主要包括用户端.商家 ...

  9. Java开发陪玩系统源码小程序app详细介绍

    Java开发的陪玩系统源码小程序app以下是它的功能介绍: 一.用户端: 1. 用户注册与登录:用户可以使用手机号或微信登录进行注册. 2. 服务列表:用户可以浏览选择陪玩师提供的服务类型和价格,包括 ...

  10. Java开发上门洗车系统源码小程序app介绍

    Java开发的上门洗车系统源码小程序app一般包含以下功能: 一.用户端: 1.用户注册与登录 2.车辆管理:用户可以添加和管理其拥有的车辆信息,包括车型.车牌号.车辆位置等信息. 3.订单管理:用户 ...

最新文章

  1. 我是如何阅读编程书的
  2. ADO.NET常用对象
  3. Linux下制作和使用静态库和动态库
  4. 【registry】registry AbstractMethodError javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws
  5. 关于opencv的几个小总结
  6. 修复SQL Server 2016年Microsoft.AnalysisServices.AdomdClientUI.dll程序集错误的前4个选项
  7. 计算机启动过程过程图,计算机启动过程图文详解(一)----计算机初始化启动过程...
  8. 支付宝 应用网关和授权回调地址怎么配置?
  9. 《推荐系统实践》算法纯享(附代码链接)(二)—— 协同过滤篇
  10. canvas实现简单画板
  11. 什么芯片支持python_M1芯片安装python3.9.1的实现
  12. 支持多种登录模式的token方案设计(微信、支付宝登录等)和数据库设计含手机号绑定方法
  13. Python基本数据类型大集合
  14. RabbitMQ总结
  15. Tensorflow模型各部分自定义方式
  16. 2022年义乌医院三基考试临床检查多选专项模拟题及答案
  17. 用 Fiddler 来抓取手机包
  18. 智能音箱 之 扬声器喇叭介绍
  19. C# 文本框只能输入数字和退格键
  20. 人工智能多语言翻译插件批量多语种翻译

热门文章

  1. 分别通过【buildpath】和【lib】倒入JAR包有什么不同
  2. 常见的系统故障及排除
  3. Android的Crash日志记录
  4. WeUI 专为微信Web服务量身定制
  5. 利用全加器实现7段数码管_单片机入门,8个led数码管精选电路方案合辑
  6. SqlServer事务回滚
  7. a标签如何链接php文件路径,HTML的a标签href属性指定相对路径与绝对路径的用法讲解...
  8. go对get、post请求封装
  9. ELK logstash grok匹配失败存另外的es表
  10. Latex初学入门记载