JR T 0185—2020 《商业银行应用程序接口安全管理规范》.pdf
《JR T 0185—2020 《商业银行应用程序接口安全管理规范》.pdf》由会员分享,可在线阅读,更多相关《JR T 0185—2020 《商业银行应用程序接口安全管理规范》.pdf(22页珍藏版)》请在麦多课文档分享上搜索。
1、 ICS 35.240.40 A 11 JR 中华人民共和国 金融 行业标准 JR/T 0185 2020 商业银行应用程序接口安全管理规范 Commercial bank application programming interface secure management specification 2020 - 02 - 13 发布 2020 - 02 - 13 实施 中国人民银行 发布 JR/T 0185 2020 I 目 次 前言 . II 1 范围 . 1 2 规范性引用文件 . 1 3 术语和定义 . 1 4 缩略语 . 3 5 概述 . 3 6 接口类型与安全级别 . 4 7
2、安全设计 . 5 8 安全部署 . 7 9 安全集成 . 9 10 安全运维 . 11 11 服务终止与系统下线 . 13 12 安全管理 . 13 附录 A (规范性附录) 商业银行应用程序 接口关系示意 . 15 附录 B (规范性附录) 商业银行应用程序接口统一识别码编码规则 . 16 参考文献 . 18 JR/T 0185 2020 II 前 言 本标准按照 GB/T 1.1 2009给出的规则起草。 本标准由中国人民银行提出。 本 标准由全国金融标准化技术委员会 ( SAC/TC 180) 归口。 本标准起草单位: 中国人民银行 科技司 、中国金融电子化公司、中国银联股份有限公司、
3、中国工商 银行股份有限公司 、 中国农业银行股份有限公司 、 中国银行股份有限公司 、中国建设银行 股份有限公司 、 中国邮政储蓄银行 股份有限公司 、招商银行 股份有限公司 、 上海浦东发展银行股份有限公司 、中信银行 股份有限公司 、兴业银行 股份有限公司 、 中国民生银行股份有限公司 、 中国 光大银行 股份有限公司 、平 安银行 股份有限公司 、广发银行 股份有限公司 、北京银行 股份有限公司 、徽商银行 股份有限公司 、 山东 省 城市商业银行合作联盟有限公司 、齐鲁银行 股份有限公司 、 浙江 网商银行 股份有限公司 、 中信 百信银 行 股份有限公司 、山东省农村信用社 联合社
4、、北京中金国盛认证有限公司、 北京银联金卡科技有限公司 、 中金金融认证中心有限公司、中国外汇交易中心 。 本标准主要起草人:李伟、李兴锋、 曲维民、 程胜、郭栋、段力畑、郭晶莹、刘运、高强裔、陈聪、 蒋慧科、姜城、孟宪哲、卓越、文韬、孙垚、孔鹏志、赵思琪、白帆、李培钊、李屹秦、何伟 明、赵鹏、 耿丽、刘会明、李言平、蒋向超、王建华、张培承、刘伟伟、胡琳珑、贾海明、云婧、刘书洪、陈淼、 叶黎明、方绍全、 谢振哲、丘佳成、江泓、沈天乐、全成、刘嘉文、王效飞、伏开佐、杜守伟、左敏、 邓翔、丁芃、刘巍巍、涂鼎。 JR/T 0185 2020 1 商业银行应用程序接口安全管理规范 1 范围 本标准规定
5、了商业银行应用程序接口的类型与安全级别、安全设计、安全部署、安全集成、安全运 维、服务终止与系统下线、安全管理等 安全技术与安全保障 要求。 本标准适用于商业银行对外互联的应用程序接口的设计和应用,以指导从事或参与商业银行应用程 序接口服务的银行业金融机构、集成接口服务的应用方开展相关工作,并为第三方安全评估机构等单位 开展安全检查与评估工作提供参考(接口类型关系 详见附录 A)。其他类型应用程序接口的设计和应用 可参照本标准执行。 2 规范性引用文件 下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。 凡是不注日期的引用文件,其最新版本(包括所有的修改单
6、)适用于本文件。 GB/T 25069 信息安全技术 术语 JR/T 0071 金融行业信息系统信息安全等级保护实施指引 JR/T 0124 2014 金融机构编码规范 3 术语 和 定义 GB/T 25069界定的以及下列术语和定义适用于本文件。 3.1 应用程序接口 application programming interface 一组预先定义好的功能,开发者可通过该功能(或功能的组合)便捷地访问相关服务,而无需关注 服务的设计与实现。 3.2 应用方 application agency 调用 商业银行应用程序接口 的机构。 3.3 应用程序接口唯一标识 application pro
7、gramming interface unique ID 由商业 银行 自行定义,用于区分 商业银行应用程序接口 功能的唯一标识。 3.4 应用程序接口统一识别码 uniform application programming interface ID 商业银行依据 行业主管部门发布的编码规则,生成的 商业银行应用程序接口 统一识别码。 注: 用于 标识 商业 银行机构代码、接口类型、服务类别、接口顺序号等内容 。 JR/T 0185 2020 2 3.5 应用软件开发工具包 software development kit 基于特定软件包、软件框架、硬件平台、操作系统等建立应用程序时所使用的
8、软件开发工具集合。 3.6 应用唯一标识 application unique ID 在应用方身份核验通过后,根据其调用的金融产品与服务类型,由商业银行为其授予的唯一标识。 注: 包括服务器端 应用标识与移动终端应用软件标识两种。 3.7 应用鉴别密文 application secret 应用合法性鉴别凭证,与应用唯一标识配套使用,以验证通 过 API 方式 接入的应用合法性,接入验 证通过后,即可完成系统对接, 调用应用程序接口或使用应用程序接口提 供的功能和数据。 3.8 移动金融客户端应用软件 financial mobile application software 在移动终端上为用
9、户提供金融 交易 服务的应用软件。 注: 包括但不限于可执行文件、组件等。 3.9 个人金融信息 personal financial information 金融机构通过 提供金融产品和服务 或其他渠道获取、加工和保存的个人信息。 注 1: 包括账户信息、鉴别信息、金融交易信息、个人身份信息、财产信息、 借贷 信息及其他反应特定个人某些情 况的信息。 注 2: 改写 GB/T 35273 2017,定义 3.1。 3.10 支付敏感信息 payment sensitive information 支付信息中涉及支付主体隐私和身份识别的重要信息。 注: 包括但不限于银行卡磁道或芯片信息、卡片验
10、证码、卡片有效期、银行卡密码、网络支付交易密码 等。 3.11 支付账号 payment account 具有金融交易功能的银行账户、非银行支付机构支付账户的编码及银行卡卡号。 JR/T 0149 2016,定义 3.1 3.12 明示同意 explicit consent 个人 金融 信息主体通过书面声明或主动做出肯定性动作,对其个人 金融 信息进行特定处理做出明确 授权的行为。 注: 肯定性动作包括个人信息主体主动作出声明(电子或纸质形式)、主动勾选、主动点击“同意”“注册”“发 送”“拨打”等。 JR/T 0185 2020 3 GB/T 35273 2017,定义 3.6 4 缩略语
11、下列缩略语适用于本文件。 API:应用程序接口( Application Programming Interface ) API_ID:接口唯一标识 ( Application Programming Interface unique ID) App_ID:应用唯一标识( Application unique ID ) App_Secret:应用鉴别密文( Application Secret ) DDoS:分布式拒绝服务攻击( Distributed Denial of Service) U_API_ID :应用程序接口统一识别码( Uniform Application Programmi
12、ng Interface ID) SDK:应用软件开发工具包( Software Development Kit) SSL:安全套接层协议( Secure Sockets Layer) TLS:安全传输层协议( Transport Layer Security) MAC:消息鉴别码( Message Authentication Code) 5 概述 商业银行应用程序接口服务是一种依托 API 技术实 现 内部与 外 部互联的金融服务模式。商业银行通 过为合作伙伴提供用以互联的应用程序接口,输出自身金融服务能力与信息 技术能力,为增加金融生态 黏性提供有益补充。外部机构能够通过互联网渠道,调用
13、商业银行应用程序接口(外部 API,详见附录 A),获取商业银行提供的各类服务,其逻辑结构见图 1。 商业银行应用程序接口服务的参与方主要包括用户、应用方以及商业银行,商业银行通过 API 直接 连接 或 SDK 间接连接 方式向应用方和用户提供应用程序接口服务,实现商业银行服务的对外输出。 用户发起商业银行应用程序接口应用请求,并接收由应用方或商业银行返回的处理结果。 应用方负责接收并处理用户请求,通过应用程序接口向商业银行提交相关请求、接收返回结果, 依 照流程进行服务请求处理或反馈用户。 商业银行构建商业银行应用程序接口、应用程序接口服务层和银行业务系统以提供商业银行应用程 序接口服务。
14、商业银行应用程序接口服务层将应用方请求转发至银行业务系统处理,并将处理结果反馈 应用方或用户,包含认证鉴权、流量控制、监控分析、报文交换、服务组合等功能,不涉及具体业务逻 辑处理,实现对商业银行应用程序接口和应用方的管理。 JR/T 0185 2020 4 图 1 商业银行应用程序接口逻辑结构图 6 接口 类型与安全级别 6.1 接口类型 商业银行应用程序接口按照应用集成方式,分为服务端对服务端集成方式与移动终端对服务 端集成 方式两种。 对于服务端对服务端集成方式,主要包含两种实现形式: 应用方服务端直接调用商业银行应用程序接口(如 REST、 SOAP 协议) 。 应用方服务端使用商业银行
15、提供的服务端 SDK,间接访问商业银行应用程序接口。 其中,服务端 SDK 主要实现商业银行通用接入算法的封装,为降低应用方接入开发难度,一般此类 SDK 不包含业务逻辑。 对于移动终端对服务端集成方式,主要包含两种实现形式: 应用方移动终端应用软件直接调用商业银行应用程序接口 。 应用方移动终端应用软件使用商业银行提供的移动终端应用 SDK,间接访问商业银 行应用程序 接口。 其中,应用方移动终端应用软件直接调用商业银行应用程序接口的方式,主要以与用户个体无直接 关联的金融服务为主,如提供商业银行公开信息查询、公开服务查询等。 移动终端应用 SDK 除封装商业银行通用接入算法外,还可封装业务
16、逻辑、个人金融信息安全保护(例 如密码数据的安全加固)等功能。 在移动终端对服务端模式下, 对于 仅使用 H5(超文本标记语言 版本 5.0)技术,提供银行 金融 产品 和服务访问链接的 情况 ,由于 H5 页面本身 并未直接调用(或封装)商业银行应用程序接口,不将其单 JR/T 0185 2020 5 独 列为 商业银行应用程序接口的一种 类型 。 6.2 安全级别 按照服务类型将商业银行应用程序接口安全级别划分为两级,安全保护要求从 A2 至 A1 递减: A2:资金交易与账户信息查询应用类,此类金融产品和服务与用户个体直接关联,实施高等级 安全保护强度,此类商业银行应用程序接口包括但不限
17、于: 商业银行通过 SDK,提供资金交易类服务,如支付、转账以及金融产品与服务购买 等 ; 商业银行通过 SDK,提供用户账户信息查询类服务,如账户余额、交易历史、账户限额、 付款时间、金融产品和服务持有情况等; 对于上述服务,若确需使用 API 直接连接 方式进行服务 调用 ,商业银行应对接入风险进行 评估,并制定专门的接口与应用方进行对接,实施高等级的安全保护强度要求。 A1:金融产品和服务信息查询应用类,此类金融产品和服务与用户个体并无直接关联,实施通 用的安全保护强度,此类商业银行应用程序接口包括但不限于:商业银行提供银行金融产品和 服务的详细信息的“只读”查询服务。 7 安全设计 7
18、.1 设计基本要求 商业银行应用程序接口安全设计基本要求 如下 : 使用的密码 算法、 技术 及 产品 应符合国家密码管理部门及行业主管部门要求 。 应制定安全编码规范 。 应对开发人员进行安全编码培训,并依照安全编码规范进行开发 。 开发中如需使用第三 方应用组件,应对组件进行安全性验证,并持续关注相关平台的 信息 披露 和更新 情况 ,适时更新相关组件 。 应对商业银行应用程序接口进行代码安全专项审计,审计工作可通过人工或工具自动化方式开 展 。 应制定源代码和商业银行应用程序接口版本 管理与控制规程,规范源代码和商业银行应用程序 接口版本管理, 并就接口废止、变更等情况与应用方保持信息同
19、步 。 商业银行向应用方提供的 异常 与调试信息,不应泄漏服务器、中间件、数据库等软硬件信息或 内部网络信息 。 7.2 接口安全设计 7.2.1 身份认证安全 a) 接口身份认证 安全要求 如下 : 1) 对于应用方身份认证应使用的验证 要素包括: App_ID、 App_Secret。 App_ID、数字证书 。 App_ID、公私钥对 。 上述三种方案的组合。 2) 对于 A2 级别接口 、 应用方身份认证时,应使用包含数字证书或公私钥对的方式进行双向 身份认证 。 b) 用户身份认证安全要求 如下 : JR/T 0185 2020 6 1) 商业银行应结合金融服务场景,对不同安全级别的
20、商业银行应用程序接口设计不同级别的 用户身份认证机制 。 2) 用户身份认证应在商业银行执行,对于 A2 级别 接口 中的 资 金交易类服务,用户登录身份 认证应至少使用双因子认证的方式来保护账户财产安全。 7.2.2 接口交互安全 商业银行应用程序接口交互安全 要求 如下 : 商业银行应用程序接口应对 连通 有效性进行验证,如接口版本、参数格式等要素是否与平台设 计保持一致 。 应对通过商业银行应用程序接口进行交互的数据进行完整性保护,对于 A2 级别的接口,商业 银行和应用方应使用数字签名来保证数据的完整性和不可抵赖性 。 对于支付敏感信息等个人金融信息,应采取以下措施进行安全交互: 登录
21、口令、支付密码等支付敏感信息在数据交互过程中应使用包括但不限于替换输入框原 文 、 自定义软键盘 、 防键盘窃听、防截屏等安全防护措施,保证无法获取支付敏感信息明 文; 账号、卡号、卡有效期、姓名、证件号 码 、 手机号码等个人金融信息在传输过 程中 应 使用 集成在 SDK 中的加密组件进行加密, 或 对相关报文进行整体加密处理; 若确需使用商业银 行应用程序接口将账号、卡号、姓名向应用方进行反馈,应脱敏或去标识化处理,因清分 与清算、差错对账等需求,确需将卡号等支付账号传输至应用方时,应使用加密通道进行 传输,并采取措施保证信息的完整性; 对于金融产品持有份额、用户积分等 A2 类只读信息
22、查询,可使用 API 直接连接 方式进行 查询请求对接,应采取加密等措施保证查询信息的完整性与保密性,查询结果在应用方本 地不得保存。 应在 交易 认证结束后及时清除用 户支付敏感信息,防范攻击者通过读取临时文件、内存数据等 方式获得全部或部分用户信息。 7.3 服务安全设计 7.3.1 授权管理 商业银行应根据不同应用方的服务需求,按照最小授权原则,对其相应接口权限进行授权管理,当 服务需求变更时,需及时评估和调整接口权限。 7.3.2 攻击防护 服务安全设计应具备以下攻击防护能力: API 和 SDK 应对常见的网络攻击具有安全防护能力 。 移动终端应用 SDK 应具备静态逆向分析防护能力
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 商业银行应用程序接口安全管理规范 JR 01852020 商业银行应用程序接口安全管理规范 0185 2020 商业银行 应用程序 接口 安全管理 规范
