行业标准网
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210824115.7 (22)申请日 2022.07.14 (71)申请人 万达信息股份有限公司 地址 200233 上海市徐汇区桂平路481号20 号楼5层 (72)发明人 汤士伟 毛志军 王骏 沈欢  姜锋 徐奎东 潘宁 宋丙龙  石志愿 杨文飞 杨秋芬 张丽  马玉刚 周融 王卫新 党忠妍  汪森然 王奇 韦法林 田亚龙  张志航 吕军成  (74)专利代理 机构 上海申汇 专利代理有限公司 31001 专利代理师 翁若莹 柏子雵(51)Int.Cl. H04L 9/40(2022.01) H04L 9/08(2006.01) (54)发明名称 一种用户静 默授权方法 (57)摘要 本发明涉及一种用户静默授权方法, 其特征 在于, 包括以下步骤子应用模块接入主APP之前: 由主APP服务端在数据库内配置子应用模块所在 厂商的厂商信息; 由主APP服务端在数据库内配 置子应用模块的子应用信息; 进行authCode授 权、 authToken授权或custom授权。 在本发明中, 用户敏感信息不暴露在客户端, 不通过客户端传 递, 使用具有时效性的用户凭证代替。 整个授权 交互的过程中, 用户完整信息的传递仅发生在服 务端与服务端之间。 使用国密非对称加密及对称 加密的组合, 在保证数据传输安全的同时, 鉴定 访问合法。 预先设置IP白名单, 基于IP白名单, 访 问授权接口时验证IP是否合法。 设定授权码的时 效, 使得授权码仅可使用一次, 保障使用安全。 权利要求书3页 说明书7页 CN 115277130 A 2022.11.01 CN 115277130 A 1.一种用户静默授权方法, 其特 征在于, 包括以下步骤: 步骤1、 子应用模块接入主AP P之前: 由主APP服务端在数据库内配置子应用模块所在厂商的厂商信息, 并生成与厂商唯一 对应的随机字符串consumerId、 SM2非对称加密公钥consumerKey以及SM2非对称加密私钥 consumerPrivatekey存入数据库中, 其中: 随机字符串consumerId以及SM2非对称加密公钥 consumerKey提供给子应用服 务端使用; 厂商信息至少包括厂 商服务器IP; 由主APP服务端在数据库内配置子应用模块的子应用信 息, 其中, 子应用信息至少包括 子应用ID、 子应用跳转URL、 子应用授权方式及拓展字段, 其中, 子应用ID以consumerId开 头; 子应用授权方式包括aut hCode授权、 aut hToken授权以及custom授权, 其中, custom授权 通过拓展字段自定义主AP P与子应用模块的具体对接方式; 步骤2、 主APP客户端根据主APP服务端的配置信息向用户展示子应用模块, 供用户使 用; 用户点击某个子应用模块时, 主APP客户端通过配置的子应用信息查看所配置的子应用 授权方式: 若步骤1中, 主APP服务端在 数据库内配置子应用模块的子应用授权方式为authCode授 权, 则跳转至步骤4; 若步骤1中, 主APP服务端在数据库内配置子应用模块的子应用授权方 式为authToken授权, 则跳转至步骤5; 若步骤1中, 主APP服务端在数据库内配置子应用模块 的子应用授权方式为custom授权, 则跳转至步骤6; 步骤4、 进行auth Code授权, 具体包括以下步骤: 步骤401、 主APP客户端携带当前用户的用户凭证及子应用信息内配置的子应用ID向主 APP服务端申请访问访问授权码code; 步骤402、 主APP服务端通过主APP客户端传入的用户凭证获得对应的用户ID, 将用户ID 及子应用ID存储进Redis数据库内, 生成随机字符串作为Redis映射的key, 主APP服务端将 生成的随机字符串作为访问授权码code返回给主APP客户端, 并设置访问授权码code在 Redis数据库内的过期时间; 步骤403、 主APP客户端拿到访问授权码code后, 将其拼接至子应用信息内的子应用跳 转URL, 并跳转加载此子应用跳转URL, 此子应用跳转URL指向的地址即为子应用的前端页 面; 步骤404、 子应用前端页面拿到拼接在子应用跳转URL后的访问授权码code, 将访问授 权码code传给子应用服 务端; 步骤405、 子应用服务端接收到访问授权码code后, 使用步骤1生成的SM2非对称加密公 钥consumerKey对步骤1生成的随机字符串consumerId以及当前时间戳进行SM2加密, 生成 加密字符串; 子应用服务端携带加密字符串及明文的随机字符串consumerId访问主APP服 务端; 步骤406、 主APP服务端接收到明文的随机字符串consumerId及加密字符串后, 用随机 字符串consumerId通过数据库查询到步骤1中预先配置的关联的厂商服务器IP, 并对比其 与当前访问的IP地址是否一致, 从而鉴定是否来自白名单服务器的访问, 若一致则进入下 一步, 若不一致, 则拒绝此次访问; 步骤407、 主APP服务端用随机字符串consumerId通过数据库查询到步骤1中预先配置 的关联的SM2非对称加密私钥consumerPriv atekey, 对加密字符串进行解密, 若解密失败,权 利 要 求 书 1/3 页 2 CN 115277130 A 2则拒绝此次访问, 若解密成功, 则进一步当前时间戳距离解密获得的当前时间戳是否在预 定时长内, 若是, 则鉴权成功, 进入下一 步, 否则, 则鉴权失败, 拒绝此次访问; 步骤408、 主APP服务端生成一套新的SM2公私钥, 将新的SM2非对称加密私钥 affairsSendPrivatekey及随机字符串consumerId存入Redis数据库中, 随机生成字符串 为 Redis映射的key, 并将这个随机生成的字符串作为affairToken, 新的SM2非对称加密公钥 作为affairsSendK ey返回至子应用服 务端; 步骤409、 步骤405中访问主APP服务端的子应用服务端接收到主APP服务端反馈的 affairToken以及affairsSendKey后, 随机生成一个字符串作为SM4加密的SM4加密秘钥, 用 SM4加密步骤405中获得的访问授权码code, 并基于affairsSendKey使用SM2加密随机生成 的SM4加密秘钥作为 参数一; 步骤410、 子应用服务端将affairToken、 步骤409获得 的参数一放入HTTPHeader中, 加 密后的访问授权码code放入HT TPBody中, 访问主AP P服务端; 步骤411、 主APP服务端接收到affairToken、 参数一以及加密后的访问授权码code后, 主APP服务端: 通过affairToken查 询到步骤408中 与之关联的 SM2非对称加密私钥 consumerPrivatekey及随机 字符串co nsumerId; 对参数一进行解密后, 获得子应用服 务端在步骤409中随机生成的SM4加密秘钥; 步骤412、 主APP服务端使用步骤411获得的SM4加密秘钥对加密后的访问授权码code进 行解密, 得到原 始的访问授权码code; 步骤413、 主APP服务端通过访问授权码code查询到与之关联的用户ID及子应用ID, 并 删除访问授权码code在Redis数据库内的映射, 从而保证访问授权码code仅有一次使用效 果; 步骤414、 主APP服务端对比步骤411中获得的随机字符串consumerId与步骤413中获得 的子应用ID是否为关联关系, 若为关联关系, 则继续下一步, 否则, 返回授权码与子应用不 匹配; 步骤415、 主APP服务端通过步骤413中获得的用户ID查询到对应的用户信息, 并使用步 骤411中得到的SM4加密秘钥对用户信息进行加密, 然后返回给子应用服 务端; 步骤416、 子应用服务端接收到加密后的用户信息, 使用步骤409中生成的SM4加密秘钥 进行解密, 得到用户信息, 子应用服 务端使用用户信息生成登录凭证, 返回至 子应用前端; 步骤417、 子应用前端接收到登录凭证, 可以正常处理同一用户的业务, 至此authCode 授权流程结束; 步骤5、 进行authTo ken授权, 具体包括以下步骤: 步骤501、 用户登录后, 主APP服务端将用户信息存进Redis数据库, 并随机生成字符串 作为用户凭证authToken返回至主APP客户端, 主APP客户端以用户凭证authToken作为接口 交互时的用户凭证; 步骤502、 用户点击子应用模块时, 主APP客户端通过配置的子应用信息查看子应用授 权方式, 判断为authTo ken授权, 则跳转至 子应用信息内的子应用跳转URL; 步骤503、 主APP开启JavaScript获取用户凭证authTo ken的权限; 步骤504、 子应用前端通过JavaScript交 互获取主AP P的用户凭证authTo ken;权 利 要 求 书 2/3 页 3 CN 115277130 A 3

.PDF文档 专利 一种用户静默授权方法

文档预览
中文文档 11 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共11页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种用户静默授权方法 第 1 页 专利 一种用户静默授权方法 第 2 页 专利 一种用户静默授权方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 04:06:02上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。