一种开放数据授权访问的方法及装置制造方法及图纸

技术编号:36526667 阅读:16 留言:0更新日期:2023-02-01 16:05
本发明专利技术涉及数据安全领域,提供了一种开放数据授权访问的方法及装置。本发明专利技术的目的在于解决手机银行内嵌小程序子系统,来回切换,重复输入登录信息的问题。用户登录手机银行系统A,获取用户所需展示的基本数据,用户首次访问商户小程序系统B,调用A系统用户的基本数据,并进行签名获得签名值Sign,商户小程序系统B服务端调用外部接口与A系统进行签名值比对,获得开放数据,用户再次访问商户小程序系统B,当用户始终未授权时,将用户当首次访问处理,去获取授权;当用户已授权过,则可直接通过携带的用户ID到系统B的服务端查找用户信息加载展示,不再重复授权处理。不再重复授权处理。不再重复授权处理。

【技术实现步骤摘要】
一种开放数据授权访问的方法及装置


[0001]本专利技术涉及数据安全领域,提供了一种开放数据授权访问的方法及装置。

技术介绍

[0002]现有技术架构:
[0003]目前手机银行系统开启小程序模块,各个商家可以在手机银行中定制化开发专有的小程序来获取手机银行用户流量,推广自己的产品,同时实现用户营销闭环,既丰富了手机银行功能,新增额外的创收模块,又给商家带来了新的用户流量,新的合作模式。在手机银行系统与商家小程序的交互中,亟需开放数据的共享访问和传递安全,每个小程序子系统又能独立的获取用户基本信息进行单独保存,获得到的授权数据互不影响,使用户一键授权开放数据,便可拿用户基本信息登录小程序子系统,减少频繁操作多个小程序子系统需要多次登录验证,用户体验度差的问题。
[0004]业务压力:
[0005]随着入驻商家小程序的越来越多,用户浏览的小程序也越来越多,切换浏览访问,频繁输入用户信息登录,严重影响操作体验。

技术实现思路

[0006]本专利技术的目的在于解决手机银行内嵌小程序子系统,来回切换,重复输入登录信息的问题。通过本专利技术浏览不同小程序子系统,用户只需同意子系统获取用户基本信息,达到手机银行单点登录后,访问多个商户小程序子系统,只需要一次授权便可多次访问,无需重复输入用户信息注册登录等问题。
[0007]为了达到上述的目的,本专利技术采用如下技术方案:
[0008]一种开放数据授权访问的方法,当用户授权内嵌商户小程序子系统获取基本用户信息,包括用户ID、头像、姓名、手机号、账号等,用户一键授权,就可以直接在商户小程序系统中创建用户,实现开放数据共享,无需反复填写用户基本信息,同时保证开放数据传递安全可靠,包括以下步骤:
[0009]S1.用户登录手机银行系统A:
[0010]用户先登录手机银行,系统A服务端返回用户所需展示的基本数据,包括用户ID和头像等常用信息,以及用户会话Token。
[0011]S2.用户首次访问商户小程序系统B:
[0012]当用户首次访问商户小程序某些特定页面需要获取用户信息时,小程序调用系统A前端弹出授权提示窗,是否允许该商户获取用户隐私信息,包括用户ID、头像、姓名、手机号、证件号、账号等,该部分隐私信息可以按需拆分成多个部分分别授权,如用户授权同意,则在手机银行用户端调用国密sm3的签名方法,对手机银行登录成功后获取到的用户会话Token、用户ID、头像、以及当前时间戳Timestamp进行签名,获得签名值Sign。
[0013]S3.商户小程序系统B服务端调用外部接口获得开放数据:
[0014]系统B前端将授权获得的数据用户会话Token、时间戳Timestamp以及签名值Sign,发送到系统B服务端,系统B服务端获得到数据后通过调用外部接口走开放平台专线,发送到系统A服务端,系统A服务端判断时间戳Timestamp是否在有效期内,无效则返回授权数据已过期;有效则根据会话Token查找用户ID、头像、姓名、手机号、证件号、账号等,用同样秘钥的国密sm3算法对会话Token、用户ID、头像、时间戳Timestamp进行签名得到签名值NewSign,比较签名值Sign与NewSign是否相等,相等再验签通过,接口返回允许该商户访问的该用户开放数据信息,不相等则返回签名数据已遭篡改。
[0015]S4.用户再次访问商户小程序系统B:
[0016]当用户始终未授权时,将用户当首次访问处理,重复S2和S3操作;当用户已授权过,则可直接通过携带的用户ID到系统B服务端查找用户信息加载展示,不再重复授权处理。
[0017]上述技术方案中:所述步骤S1包括以下步骤:
[0018]步骤1:在用户登录手机银行成功后,系统A服务端先生成用户会话Token,并从数据库中查询到用户ID、头像、姓名、手机号、证件号、账号等信息缓存到应用内存中;
[0019]步骤2:系统A服务端将用户会话Token,以及所需展示的基本数据,如用户ID、头像等返回给系统A前端。
[0020]上述技术方案中:所述步骤S2包括以下步骤:
[0021]步骤1:用户首次访问商户小程序某些特定页面需要获取用户信息时,携带用户会话Token、用户ID,调用系统A前端封装好的授权提示窗,弹出给用户授权;
[0022]步骤2:授权系统B能够访问的数据,包括用户ID、头像、姓名、手机号、账号等,可以定制化多种数据组合访问提示授权窗,按具体场景需要进行组合:
[0023]步骤3:当用户授权同意,授权先拿到系统A前端展示的用户ID、头像;
[0024]步骤4:系统B生成当前时间戳,然后调用系统A前端封装的国密sm3的签名方法,对会话Token、以及授权拿到的用户ID、头像、当前时间戳等4个要素,按顺序进行签名,获得签名值Sign;
[0025]步骤5:当用户授权拒绝;则停留在当前页,无法访问特定页面,再次点击;则继续弹出授权窗口,直至授权同意,方可进入下一个流程。
[0026]上述技术方案中:所述步骤S3包括以下步骤:
[0027]步骤1:系统B前端将授权获得的数据用户会话Token、时间戳Timestamp以及签名值Sign发送到系统B服务端;
[0028]步骤2:系统B服务端获得到数据后通过调用外部接口走开放平台专线,发送到系统A服务端;
[0029]步骤3:系统A服务端判断时间戳Timestamp是否在有效期内,无效则返回授权数据已失效;有效则根据会话Token查找应用内存中的用户ID、头像、姓名、手机号、证件号、账号等隐私信息;
[0030]步骤4:系统A服务端用同样秘钥的国密sm3算法对会话Token、用户ID、头像、时间戳Timestamp进行签名得到签名值NewSign;
[0031]步骤5:系统A服务端比较签名值Sign与NewSign是否相等,相等再验签通过,接口返回允许该商户访问的该用户开放数据信息,不相等则返回签名数据已遭篡改;
[0032]步骤6:系统B服务端通过外部接口获得了用户授权的开放数据信息,包括用户ID、头像、姓名、手机号、证件号、账号等隐私信息,做永久数据保存处理;
[0033]上述技术方案中:所述步骤S4包括以下步骤:
[0034]步骤1:当用户始终未授权时,将用户当首次访问处理,重复S2和S3操作;
[0035]步骤2:当用户已授权过,直接通过访问系统B前端时携带的用户ID调用系统B服务端数据库接口查找用户ID、头像、姓名、手机号、账号等
[0036]步骤3:系统B前端获取到服务端接口返回的用户ID和头像,直接进行展示,用户无感知访问小程序需要授权的特定页而不再需要重复授权处理。
[0037]本专利技术还提供了一种开放数据授权访问的装置,包括:
[0038]基本数据获取模块、用户登录手机银行系统A,银行系统记为系统A:
[0039]用户先登录手机银行,系统A本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种开放数据授权访问的方法,其特征在于,包括以下步骤:S1.用户登录手机银行系统A,银行系统记为系统A:用户先登录手机银行,系统A服务端返回用户所需展示的基本数据,包括用户ID和头像以及用户会话Token;S2.用户首次访问商户小程序系统B,小程序系统B记为系统B:当用户首次访问商户小程序需要获取用户信息时,商户小程序调用系统A前端弹出授权提示窗,是否允许该商户获取用户隐私信息,如用户授权同意,则在系统A的用户端调用国密sm3的签名方法,对系统A登录成功后获取到的用户会话Token、用户ID、头像、以及当前时间戳Timestamp进行签名,获得签名值Sign;S3.商户小程序系统B服务端调用外部接口获得开放数据:系统B的前端将授权获得的数据用户会话Token、时间戳Timestamp以及签名值Sign,发送到系统B的服务端,系统B的服务端获得到数据后通过调用外部接口走开放平台专线,发送到系统A的服务端,系统A的服务端判断时间戳Timestamp是否在有效期内,无效则返回授权数据已过期;有效则根据用户会话Token查找用户ID、头像、姓名、手机号、证件号、账号,用同样秘钥的国密sm3算法对用户会话Token、用户ID、头像、时间戳Timestamp进行签名得到签名值NewSign,比较签名值Sign与NewSign是否相等,相等则验签通过,接口返回允许该商户访问的该用户开放数据信息,不相等则返回签名数据已遭篡改;S4.用户再次访问商户小程序系统B:当用户始终未授权时,将用户当首次访问处理,重复S2和S3操作;当用户已授权过,则可直接通过携带的用户ID到系统B的服务端查找用户信息加载展示,不再重复授权处理。2.根据权利要求1所述的一种开放数据授权访问的方法,其特征在于,所述步骤S1包括以下步骤:步骤1:在用户登录手机银行成功后,系统A服务端先生成用户会话Token,并从数据库中查询到基本数据并缓存到应用内存中,所述基本数据包括用户ID、头像、姓名、手机号、证件号、账号信息;步骤2:系统A服务端将用户会话Token,以及所需展示的基本数据返回给系统A前端。3.根据权利要求1所述的一种开放数据授权访问的方法,其特征在于,所述步骤S2包括以下步骤:步骤2.1:用户首次访问商户小程序系统B的页面需要获取用户信息时,携带用户会话Token、用户ID,调用系统A前端封装好的授权提示窗,弹出给用户授权;步骤2.2:授权系统B能够访问的数据,包括用户ID、头像、姓名、手机号、账号,可以定制化多种数据组合访问提示授权窗,按具体场景需要进行组合;步骤2.3:当用户授权同意,授权先拿到系统A前端展示的用户ID、头像;步骤2.4:系统B生成当前时间戳,然后调用系统A前端封装的国密sm3的签名方法,对会话Token、以及授权拿到的用户ID、头像、当前时间戳4个要素,按顺序进行签名,获得签名值Sign;步骤2.5:当用户授权拒绝;则停留在当前页,无法访问特定页面,再次点击;则继续弹出授权窗口,直至授权同意,方可进入下一个流程。4.根据权利要求1所述的一种开放数据授权访问的方法,其特征在于,:所述步骤S3包
括以下步骤:步骤1:系统B的前端将授权获得的数据用户会话Token、时间戳Timestamp以及签名值Sign发送到系统B的服务端;步骤2:系统B的服务端获得到数据后通过调用外部接口走开放平台专线,发送到系统A的服务端;步骤3:系统A的服务端判断时间戳Timestamp是否在有效期内,无效则返回授权数据已失效;有效则根据会话Token查找应用内存中的用户ID、头像、姓名、手机号、证件号、账号隐私信息;步骤4:系统A的服务端用同样秘钥的国密sm3算法对会话Token、用户ID、头像、时间戳Timestamp进行签名得到签名值NewSign;步骤5:系统A的服务端比较签名值Sign与NewSign是否相等,相等则验签通过,接口返回允许该商户访问的该用户开放数据信息,不相等则返回签名数据已遭篡改;步骤6:系统B的服务端通过外部接口获得了用户授权的开放数据信息,包括用户ID、头像、姓名、手机号、证件号、账号隐私信息,做永久数据保存处理。5.根据权利要求1所述的一种开放数据授权访问的方法,其特征在于,所述步骤S4包括以下步骤:步骤1:当用户始终未授权时,将用户当首次访问处理,重复S2和S3操作;步骤2:当用户已授权过,直接通过访问系统B前端时携带的用户ID调用系统B服务端数据库接口查找用户ID、头像、姓名、手机号、账号;步骤3:系统B前端获取到服务端接口返回的用户ID和头像,直接进行展示,用户无感知访问小程序需要授权的特定页而不再需要重复授权处理。6.一种开放数据授权访问的装置,...

【专利技术属性】
技术研发人员:陈来来徐晋毅刘珏
申请(专利权)人:武汉众邦银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1