开放银行的API业务安全性控制系统及方法与流程

文档序号:26852118发布日期:2021-10-09 02:19阅读:440来源:国知局
开放银行的API业务安全性控制系统及方法与流程
开放银行的api业务安全性控制系统及方法
技术领域
1.本发明涉及网络安全技术领域,尤其涉及一种开放银行的api业务安全性控制系统及方法。


背景技术:

2.开放银行由英文open banking翻译而来,由英国提出,起源和推广是英国和欧盟关于银行业的数据共享和开放数据的探索,是一种利用开放api技术,让提供商访问客户财务信息的安全方式。一方面,可以让客户更详细地了解自己的账户;另一方面,客户可以通过第三方提供商享受更好的金融服务。开放银行平台作为开放的金融服务平台,以用户体验为导向、以生态场景为触点,以金融机构核心能力为支撑,依托现代科技,与客户、员工、供应商、科技开发者等主体共建共享,从而为客户提供体验一流的金融服务。
3.开放银行的业务价值在于,商业银行通过api的方式与合作伙伴开展商业合作,打破了之前的技术壁垒。因而,只有切实做好数据保护的义务才能让这项业务长远的发展起来。但开放银行开展api业务时,api的使用安全只能靠合作协议进行约束,存在合作机构蓄意或者因自身系统漏洞,带来的恶意跳过业务校验步骤等严重漏洞,以致用户数据泄露或者资金遭受损失的事件时有发生。


技术实现要素:

4.本发明实施例提供一种开放银行的api业务安全性控制系统,用以避免用户数据泄露,减少资金遭受损失的发生,该系统包括:
5.移动端sdk,用于接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将所述通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关;
6.合作机构服务端,用于接收所述移动端sdk发送的所述通信报文,根据所述通信报文,对所述应用程序进行身份识别认证;身份识别认证成功后,转换所述通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关;
7.开放银行api网关,用于接收所述合作机构服务端发送的令牌申请请求报文,根据所述令牌申请请求报文,生成访问令牌,将所述访问令牌发送给开放银行后台系统;根据开放银行后台系统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥;接收移动端sdk发送的加密交易报文,根据所述加密交易报文,向开放银行后台系统发送交易报文请求;接收开放银行后台系统返回的响应报文,根据所述响应报文,确定交易响应结果,发送给移动端sdk;
8.开放银行后台系统,用于接收所述访问令牌,进行风险评估,将评估结果发送给所述开放银行api网关;接收所述交易报文请求,根据所述交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将所述响应报文发送给所述开放银行api网关。
9.具体实施例中,所述合作机构服务端,具体用于:
10.接收所述移动端sdk发送的所述通信报文,根据所述通信报文,核验所述应用程序是否为伪冒,若核验结果为非伪冒,认定身份识别认证成功;
11.身份识别认证成功后,根据所述通信报文,确定用户身份信息;
12.将所述用户身份信息转换成开放银行体系的身份信息,利用开放银行体系的身份信息,替换所述通信报文中的用户身份信息,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关。
13.具体实施例中,所述移动端sdk,具体用于:
14.移动端sdk初始化时,接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将所述通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;
15.移动端sdk页面模式交易时,打开网页视图控件,跳转到所述产品的入口地址;将所述访问令牌组装进交易报文,并利用所述密钥对交易报文进行加密,生成加密交易报文,发送给开放银行api网关。
16.具体实施例中,移动端sdk初始化时,所述开放银行api网关,具体用于:
17.接收所述合作机构服务端发送的令牌申请请求报文,根据所述令牌申请请求报文,进行权限校验;
18.权限校验通过后,生成访问令牌,将所述访问令牌发送给开放银行后台系统的产品服务后端组件;
19.接收所述产品服务后端组件返回的用户要素信息和主交易账户信息,以所述访问令牌为键,用户要素信息和主交易账户信息为值,缓存至redis中;
20.根据redis中缓存的信息,向开放银行后台系统的风险控制平台发起风险评估请求,接收所述风险控制平台反馈的评估结果;
21.根据所述风险控制平台反馈的评估结果,确定是否批准移动端sdk的访问;
22.批准移动端sdk的访问时,返回给移动端sdk:产品的入口地址、访问令牌和密钥。
23.相应地,具体实施例中,所述开放银行后台系统,包括:
24.产品服务后端组件,用于接收所述开放银行api网关发送的访问令牌,识别所述访问令牌,得到用户的用户要素信息和主交易账户信息;将用户的用户要素信息和主交易账户信息返回给所述开放银行api网关;
25.风险控制平台,用于接收所述开放银行api网关发起的风险评估请求,根据所述风险评估请求,确定应用程序使用信息和用户要素信息;利用应用程序使用信息和用户要素信息,进行风险评估,确定评估结果,将所述评估结果反馈给所述开放银行api网关。
26.具体实施例中,移动端sdk页面模式交易时,所述开放银行api网关,具体用于:
27.接收移动端sdk发送的加密交易报文,对所述加密交易报文进行解密;
28.对解密后的交易报文进行令牌验证,验证通过后,向开放银行后台系统的产品服务后端组件发送交易报文请求;
29.接收开放银行后台系统返回的响应报文,根据所述响应报文,确定交易响应结果,将所述交易响应结果发送给移动端sdk。
30.相应地,具体实施例中,所述开放银行后台系统,包括:
31.产品服务后端组件,用于接收所述开放银行api网关发送的交易报文请求,根据所述交易报文请求,在缓存中记录业务流程的处理状态;从redis中缓存的用户要素信息,得到用户身份信息,将得到的用户身份信息,与交易报文请求中的交易身份信息进行防越权比对;比对通过后,处理对应的交易;将交易的相关信息推送给风险控制平台;接收风险控制平台反馈的交易行为分析结果,生成响应报文,返回给所述开放银行api网关;
32.风险控制平台,用于接收产品服务后端组件推送的交易的相关信息,根据交易的相关信息,进行交易行为分析,确定交易行为分析结果,反馈给产品服务后端组件。
33.本发明实施例还提供一种开放银行的api业务安全性控制方法,用以避免用户数据泄露,减少资金遭受损失的发生,该方法包括:
34.移动端sdk接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将所述通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;
35.合作机构服务端接收移动端sdk发送的所述通信报文,根据所述通信报文,对所述应用程序进行身份识别认证;身份识别认证成功后,转换所述通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关;
36.开放银行api网关接收所述合作机构服务端发送的令牌申请请求报文,根据所述令牌申请请求报文,生成访问令牌,将所述访问令牌发送给开放银行后台系统;
37.开放银行后台系统接收所述访问令牌,进行风险评估,将评估结果发送给所述开放银行api网关;
38.开放银行api网关根据开放银行后台系统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥;
39.移动端sdk进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关;
40.开放银行api网关接收移动端sdk发送的加密交易报文,根据所述加密交易报文,向开放银行后台系统发送交易报文请求;
41.开放银行后台系统接收所述交易报文请求,根据所述交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将所述响应报文发送给所述开放银行api网关;
42.开放银行api网关接收开放银行后台系统返回的响应报文,根据所述响应报文,确定交易响应结果,发送给移动端sdk。
43.具体实施例中,合作机构服务端接收移动端sdk发送的所述通信报文,根据所述通信报文,对所述应用程序进行身份识别认证;身份识别认证成功后,转换所述通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关,包括:
44.合作机构服务端接收所述移动端sdk发送的所述通信报文,根据所述通信报文,核验所述应用程序是否为伪冒,若核验结果为非伪冒,认定身份识别认证成功;
45.身份识别认证成功后,根据所述通信报文,确定用户身份信息;
46.将所述用户身份信息转换成开放银行体系的身份信息,利用开放银行体系的身份信息,替换所述通信报文中的用户身份信息,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关。
47.具体实施例中,移动端sdk接收应用程序上送的用户识别信息,采集应用程序使用
信息;根据用户识别信息和应用程序使用信息,得到通信报文,将所述通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证,包括:
48.移动端sdk初始化时,移动端sdk接收应用程序上送的用户识别信息,采集应用程序使用信息;
49.根据用户识别信息和应用程序使用信息,得到通信报文,将所述通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证。
50.具体实施例中,开放银行api网关接收所述合作机构服务端发送的令牌申请请求报文,根据所述令牌申请请求报文,生成访问令牌,将所述访问令牌发送给开放银行后台系统,包括:
51.移动端sdk初始化时,开放银行api网关接收所述合作机构服务端发送的令牌申请请求报文,根据所述令牌申请请求报文,进行权限校验;
52.权限校验通过后,生成访问令牌,将所述访问令牌发送给开放银行后台系统的产品服务后端组件;
53.接收所述产品服务后端组件返回的用户要素信息和主交易账户信息,以所述访问令牌为键,用户要素信息和主交易账户信息为值,缓存至redis中;
54.根据redis中缓存的信息,向开放银行后台系统的风险控制平台发起风险评估请求。
55.具体实施例中,开放银行后台系统接收所述访问令牌,进行风险评估,将评估结果发送给所述开放银行api网关,包括:
56.产品服务后端组件接收所述开放银行api网关发送的访问令牌,识别所述访问令牌,得到用户的用户要素信息和主交易账户信息;将用户的用户要素信息和主交易账户信息返回给所述开放银行api网关;
57.风险控制平台接收所述开放银行api网关发起的风险评估请求,根据所述风险评估请求,确定应用程序使用信息和用户要素信息;利用应用程序使用信息和用户要素信息,进行风险评估,确定评估结果,将所述评估结果反馈给所述开放银行api网关。
58.具体实施例中,开放银行api网关根据开放银行后台系统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥,包括:
59.移动端sdk初始化时,开放银行api网关接收风险控制平台反馈的评估结果;
60.根据风险控制平台反馈的评估结果,确定是否批准移动端sdk的访问;
61.批准移动端sdk的访问时,返回给移动端sdk:产品的入口地址、访问令牌和密钥。
62.具体实施例中,移动端sdk进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关,包括:
63.移动端sdk页面模式交易时,移动端sdk打开网页视图控件,跳转到所述产品的入口地址;
64.将所述访问令牌组装进交易报文,并利用所述密钥对交易报文进行加密,生成加密交易报文,发送给开放银行api网关。
65.具体实施例中,开放银行api网关接收移动端sdk发送的加密交易报文,根据所述加密交易报文,向开放银行后台系统发送交易报文请求,包括:
66.移动端sdk页面模式交易时,接收移动端sdk发送的加密交易报文,对所述加密交
易报文进行解密;
67.对解密后的交易报文进行令牌验证,验证通过后,向开放银行后台系统的产品服务后端组件发送交易报文请求。
68.具体实施例中,开放银行后台系统接收所述交易报文请求,根据所述交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将所述响应报文发送给所述开放银行api网关,包括:
69.产品服务后端组件接收所述开放银行api网关发送的交易报文请求,根据所述交易报文请求,在缓存中记录业务流程的处理状态;从redis中缓存的用户要素信息,得到用户身份信息,将得到的用户身份信息,与交易报文请求中的交易身份信息进行防越权比对;比对通过后,处理对应的交易;将交易的相关信息推送给风险控制平台;
70.风险控制平台接收产品服务后端组件推送的交易的相关信息,根据交易的相关信息,进行交易行为分析,确定交易行为分析结果,反馈给产品服务后端组件;
71.产品服务后端组件接收风险控制平台反馈的交易行为分析结果,生成响应报文,返回给所述开放银行api网关。
72.本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述开放银行的api业务安全性控制方法。
73.本发明实施例也提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述开放银行的api业务安全性控制方法的计算机程序。
74.本发明实施例中,通过设置移动端sdk,接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关;设置合作机构服务端,接收移动端sdk发送的通信报文,根据通信报文,对应用程序进行身份识别认证;身份识别认证成功后,转换通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关;设置开放银行api网关,用于接收合作机构服务端发送的令牌申请请求报文,根据令牌申请请求报文,生成访问令牌,将访问令牌发送给开放银行后台系统;根据开放银行后台系统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥;接收移动端sdk发送的加密交易报文,根据加密交易报文,向开放银行后台系统发送交易报文请求;接收开放银行后台系统返回的响应报文,根据响应报文,确定交易响应结果,发送给移动端sdk;设置开放银行后台系统,接收访问令牌,进行风险评估,将评估结果发送给开放银行api网关;接收交易报文请求,根据交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将响应报文发送给开放银行api网关。利用访问令牌进行业务流程关联,实现了类session(时域)化的管理机制,避免了水平越权和垂直越权的存在,避免了恶意跳过业务校验步骤等严重漏洞的出现,从而避免用户数据泄露,减少资金遭受损失的发生。
附图说明
75.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用
的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
76.图1为本发明实施例中开放银行的api业务安全性控制系统的结构示意图。
77.图2为本发明具体实例中移动端sdk初始化控制流程示意图。
78.图3为本发明具体实例中移动端sdk页面模式正常交易控制流程示意图。
79.图4为本发明具体实例中风险控制机制的示意图。
80.图5为本发明实施例中开放银行的api业务安全性控制方法的示意图。
81.图6为本发明具体实施例中步骤502的实现过程示意图。
82.图7为本发明具体实施例中步骤503的实现过程示意图。
83.图8为本发明具体实施例中步骤504的实现过程示意图。
84.图9为本发明具体实施例中步骤505的实现过程示意图。
85.图10为本发明具体实施例中步骤506的实现过程示意图。
86.图11为本发明具体实施例中步骤507的实现过程示意图。
87.图12为本发明具体实施例中步骤508的实现过程示意图。
88.图13为本发明实施例中用于开放银行的api业务安全性控制的电子设备的示意图。
具体实施方式
89.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
90.为了便于理解本发明实施例中提供的开放银行的api业务安全性控制系统及方法,将本发明实施例中所涉及的专业术语进行解释如下:
91.开放银行:由英文open banking翻译而来,由英国提出,起源和推广是英国和欧盟关于银行业的数据共享和开放数据的探索,是一种利用开放api技术,让提供商访问客户财务信息的安全方式。一方面,可以让客户更详细地了解自己的账户;另一方面,客户可以通过第三方提供商享受更好的金融服务。开放银行平台作为开放的金融服务平台,以用户体验为导向、以生态场景为触点,以金融机构核心能力为支撑,依托现代科技,与客户、员工、供应商、科技开发者等主体共建共享,从而为客户提供体验一流的金融服务。
92.api:application programming interface,应用程序接口是一组预先定义好的功能,开发者可通过该功能(或功能的组合)便捷地访问相关服务,而无需关注服务的设计与实现。
93.sdk:software development kit,应用软件开发工具包是基于特定软件包、框架硬平台操作系统等建立应用程序时所使的开发工具集合。
94.接口模式:由用户按照业务流程与实施要求自行设计开发功能界面,满足合作机构网络应用自己的设计风格和特定的产品服务需求。
95.页面模式:用户无需开发功能界面,商业银行开发设计功能界面供客户使用,客户
交易流程在银行侧完成,该模式在应用端内嵌建设银行应用软件开发工具包,能够实现快速接入。
96.应用方:调用商业银行应用程序接口的机构。
97.c3类数据:《个人金融信息保护技术规范》(jrt 0171—2020)规定根据信息遭到未经授权的查看或未经授权的变更后所产做的影响和危害,将个人金融信息敏感程度从高到低分为c3、c2、cl三个级别。c3类别信息主要为用户鉴别信息。该类信息一旦遭到未经授权的查看或未经授权的变更,会对个人金融信息主体的信息安全与财产安全造成严重危害。
98.开放银行应用程序接口服务:是一种依托api技术实现内部与外部互联的金融服务模式。商业银行通过为合作伙伴提供用以互联的应用程序接口,输出自身金融服务能力与信息技术能力,为增加金融生态黏性提供有益补充。开放银行的价值创造体现在:足以替代专线模式的开放银行安全能力建设,才能真正实现丰富的可输出金融产品;一切金融服务触手可及同时,充分节省接入成本。才能更好的沉淀客户资源,为数字化转型提供数据支撑。而金融行业是强监管的行业,是涉及业务敏感数据极多的行业,是高度依赖信息化的行业,也是信息安全风险形势极为严峻的行业。
99.本发明实施例提供了一种开放银行的api业务安全性控制系统,用以避免用户数据泄露,减少资金遭受损失的发生,该系统如图1所示,包括:
100.移动端sdk101,用于接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端102的sdk认证服务接口,进行身份识别认证;进入开放银行api网关103返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关103;
101.合作机构服务端102,用于接收移动端sdk101发送的通信报文,根据通信报文,对应用程序进行身份识别认证;身份识别认证成功后,转换通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关103;
102.开放银行api网关103,用于接收合作机构服务端102发送的令牌申请请求报文,根据令牌申请请求报文,生成访问令牌,将访问令牌发送给开放银行后台系统104;根据开放银行后台系统104反馈的评估结果,返回给移动端sdk101:产品的入口地址、访问令牌和密钥;接收移动端sdk101发送的加密交易报文,根据加密交易报文,向开放银行后台系统104发送交易报文请求;接收开放银行后台系统104返回的响应报文,根据响应报文,确定交易响应结果,发送给移动端sdk101;
103.开放银行后台系统104,用于接收访问令牌,进行风险评估,将评估结果发送给开放银行api网关103;接收交易报文请求,根据交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将响应报文发送给开放银行api网关103。
104.由此可见,本发明实施例中,通过设置移动端sdk101,接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端102的sdk认证服务接口,进行身份识别认证;进入开放银行api网关103返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关103;设置合作机构服务端102,接收移动端sdk101发送的通信报文,根据通信报文,对应用程序进行身份识别认证;身份识别认证成功后,转换通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关103;设置开放银行api网关
103,用于接收合作机构服务端102发送的令牌申请请求报文,根据令牌申请请求报文,生成访问令牌,将访问令牌发送给开放银行后台系统104;根据开放银行后台系统104反馈的评估结果,返回给移动端sdk101:产品的入口地址、访问令牌和密钥;接收移动端sdk101发送的加密交易报文,根据加密交易报文,向开放银行后台系统104发送交易报文请求;接收开放银行后台系统104返回的响应报文,根据响应报文,确定交易响应结果,发送给移动端sdk101;设置开放银行后台系统104,接收访问令牌,进行风险评估,将评估结果发送给开放银行api网关103;接收交易报文请求,根据交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将响应报文发送给开放银行api网关103。利用访问令牌进行业务流程关联,实现了类session(时域)化的管理机制,避免了水平越权和垂直越权的存在,避免了恶意跳过业务校验步骤等严重漏洞的出现,从而避免用户数据泄露,减少资金遭受损失的发生。
105.具体实施例中,由于开放银行的api业务服务生命周期划分为sdk初始化和移动端sdk101页面模式交易两个阶段,具体实施时,移动端sdk101,具体用于:
106.移动端sdk101初始化时,接收应用程序app上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端102的sdk认证服务接口,进行身份识别认证;
107.移动端sdk101页面模式交易时,打开网页视图webview控件,跳转到产品的入口地址;将访问令牌组装进交易报文,并利用密钥对交易报文进行加密,生成加密交易报文,发送给开放银行api网关103。
108.其中,接收应用程序上送的用户识别信息,采集应用程序使用信息,移动端向sdk提供希望使用的产品名称和接入场景,向sdk提供用于标识app当前登录用户的相关信息,例如cookie(储存在用户本地终端上的数据)、session id等信息;app调用sdk,sdk采集应用程序使用信息,包括:移动端的设备信息、app应用信息和运行环境检测信息。
109.具体实施时,合作机构服务端102,具体用于:
110.在移动端sdk101初始化时,接收移动端sdk101发送的通信报文,根据通信报文,核验应用程序是否为伪冒,若核验结果为非伪冒,认定身份识别认证成功;
111.身份识别认证成功后,根据通信报文,确定用户身份信息;
112.将用户身份信息转换成开放银行体系的身份信息,利用开放银行体系的身份信息,替换通信报文中的用户身份信息,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关103。
113.相应地,移动端sdk101初始化时,开放银行api网关103,具体用于:
114.接收合作机构服务端102发送的令牌申请请求报文,根据令牌申请请求报文,进行权限校验;
115.权限校验通过后,生成访问令牌,将访问令牌发送给开放银行后台系统104的产品服务后端组件;
116.接收产品服务后端组件返回的用户要素信息和主交易账户信息,以访问令牌为键,用户要素信息和主交易账户信息为值,缓存至redis中;
117.根据redis中缓存的信息,向开放银行后台系统104的风险控制平台发起风险评估请求,接收风险控制平台反馈的评估结果;
118.根据风险控制平台反馈的评估结果,确定是否批准移动端sdk101的访问;
119.批准移动端sdk101的访问时,返回给移动端sdk101:产品的入口地址、访问令牌和密钥。
120.其中,产品的入口地址是指h5(html 5)接入地址。
121.进一步地,在移动端sdk101初始化时,开放银行后台系统104,包括:
122.产品服务后端组件,用于接收开放银行api网关103发送的访问令牌,识别访问令牌,得到用户的用户要素信息和主交易账户信息;将用户的用户要素信息和主交易账户信息返回给开放银行api网关103;
123.风险控制平台,用于接收开放银行api网关103发起的风险评估请求,根据风险评估请求,确定应用程序使用信息和用户要素信息;利用应用程序使用信息和用户要素信息,进行风险评估,确定评估结果,将评估结果反馈给开放银行api网关103。
124.移动端sdk101初始化结束后,即可进行移动端sdk101页面模式交易,此时,移动端sdk101中的h5应用触发的javascript事件,调用webview控件中的javascript bridge组件;将访问令牌组装进报文中,并进行基础的加密加签处理,处理后发送给开放银行api网关103。
125.相应地,开放银行api网关103,具体用于:
126.接收移动端sdk101发送的加密交易报文,对加密交易报文进行解密;
127.对解密后的交易报文进行令牌验证,验证通过后,向开放银行后台系统104的产品服务后端组件发送交易报文请求;
128.接收开放银行后台系统104返回的响应报文,根据响应报文,确定交易响应结果,将交易响应结果发送给移动端sdk101。
129.此时,开放银行后台系统104中的产品服务后端组件,用于接收开放银行api网关103发送的交易报文请求,根据交易报文请求,在缓存中记录业务流程的处理状态;从redis中缓存的用户要素信息,得到用户身份信息,将得到的用户身份信息,与交易报文请求中的交易身份信息进行防越权比对;比对通过后,处理对应的交易;将交易的相关信息推送给风险控制平台;接收风险控制平台反馈的交易行为分析结果,生成响应报文,返回给开放银行api网关103;
130.开放银行后台系统104中的风险控制平台,用于接收产品服务后端组件推送的交易的相关信息,根据交易的相关信息,进行交易行为分析,确定交易行为分析结果,反馈给产品服务后端组件。
131.下面给出一具体实例说明本发明实施例如何进行开放银行的api业务安全性控制。
132.根据网络定义,sdk一般是软件工程师用于为特定软件包、软件框架、硬件平台、操作系统等建立应用软件开发工具的集合。通俗来讲,sdk是可以实现软件产品功能的工具包,当前一些功能性的sdk可以被当成产品来运营,sdk的使用者不需要对产品的每个功能进行开发,可以减少实现产品功能的成本、提高开发效率。通过sdk技术来实现其与第三方数据与服务的共享。在具体应用中,sdk是融入移动场景较好的工具,例如,a银行与b社交平台合作,a想在b平台上嵌入其部分服务,a可以通过sdk将服务集成到b的app上,b就可以实现直接调用a的服务。api是一种能力或者规范,一般情况下,sdk可以包含多个api。
133.商业银行应用程序接口服务的参与方主要包括c端用户、应用合作机构以及商业银行,商业银行通过api直接连接或sdk间接连接方式,向应用方和用户提供应用程序接口服务,实现商业银行服务的对外输出。开放平台对外输出服务,为用户提供以下两种接入模式:
134.(一)接口模式。由用户按照银行的业务流程与实施要求自行设计开发功能界面,满足合作机构网络应用自己的设计风格和特定的产品服务需求。
135.(二)页面模式。合作机构无需开发功能界面,由银行开发设计功能界面供客户使用,客户交易流程在银行侧完成,该模式在应用端内嵌建设银行应用软件开发工具包,内置报文加解密,调用gps,相机和人脸识别等门槛要求较高的控件,达到快速接入的目的。
136.本例应用上述实施例中提供的开放银行的api业务安全性控制系统,来进行开放银行c端用户体系的网络安全控制。大致思路为:合作机构通过在自身app中集成开放银行发布的sdk,将银行的“页面模式”的特色金融产品整合到自身的业务场景中。以服务端对服务端交换用户身份的方式,实现了合作机构与银行系统间的用户身份传递,实现了合作机构的c端用户交叉授权,提高了系统的安全性。以访问令牌的方式对业务流程进行关联,实现类session化的管理机制,有效的解决了水平越权,垂直越权,恶意跳过业务校验步骤等严重漏洞,以致用户数据泄露或者资金遭受损失的事件的发生。移动端sdk对设备信息,sdk运行环境信息的采集,并接入风险控制平台,为风险控制和渠道反欺诈提供了更多的决策数据源,提高了平台的整体安全水平。且sdk端通过采集设备信息的方式,解决现在的开放银行的安全防护不能实现对移动端设置的单独授权管理的问题。使用安全软键盘等灵活的敏感信息保护机制,保障c3类敏感信息的输入完成在银行侧,完善了金融数据安全闭环体系。
137.具体地,由于本具体实例涉及的页面模式是基于移动端sdk实施的,开放银行api业务服务生命周期划分为sdk初始化和正常交易两个流程,具体设计如图2和图3所示。
138.移动端sdk提供基础的报文加密和加签功能,通过访问令牌控制整个会话过程。整体流程可以描述为:
139.在移动端sdk初始化阶段,app将用于识别自身用户的信息传递给sdk,sdk同时将从手机设备采集到的设备app应用信息、硬件信息、app运行环境信息,组装到通信报文中,发送到合作机构的sdk认证服务接口,进而申请开放银行api的访问令牌;
140.合作机构需要检测app是否是伪冒app,并对上送的身份识别信息进行认证,同时将自己的用户体系按照与银行约定的方式,转化成银行体系的身份信息,如身份证号,手机号,银行卡号等(对于不需要打通用户体系的产品可跳过此环节)。之后组装报文,通过服务端sdk调用开放银行的api网关的服务申请访问令牌;
141.风险控制平台使用规则引擎,利用银行内强大的风险数据进行风险识别,同时生成负面观察列表,对高风险的申请访问令牌交易进行及时阻断。认证通过后返回移动端的访问令牌、一对用于加密加签的密钥和产品的入口url地址。
142.当移动端sdk收到最终反应报文后,移动端sdk调起webview就可以直接拉起h5页面。移动端sdk正常交易阶段,只需要与开放银行的api网关进行通信。移动端sdk的基础服务利用上面获取到的访问令牌和协商出来的过程密钥,保障通信报文的安全。
143.其中,在进行风险识别时,一般应用一些预设的风控规则,如表1所示:
144.表1
[0145][0146]
本具体实例应用于sdk间接连接的“页面模式”,涉及开放银行业务中个人金融敏感信息保护领域,提供了一种面向sdk的认证合作伙伴身份(b端)和对终端用户(c端)交叉授权方案,和一种在双因子认证过程中使用安全软键盘对c3类敏感信息数据端到端的保护机制的设计与实现,可满足通用开放银行业务系统的安全建设。
[0147]
本具体实例提供一种高效的身份认证机制,实现了合作机构的用户体系和银行用户体系的互联互通。对如重要的商户和银行间的传参行为(如客户身份标识)通过接口模式,进行服务端对服务端的交换获取使用去标识化,随机性和token化的标识,使用这种标识达到移动端sdk的信息闭环,避免客户敏感信息泄漏,盗取等风险。银行产品在设计中,对于重要交易可采用双因子等方式,做到对c端用户的二次认证,让银行切实做到保护用户资金和用户数据的安全。
[0148]
本具体实例还提供一种在双因子或者多因子在认证中保护用户支付、登录、查询密码等c3类敏感信息的方式,移动端sdk提供防终端录屏和截屏功能,并在开放银行服务端部署使用基于白盒密钥的h5安全软键盘。保障c3类敏感信息在终端h5安全软键盘录入中不
会被终端缓存,而只能在api网关才能还原,之后采用端到端的加密机制发给产品服务组件的方式,切实做到保障c3类敏感信息不会在终端h5应用及开放银行平台系统间的通信报文中被截留泄密。
[0149]
本具体实例还提供一种通过sdk采集设备信息的机制,在sdk初始化及交易过程中,采集当时手机设备信息:如mac地址,手机当前的ip地址,android的packagename;ios的testbundleid或者bundleid,手机设备标识码(meid mobile equipment identifier)或者设备的唯一标识码,同时采集app运行环境和操作系统是否被root。
[0150]
进一步地,本具体实例在开放银行领域还提供一种基于终端的风险控制机制。如图4所示,结合埋点技术,并将所有交易数据、用户行为纳入数据仓库,利用大数据、流式计算机器学习和人工智能,借助数据分析引擎,清洗、筛选、加工数据,自动生成负面观察列表和风控策略形成机制。对来自合作机构的c端用户的终端设备标识信息、应用信息、交易发生的物理地址、频率以及用户身份信息与接入的开放银行的产品,综合起来进行终端安全评分,通过风险建模和规则引擎准确有效的进行风险防控。在尊重客户数据隐私的前提下,实现对日常交易实时安全监控,预警和实时阻断涉嫌欺诈的恶意、高危交易。
[0151]
因此,本具体实例的优点如下:
[0152]
页面模式通过合作机构,api网关和后端的产品组件三方合作,使得开放银行的产品融入了合作机构的庞大的用户体系,极大的提升了用户体验。通过和合作机构交叉授权的方式,对移动端客户进行获取,已经输出的产品能够为c端引流,提高银行用户群体,带来大量的交易量。
[0153]
通过页面模式,银行能够得以推出要使用到人脸识别、ocr识别这类专业控件才能开展的业务,降低了合作机构与银行合作推出金融相关服务的门槛。
[0154]
页面模式中对设备信息的采集,可以让开放银行的api接入到银行强大的风控系统,降低了由于推出新形态的业务而带来的风险。
[0155]
使用h5安全软键盘,能够保护c3类敏感数据,满足了监管需求。
[0156]
上述具体应用的实施仅为举例,其余实施方式不再一一赘述。
[0157]
基于同一发明构思,本发明实施例还提供一种开放银行的api业务安全性控制方法,由于开放银行的api业务安全性控制方法所解决问题的原理与开放银行的api业务安全性控制系统相似,因此开放银行的api业务安全性控制方法的实施可以参见开放银行的api业务安全性控制系统的实施,重复之处不再赘述,如图5所示,具体包括:
[0158]
步骤501:移动端sdk接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;
[0159]
步骤502:合作机构服务端接收移动端sdk发送的通信报文,根据通信报文,对应用程序进行身份识别认证;身份识别认证成功后,转换通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关;
[0160]
步骤503:开放银行api网关接收合作机构服务端发送的令牌申请请求报文,根据令牌申请请求报文,生成访问令牌,将访问令牌发送给开放银行后台系统;
[0161]
步骤504:开放银行后台系统接收访问令牌,进行风险评估,将评估结果发送给开放银行api网关;
[0162]
步骤505:开放银行api网关根据开放银行后台系统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥;
[0163]
步骤506:移动端sdk进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关;
[0164]
步骤507:开放银行api网关接收移动端sdk发送的加密交易报文,根据加密交易报文,向开放银行后台系统发送交易报文请求;
[0165]
步骤508:开放银行后台系统接收交易报文请求,根据交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将响应报文发送给开放银行api网关;
[0166]
步骤509:开放银行api网关接收开放银行后台系统返回的响应报文,根据响应报文,确定交易响应结果,发送给移动端sdk。
[0167]
具体实施例中,步骤501具体实现时,包括:
[0168]
移动端sdk初始化时,移动端sdk接收应用程序上送的用户识别信息,采集应用程序使用信息;其中,应用程序使用信息包括:移动端的设备信息、app应用信息和运行环境检测信息。
[0169]
根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证。
[0170]
具体实施时,步骤502的具体实现过程,如图6所示,包括:
[0171]
步骤601:合作机构服务端接收移动端sdk发送的通信报文,根据通信报文,核验应用程序是否为伪冒,若核验结果为非伪冒,认定身份识别认证成功;
[0172]
步骤602:身份识别认证成功后,根据通信报文,确定用户身份信息;
[0173]
步骤603:将用户身份信息转换成开放银行体系的身份信息,利用开放银行体系的身份信息,替换通信报文中的用户身份信息,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关。
[0174]
具体实施例中,步骤503具体实现过程,如图7所示,包括:
[0175]
步骤701:移动端sdk初始化时,开放银行api网关接收合作机构服务端发送的令牌申请请求报文,根据令牌申请请求报文,进行权限校验;
[0176]
步骤702:权限校验通过后,生成访问令牌,将访问令牌发送给开放银行后台系统的产品服务后端组件;
[0177]
步骤703:接收产品服务后端组件返回的用户要素信息和主交易账户信息,以访问令牌为键,用户要素信息和主交易账户信息为值,缓存至redis中;
[0178]
步骤704:根据redis中缓存的信息,向开放银行后台系统的风险控制平台发起风险评估请求。
[0179]
具体实施例中,步骤504的实现过程,如图8所示,包括:
[0180]
步骤801:产品服务后端组件接收开放银行api网关发送的访问令牌,识别访问令牌,得到用户的用户要素信息和主交易账户信息;将用户的用户要素信息和主交易账户信息返回给开放银行api网关;
[0181]
步骤802:风险控制平台接收开放银行api网关发起的风险评估请求,根据风险评估请求,确定应用程序使用信息和用户要素信息;利用应用程序使用信息和用户要素信息,进行风险评估,确定评估结果,将评估结果反馈给开放银行api网关。
[0182]
相应地,步骤505的实现过程,如图9所示,包括:
[0183]
步骤901:移动端sdk初始化时,开放银行api网关接收风险控制平台反馈的评估结果;
[0184]
步骤902:根据风险控制平台反馈的评估结果,确定是否批准移动端sdk的访问;
[0185]
步骤903:批准移动端sdk的访问时,返回给移动端sdk:产品的入口地址、访问令牌和密钥。
[0186]
在移动端sdk页面模式交易时,步骤506的具体实现过程,如图10所示,包括:
[0187]
步骤1001:移动端sdk打开网页视图控件,跳转到产品的入口地址;
[0188]
步骤1002:将访问令牌组装进交易报文,并利用密钥对交易报文进行加密,生成加密交易报文,发送给开放银行api网关。
[0189]
进一步地,步骤507的实现过程,如图11所示,包括:
[0190]
步骤1101:移动端sdk页面模式交易时,接收移动端sdk发送的加密交易报文,对加密交易报文进行解密;
[0191]
步骤1102:对解密后的交易报文进行令牌验证,验证通过后,向开放银行后台系统的产品服务后端组件发送交易报文请求。
[0192]
具体实施时,步骤508的实现过程如图12所示,包括:
[0193]
步骤1201:产品服务后端组件接收开放银行api网关发送的交易报文请求,根据交易报文请求,在缓存中记录业务流程的处理状态;从redis中缓存的用户要素信息,得到用户身份信息,将得到的用户身份信息,与交易报文请求中的交易身份信息进行防越权比对;比对通过后,处理对应的交易;将交易的相关信息推送给风险控制平台;
[0194]
步骤1202:风险控制平台接收产品服务后端组件推送的交易的相关信息,根据交易的相关信息,进行交易行为分析,确定交易行为分析结果,反馈给产品服务后端组件;
[0195]
步骤1203:产品服务后端组件接收风险控制平台反馈的交易行为分析结果,生成响应报文,返回给开放银行api网关。
[0196]
图13为本技术实施例的电子设备1300的系统构成的示意框图。如图13所示,该电子设备1300可以包括中央处理器1301和存储器1302;存储器1302耦合到中央处理器1301。值得注意的是,该图13是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
[0197]
一实施例中,开放银行的api业务安全性控制系统的功能可以被集成到中央处理器1301中。其中,中央处理器1301可以被配置为进行如下控制:
[0198]
移动端sdk,用于接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关;
[0199]
合作机构服务端,用于接收移动端sdk发送的通信报文,根据通信报文,对应用程序进行身份识别认证;身份识别认证成功后,转换通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关;
[0200]
开放银行api网关,用于接收合作机构服务端发送的令牌申请请求报文,根据令牌申请请求报文,生成访问令牌,将访问令牌发送给开放银行后台系统;根据开放银行后台系
统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥;接收移动端sdk发送的加密交易报文,根据加密交易报文,向开放银行后台系统发送交易报文请求;接收开放银行后台系统返回的响应报文,根据响应报文,确定交易响应结果,发送给移动端sdk;
[0201]
开放银行后台系统,用于接收访问令牌,进行风险评估,将评估结果发送给开放银行api网关;接收交易报文请求,根据交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将响应报文发送给开放银行api网关。
[0202]
从上述描述可知,本技术的实施例提供的电子设备,通过设置移动端sdk,接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关;设置合作机构服务端,接收移动端sdk发送的通信报文,根据通信报文,对应用程序进行身份识别认证;身份识别认证成功后,转换通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关;设置开放银行api网关,用于接收合作机构服务端发送的令牌申请请求报文,根据令牌申请请求报文,生成访问令牌,将访问令牌发送给开放银行后台系统;根据开放银行后台系统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥;接收移动端sdk发送的加密交易报文,根据加密交易报文,向开放银行后台系统发送交易报文请求;接收开放银行后台系统返回的响应报文,根据响应报文,确定交易响应结果,发送给移动端sdk;设置开放银行后台系统,接收访问令牌,进行风险评估,将评估结果发送给开放银行api网关;接收交易报文请求,根据交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将响应报文发送给开放银行api网关。利用访问令牌进行业务流程关联,实现了类session(时域)化的管理机制,避免了水平越权和垂直越权的存在,避免了恶意跳过业务校验步骤等严重漏洞的出现,从而避免用户数据泄露,减少资金遭受损失的发生。
[0203]
在另一个实施方式中,开放银行的api业务安全性控制系统可以与中央处理器1301分开配置,例如可以将开放银行的api业务安全性控制系统配置为与中央处理器1301连接的芯片,通过中央处理器的控制来实现开放银行的api业务安全性控制功能。
[0204]
如图13所示,该电子设备1300还可以包括:通信模块1303、输入单元1304、音频处理器1305、显示器1306、电源1307。值得注意的是,电子设备1300也并不是必须要包括图13中所示的所有部件;此外,电子设备1300还可以包括图13中没有示出的部件,可以参考现有技术。
[0205]
如图13所示,中央处理器1301有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器1301接收输入并控制电子设备1300的各个部件的操作。
[0206]
其中,存储器1302,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器1301可执行该存储器1302存储的该程序,以实现信息存储或处理等。
[0207]
输入单元1304向中央处理器1301提供输入。该输入单元1304例如为按键或触摸输入装置。电源1307用于向电子设备1300提供电力。显示器1306用于进行图像和文字等显示
对象的显示。该显示器例如可为lcd显示器,但并不限于此。
[0208]
该存储器1302可以是固态存储器,例如,只读存储器(rom)、随机存取存储器(ram)、sim卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为eprom等。存储器1302还可以是某种其它类型的装置。存储器1302包括缓冲存储器1321(有时被称为缓冲器)。存储器1302可以包括应用/功能存储部1322,该应用/功能存储部1322用于存储应用程序和功能程序或用于通过中央处理器1301执行电子设备1300的操作的流程。
[0209]
存储器1302还可以包括数据存储部1323,该数据存储部1323用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器1302的驱动程序存储部1324可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
[0210]
通信模块1303即为经由天线1308发送和接收信号的发送机/接收机1303。通信模块(发送机/接收机)1303耦合到中央处理器1301,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
[0211]
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块1303,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)1303还经由音频处理器1305耦合到扬声器1309和麦克风1310,以经由扬声器1309提供音频输出,并接收来自麦克风1310的音频输入,从而实现通常的电信功能。音频处理器1305可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器1305还耦合到中央处理器1301,从而使得可以通过麦克风1310能够在本机上录音,且使得可以通过扬声器1309来播放本机上存储的声音。
[0212]
本发明的实施例还提供能够实现上述实施例中的开放银行的api业务安全性控制方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的开放银行的api业务安全性控制方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
[0213]
移动端sdk接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;
[0214]
合作机构服务端接收移动端sdk发送的通信报文,根据通信报文,对应用程序进行身份识别认证;身份识别认证成功后,转换通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关;
[0215]
开放银行api网关接收合作机构服务端发送的令牌申请请求报文,根据令牌申请请求报文,生成访问令牌,将访问令牌发送给开放银行后台系统;
[0216]
开放银行后台系统接收访问令牌,进行风险评估,将评估结果发送给开放银行api网关;
[0217]
开放银行api网关根据开放银行后台系统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥;
[0218]
移动端sdk进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关;
[0219]
开放银行api网关接收移动端sdk发送的加密交易报文,根据加密交易报文,向开放银行后台系统发送交易报文请求;
[0220]
开放银行后台系统接收交易报文请求,根据交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将响应报文发送给开放银行api网关;
[0221]
开放银行api网关接收开放银行后台系统返回的响应报文,根据响应报文,确定交易响应结果,发送给移动端sdk。
[0222]
综上所述,本发明实施例提供的开放银行的api业务安全性控制系统及方法具有如下优点:
[0223]
通过设置移动端sdk,接收应用程序上送的用户识别信息,采集应用程序使用信息;根据用户识别信息和应用程序使用信息,得到通信报文,将通信报文发送至合作机构服务端的sdk认证服务接口,进行身份识别认证;进入开放银行api网关返回的产品的入口地址,利用访问令牌和密钥,生成加密交易报文,发送给开放银行api网关;设置合作机构服务端,接收移动端sdk发送的通信报文,根据通信报文,对应用程序进行身份识别认证;身份识别认证成功后,转换通信报文,得到令牌申请请求报文,将令牌申请请求报文发送给开放银行api网关;设置开放银行api网关,用于接收合作机构服务端发送的令牌申请请求报文,根据令牌申请请求报文,生成访问令牌,将访问令牌发送给开放银行后台系统;根据开放银行后台系统反馈的评估结果,返回给移动端sdk:产品的入口地址、访问令牌和密钥;接收移动端sdk发送的加密交易报文,根据加密交易报文,向开放银行后台系统发送交易报文请求;接收开放银行后台系统返回的响应报文,根据响应报文,确定交易响应结果,发送给移动端sdk;设置开放银行后台系统,接收访问令牌,进行风险评估,将评估结果发送给开放银行api网关;接收交易报文请求,根据交易报文请求,进行防越权校验和交易行为分析,得到响应报文,将响应报文发送给开放银行api网关。利用访问令牌进行业务流程关联,实现了类session(时域)化的管理机制,避免了水平越权和垂直越权的存在,避免了恶意跳过业务校验步骤等严重漏洞的出现,从而避免用户数据泄露,减少资金遭受损失的发生。
[0224]
虽然本发明提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
[0225]
本领域技术人员应明白,本说明书的实施例可提供为方法、装置(系统)或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0226]
本发明是参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现
在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0227]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0228]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0229]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。本发明并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本发明的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。
[0230]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1