宁波银行金融科技部总经理 张热弯
2021年10月,人民银行等五部门发布的《关于规范金融业开源技术应用与发展的意见》强调,要规范金融机构合理应用开源技术,提高金融机构应用水平和自主可控能力,促进开源技术健康可持续发展。在全球数字经济的浪潮下,开源技术已逐步成为商业银行数字化转型的重要技术支撑。为提高开源技术应用水平,增强自主可控能力,防范使用开源技术的安全风险,助力重点产品快速迭代,宁波银行在信息技术管理总体框架下,参照信息技术生命周期管理理论,逐步形成并完善了开源技术管理体系。
一、商业银行开源技术应用的发展动态
开源项目最初始于操作系统软件,之后逐步发展到数据库、中间件,并逐渐向应用领域延展,近年来推动了云计算、大数据、人工智能、区块链、物联网等新兴技术领域的创新。全球最大的开源代码托管平台GitHub
2022年度报告显示,全球新增代码仓库超过8570万个,托管代码仓库总量超过3.5亿个。当前,开源技术已成为推动新一代信息技术发展的基础动力,尤其在推动信息技术应用创新和数字化转型方面效果显著,已成为商业银行重构技术栈的重要力量和源泉,为金融科技发展创新注入了巨大活力。
1.商业银行开源技术应用领域更广泛
北京金融科技产业联盟发布的《银行业开源生态发展报告》指出,商业银行在大数据、云计算、人工智能、区块链、数据库等领域广泛开展开源技术研究与应用。以云计算为例,商业银行通过开源技术构建云平台、云服务、云安全等,有效降低了建设成本和风险,提升了应用灵活性和可扩展性。
2.商业银行应用开源响应需求更快速
开源技术因其易获得、可修改、更灵活等特点,大幅提高了商业银行开发效率和迭代速度,能够更好地支撑业务快速迭代和灵活扩展,满足客户的多样化和个性化需求。
3.商业银行和开源服务组织合作更紧密
随着开源技术的广泛应用,商业银行开源技术专业服务需求随之扩大,商业银行和开源技术服务组织之间的合作将更加紧密。
二、商业银行开源技术风险分析
开源技术在给商业银行和金融客户带来便利的同时,也带来了安全漏洞、法律合规、技术运维、供应链等诸多风险。
1.安全漏洞风险
商业银行在使用开源技术时,如果不能准确掌握并及时修复开源技术的安全漏洞,可能使漏洞风险流入生产环节,从而成为被渗透攻击的对象,给资金安全、服务质量、客户留存等带来巨大风险和不良影响。
2.法律合规风险
商业银行在引入开源技术时面临的法律合规风险主要包括著作权侵权风险、商标侵权风险、专利侵权风险、商业秘密泄露风险等。商业银行的合规经营对于保障银行自身的稳健发展和维护金融市场秩序至关重要,如果未正确理解或遵守开源许可证要求,则可能被认定为违反了开源项目的许可条款,这可能导致品牌声誉受损,进而对银行业务和市场竞争力产生负面影响。
3.技术运维风险
相比传统商用软件,开源软件缺少完善的运维保障支持,通常需要第三方厂商提供维保服务,而第三方厂商的技术能力相对有限。商业银行作为开源技术的应用方,对开源社区的参与度偏低,很难获得开源社区的专业服务,而自身技术支持能力的建设又不可能一蹴而就。
4.供应链风险
开源技术的广泛应用使得商业银行软件供应链的开源化趋势越来越明显,随之而来的供应链风险也愈发突出。例如,RedHat公司根据自身发展及盈利需要,宣布于2021年底终止其CentOS
8开源版本的维护工作,这意味着用户将无法继续获得官方升级和补丁,一旦发现新的安全漏洞,很容易被恶意攻击者利用,大量服务器上承载的用户关键业务系统将面临严重的安全隐患,数据安全将无法得到保障。
三、宁波银行开源技术管理体系实践
为防范风险,加强技术支撑,助力财资大管家、外汇金管家等重点产品快速迭代和双基工程启动,深化金融科技经营,宁波银行通过制定建设目标、明确总体思路、优化管理策略、完善流程制度、建立测评模型、搭建管理平台,构建了开源技术管理体系(如图1所示)。实践证明,该体系能够有效降低开源技术使用风险,全面提升开源技术应用水平。
图1 宁波银行开源技术管理体系
制定开源技术管理体系的建设目标。宁波银行通过优化开源技术使用策略,构建开源技术管理机制,实现对开源技术的统一登记和纳管,有效加强对开源技术的掌握,防范开源技术风险;通过开源技术管理体系建设,提升研发效率,持续推动产品创新、功能优化、体验提升、服务升级,打造业务比较优势,为客户提供高效率、全方位、综合化的金融服务。
明确开源技术管理体系的总体思路。宁波银行开源技术管理体系总体思路主要包括两个方面:一是开展开源治理成熟度评估工作,通过专业评估方法梳理开源技术使用中的安全漏洞、法律合规、技术运维、供应链等风险,采取优化管理策略、改进流程制度、建立测评模型、搭建管理平台等举措,完善开源技术管理体系,防范开源技术风险;二是将开源技术应用作为提高技术自主可控能力的重要手段,通过加强开源技术研究储备,掌握开源技术核心代码,以应用促提升,依托业务场景,促进开源技术迭代升级,加强人才队伍建设,构建核心开源产品的自主掌控能力。
优化开源技术管理体系的管理策略。根据开源技术应用场景,宁波银行制定了开源技术分类分级管理策略:一是对于对企业IT应用架构、技术架构有重大影响的基础类、重要框架类开源技术,通过采购的方式来获得商业版本或服务。一方面通过强化自身能力,提升开源技术掌握度;另一方面通过专业厂商服务,协助开展疑难问题应急处置。二是针对其他一般应用系统使用的开源技术,进行运维部门统一纳管。宁波银行明确了各项开源技术的运维管理部门,负责开源技术的动态跟踪、漏洞分析和缺陷修复,确保应用系统中使用的开源技术问题能够在第一时间得到响应和处理。
完善开源技术管理体系的流程制度。宁波银行依托技术管理委员会,从全局出发统筹和评审开源技术应用和管理工作,将开源技术管理要求嵌入信息系统项目建设制度和流程,发布了多项开源相关制度文件和操作规程;明确各部门职责,建立从发现到整改的全链条开源技术管理体系。
建立开源技术引入的统一测评模型。针对不同类型的开源技术,如操作系统、数据库、分布式资源管理、中间件类、容器等,宁波银行遵循“技术成熟、可靠优先、兼顾性能、社区活跃”的原则,建立统一的开源技术通用度量准入测评模型和对应的功能评估准入测评模型。技术成熟度主要依据装机量、业务口碑和公开缺陷数、漏洞数来评判;可靠性方面,通过设计操作系统、CPU、内存、磁盘、网络、软件、文件系统等故障,在常规场景、异常场景、性能场景等多种场景中进行验证;社区活跃度方面,主要依据开源参与人数、网络搜索热度、缺陷修复速度等来评判。
完善开源扫描工具,构建开源技术管理平台。宁波银行通过开源技术扫描工具将开源技术检测平滑嵌入研发流水线。在开发阶段,自动从可信渠道下载开源软件和开源组件;在测试阶段,自动建立使用视图并识别信息系统使用的开源技术;在投产阶段,自动根据开源技术扫描报告、漏洞情况判定是否进行制品晋级,在制品晋级后方可用于投产。与此同时,依托开源技术管理平台,宁波银行实现了开源技术的全线上全流程管理;依托开源扫描工具和开源技术管理平台,实现了开源技术精细化管理,大幅提高了工作效率,全面覆盖各类研发流程。
基于开源技术管理体系,宁波银行完成了企业级开源治理和开源应用能力建设,形成了从开源技术引入到开源技术退出全生命周期的开源技术管理体系实践方案。在实践中,宁波银行通过合理规范地应用开源技术,持续提升数字化运营能力,为业务可持续发展和金融科技银行愿景的实现提供了有力支撑。
宁波银行遵循“安全可控、合规使用、问题导向、开放创新”四大基本原则,将开源技术应用纳入全行金融科技发展规划,不断建立健全开源技术管理体系。下阶段,宁波银行将及时跟进并落实监管机构开源相关安全合规要求,继续关注国内外开源技术发展趋势,学习借鉴先进同业开源技术管理经验,进一步提升开源技术的管理水平。
|