XXX 小程序系统架构说明XXX: 当前无现金和无卡支付成为支付常态,为有效应对市场 变化,全方位提升客户业务办理便捷度,有效支持网上预约、 支付、缴费、移动扫码支付等业务开展,同时为外拓营销提 供更有力的金融产品,不断提升农商银行市场竞争力,XX银 行方案建设XX银行XX小程序系统一、系统根本功能 小程序是一种不需要下载安装即可使用的应用,它实现 了应用“触手可及〞的梦想,用户扫一扫或者搜一下即可翻 开应用,也表达了“用完即走〞的理念,用户不用担忧安装 太多应用的问题〔一〕XX小程序能够为客户提供网点、自助设备及农金 通效劳点位置信息、联系方式,同时能够为客户提供(支 付宝)等渠道的支付功能〔二〕(支付宝)小程序运行环境独立,基于 wxml+wxss+js〔视图+样式+控制〕开发,开发本钱低,并且 很快就可以将自己的产品推向市场进行试验,如果效果不好 可以马上重新对其进行改进,即便重新打造一款新的小程序 也并不需要太多的时间〔三〕小程序中可以逐步增加业务预约功能、金融知识、 业务咨询、场景功能等,多场景聚合,多元化开展随着互 联网效劳的开展,智能支付的普及,效劳会逐渐从单一预约、 扫码支付领域向着多元化开展,未来不管是公交支付、水电 煤缴费、寻医挂号等功能都将被整合进城市效劳小程序应用 的范畴,逐步打造农商银行县域智慧金融系统,从线上预约, 到场景支付,全面为客户提供优质高效的互联网金融效劳。
〔四〕按照【中国人民银行关于印发 <条码支付业务标 准〔试行〕〉的通知】〔银发【2021】296号〕文件要求,XX 银行与财付通支付(蚂蚁金融)科技〔以下简称财付通〕签订 了【支付效劳协议】及其补充协议根据【支付效 劳协议的补充协议】〔协议编号:T-301-WCP-20210807-03〕 规定,资金清算模式为:1、用户在小程序缴费系统付款,由用户零钱或绑 定银行卡支付,款项由财付通代扣;2、 财付通收到款项后转至中国银联;3、 中国银联将收到款项清算到XX银行报备的内部资金 户;4、 XX 银行内部资金户收到款项后,清算到收款商户在XX 银行行开立的账户中〔资金由财付通及中国银联清算到 XX行内部资金户为T+1模式,即资金在财付通和中国银联总 计留存一个工作日〕二、系统技术架构 总体设计目标:高并发、大数据承载量、平安、稳定为 最终实现目标〔一〕网络架构:在平安缓冲区放置 1台效劳器,通过 虚拟化技术为XX行提供流量转发和WEB效劳在应用及数 据区放置1台效劳器,通过虚拟化技术为XX行提供系统应 用及数据库效劳〔二〕技术架构:小程序客户端采用C/S〔小程序客户 端一效劳器〕架构,管理端采用B/S架构〔浏览器一效劳器〕。
使用PHP三层体系架构:表示层:主要使用 WEB-Render 方式,逻辑层强大和完 善,无论表现层如何定义和更改,各司其职,逻辑层都能完 善地提供效劳业务逻辑层:主要针对具体问题操作,也是对数据Data 层的操作,对数据业务进行逻辑处理,实现积木拼接式搭建抽象接口层:对数据访问层抽象出接口,业务逻辑层经 过抽象接口层去调用,保证调用别离,扩展别离数据访问层:主要对原始数据进行加工和提取,为业务 逻辑层提供数据效劳设计模式:单例模式、适配器模式、模版方法模式、职 责链模式等〔三〕总体设计原那么:系统架构设计原那么:可靠性、 健壮性、可修改性、便捷性、可测试性、效率性、标准化性、 先进性、可扩展性依据七大原那么:开-闭原那么〔OCP〕、里氏替换原那 么〔LSP、、依赖倒转原那么OIP、、接口隔离原那么〔ISP、、 迪米法特原那么〔LKP〕、单一职责原那么〔SRP〕、合成/复 用聚合原那么〔CARP、平安设计:信息内部传输采用MD5不可逆加密算法,涉 及到金额、银行卡、结算等敏感信息系统会自动过滤恶意请 求,保证用户资金平安1、小程序架构方面小程序的框架包含两局部View 视图层、App Service逻辑层,View层用来渲染页面结构, AppService层用来逻辑处理、数据请求、接口调用,它们在 两个线程里运行。
视图层使用WebView渲染,逻辑层使用 JSCore运行视图层和逻辑层通过系统层的JSBridage进行 通信,逻辑层把数据变化通知到视图层,触发视图层页面更 新,视图层把触发的事件通知到逻辑层进行业务处理为确保小程序端平安,在小程序开发设计时采取不信任 不留存策略,不在本地保存敏感数据,所需数据均由post 请求所得,即用即走,不储存于本地在用户使用时,只允许用户输入我们期望的数据例如: 年龄的input中,只允许用户输入数字,而数字之外的字符 都过滤掉2、小程序后台管理方面小程序后台管理采用php开 发,选取thinkPHP框架为根底开发,框架本身具有较强的 稳定性优势,在开发过程中对于数据来源更为严密的验证措 施以加强系统平安性,针对平安性方面,系统设计上做了以 下针对性优化〔1〕防止WXX攻击对提交的任何表单采取不信任原 那么,验证表单来源并对表单数据进行敏感词过滤,过滤或 移除特殊的Html标签,对于用户输入数据同样只允许用户 输入我们期望的数据,并将重要的cookie标记为 only,防止Javascript中的document.cookie语句就获取到 cookie〔2〕CSRF跨站请求伪造。
CSRF是通过伪装来自受信任 用户的请求来利用受信任的站点,针对于改攻击方式,系统 采取对于数据请求均采用POST请求,防止GET方式会在web 效劳器和代理效劳器日志中留下数据尾巴,使攻击者有迹可 循在对web站点授权中采取瞬时授权方法〔3〕针对SQL注入防止sql注入攻击,我们对用户 输入内容均采取不信任原那么,通过正那么匹配对输入内容 进行校验,并限制其长度,使用的sql语句采取参数化sql 进行数据的查询存取,连接数据库的用户使用单独权限,有 限的数据连接,对于敏感信息的存放采用多重加密方式,并 且系统对于原始的异常信息进行了包装,防止错误暴露3、小程序接口通讯方面小程序接口通讯为加强平安, 采用 s协议,对数据进行加密传输及身份认证〔四〕系统运行模式小程序效劳端使用php开发,采 用web模块模式运行,模块模式是mod_php5模块的形式集 成,此时mod_php5模块的作用是接收Apache传递过来的PHP 文件请求,并处理这些请求,然后将处理后的结果返回给 Apache我们在Apache启动前在其配置文件中配置好了 PHP 模块〔mod_php5〕,PHP模块通过注册apache2的 ap_hook_post_config挂钩,在Apache启动的时候启动此模 块以接受PHP文件的请求。
〔五,用户管理模式小程序系统对于系统用户,我们 采用RABC管理模式,即基于角色的用户权限管理,不同用 户分属于不同的角色,不同角色拥有不同的权限〔六,文件传输模式后台对账以及结算文件传输采用 ftp传输,小程序暂未涉及文件传输,预留文件传输接口同 样采用ftp传输〔七,网络平安方面对于网络平安方面,我们采用不 信任策略,即不相信表单,不相信用户,对于所有参数进行 再次验证,确保其符合协议规那么,并对于生成的所有sql 进行敏感词〔如:update, delete等,验证,防止sql注入 攻击系统采用safehtml以防止xss攻击,并在原根底上同时采取黑名单/白名单两种方法来加固平安〔八〕是否为全栈开发小程序系统从小程序开发、网 页设计到效劳端搭建均为全栈式开发三、 平台配置WEB 效劳器操作系统环境:WEB 效劳器数据库环境:效劳器环境:四、互联网网络带宽预估XXX工程所需互联网网络带宽为10M。