文 / 华夏银行信息科技部副总经理兼需求中心主任 易永丰
华夏银行信息科技部 李振中 李璧鲁 连加俊
随着数字金融推动金融服务重塑升级和业务线上化快速铺开,分行间大量同类业务“烟囱式”重复开发、交付效率低成为银行业普遍存在的问题。为解决这类问题,方便总行统筹管理和分行间业务共享,华夏银行积极探索创新引领、科技先行的发展模式,按照“搭平台、做产品、引需求、促融合”的工作原则,建设并不断迭代优化分行中间业务云平台(以下简称“云平台”)。几年来,不仅降低了软件开发成本,解决了服务共享问题,而且支持分行项目快速研发,敏捷响应市场需求,多次为分行抢得业务机会。
1.领域驱动设计辅助业务建模,避免重复开发。华夏银行以全局视角立足业务场景,以用户地图为主线,构建大类业务的事件风暴,借助领域驱动设计(DDD),对业务场景进行拆分、解耦、业务建模,抽象出各类业务的聚合实体。通过细分账户、存款、贷款、通知、AI辅助等领域模型,将每个领域看作一个聚合,围绕业务逻辑形成每个业务领域下的聚合根、实体、值对象和方法等,有效明确微服务边界,沉淀可复用的“积木式”服务能力组件,形成面向业务的公共微服务,方便研发团队敏捷开发。例如存款领域可将存款记录作为聚合根,存款种类、存款金额、存款时间、利率等作为值对象,存款成功、存款到期等作为领域事件,配合存款操作、计算利息、查询存款记录等方法进行拆分设计。
2.云原生技术栈支撑微服务架构演进。云平台应用架构如图所示。
基础平台是基于云原生技术的容器平台,作为容器运行管理环境,包括基础设施管理、容器管理、CI/CD工具、镜像管理、租户管理、应用管理、日志管理、监控工具等功能,可对基础设施、集群、容器、应用、镜像和租户提供不同层面精细化管理。
微服务治理平台负责提供微服务治理的相关组件,包括服务注册与发现、配置中心、服务认证与鉴权、服务链路跟踪、服务限流与熔断等功能,可视化对微服务进行管理和治理。
业务中台的公共基础服务涵盖互联网网关、数据服务和主流中间件,如缓存、文件系统、文件传输、MQ等。工具类服务包括报表工具、任务调度、流程引擎、搜索引擎等。业务类服务包括AI辅助、账户信息、客户信息、动账通知、文件传输服务、通知中心、综合支付、智能客服、电子凭证、认证鉴权等。
应用开发平台提供开发支持,包括业务流程开发、代码生成、通讯配置开发、数据设计、元数据管理等,通过持续集成/发布平台提高开发效率。
3.元数据模型驱动低代码开发,革新研发模式。领域模型在需求分析阶段须枚举所有属性、规则等,编码完成后若有改动,往往需要修改源码甚至重新设计表结构。而元数据模型(即领域模型动态配置),可根据具体用户的需求来配置相应的领域模型,无限动态扩展规则、流程、字段、功能、模型等,使得数据结构可以动态变化,具有灵活扩展属性的独特优势。业务建模时,将业务抽象为领域对象后,再抽象为元数据模型,通过灵活配置即可实现差异化业务管理。此方式可大大缩短软件开发周期,也向技术人员提出了更高的专业要求。
华夏银行开放400余个API,通过“积木式”公共组件快速组装业务场景,另外总行专业团队负责底层技术支持和运维工作,开发者只需专注业务流程和业务逻辑的开发实现,以解放开发者对底层平台的运维压力,集中力量打磨“开箱即用”的产品矩阵,助力分行业务快速开展。
1.多领域场景产品化,业务能力快速输出。首先统筹需求管理,聚焦资金监管、招投标、公积金、教育、烟草等领域,充分运用金融科技新技术,对同类业务场景进行产品化设计,重塑业务模式,将同类型业务整合提升。其次确定核心产品,并通过与核心产品相关的附加产品、服务和解决方案,自主研发“资金云监管”“云e投”“云e缴”等14大类产品以扩展产品线,覆盖公司、机构、个人、贸金、普惠等多个业务条线,协作形成住房、交通、政府多维生态,扩大生态系统。
2.柔性组织专业化,助力敏捷交付。为了发挥敏捷交付的优势,将产品矩阵的能力快速传导到营销团队,总分行成立业技融合专业团队,敏捷响应市场需要,支持分行业务拓展。业务侧实现同类业务需求共享,快速接入、统一管理及运营;技术侧增强云平台功能复用深度,项目开发周期缩短至以“天”为单位,开发效能大幅提升。业务人员和技术人员的专业背景可以保障跨部门协作时同频沟通,打破部门壁垒的柔性组织可以促进团队成员互帮、互信,相互成就的同时取长补短,共同成长。
云平台的技术底座是基于Kubernetes、Docker的容器平台,在改变应用的设计、开发、部署和运行模式的同时,也带来了新的安全要求和挑战,需要探索更有效的方法进行安全防控,保障业务连续性。
一是采用传统方法对业务应用各个微服务之间实现端到端全链路跟踪。通过暂停服务、服务降级、旁路故障等手段快速恢复服务,最大程度减少业务连续性影响。
二是建立完整的开发、运行安全运营体系,对平台进行全方位安全管控。在互联网安全层面,建设互联前置模块,统一各类业务互联网接入标准,部署安全监测、入侵告警、一键阻隔、攻击溯源等功能,实现安全集中管控。在开发层面,提供安全开发规范和代码安全自动扫描,实现应用级别和API级别的零信任服务调用认证和管理。在运行层面,提供容器镜像安全扫描、容器应用安全检测、集群安全漏洞检测、监控和处置,从镜像构建、镜像发布及镜像运行等全过程保证容器的安全,并对被攻击的容器、节点、租户实现隔离,避免污染其他集群节点,实现安全风险和安全攻击快速识别和隔离处置。在数据安全层面,采用统一的数据传输加密机制和数据脱敏、还原机制,避免数据被截取、篡改或者泄露用户的隐私信息。
三是通过升级安全技术框架,实现用户行为动态持续监测。系统提供用户、组织、权限等数据同步服务、数据供给服务、LDAP目录服务、Radius认证服务,分别面向应用、设备提供用户认证信息、用户基本信息、组织信息、应用信息、通信录等信息的同步与供给,实现身份统一。根据用户行为、接入网络、时间、位置、终端及应用认证等级等相关因素,通过智能算法与规则引擎结合的方式,实现风险识别,通过多重认证方式实现用户动态分级认证与身份可信。通过用户认证信息、用户行为终端信息、应用信息、业务系统/主机/网络设备/安全设备日志、运维审计日志、数据库审计日志进行综合审计与关联分析,生成多维审计融合的动态策略,实现对非法越权访问操作的识别与告警。
四是强化软件开发过程管理,减少软件自身缺陷。软件在开发过程中,会遇到诸多源码开发的安全问题,究其原因,其一是软件自身存在错误和缺陷引起的安全漏洞,其二是来自外部的攻击。良好的软件开发过程管理可以很好地减少软件自身缺陷,并有效抵御外部的攻击。可在DevOps的基础上引入DevSecOps,把安全能力无缝、柔和地嵌入现有开发流程体系,对提交的每段源码进行及时、动态的安全检测,令安全问题在开发过程中暴露,强化每一个开发人员的安全风险意识,降低投产后安全整改的各项成本。
未来,华夏银行将继续坚持“智慧金融、数字华夏”的战略愿景,以《华夏银行2021—2025年发展规划》为统领,从全局处着眼,在细节点发力,夯实金融科技实力,依靠科技进步的力量,探索开拓新场景,充分释放科技创新活力,持续推进我行高质量、特色化创新发展。
(栏目编辑:韩维蜜)