功能扩展
要求
ONES |
---|
v6.18.0 |
架构概述
ONES 开放平台基于插件化/应用化机制 实现核心业务的弹性扩展能力,通过将关键业务流程抽象为标准化功能扩展点 ,结合解耦的契约接口设计,支持功能模块的动态加载与热插拔。第三方开发者可通过无侵入式开发(无需修改系统源码)灵活扩展系统功能,实现业务场景的定制增强。
核心概念
功能扩展点(Extension Point)
定义标准化业务流程的接口规范与抽象逻辑,包含两部分:
- 后端接口函数(funcs):定义扩展点的业务逻辑执行接口。
- 前端插槽(slots):定义扩展点的前端页面渲染容器。
信息
下文中有关“功能扩展点”简称为“功能扩展”,特此说明
功能扩展点提供者(Extension Point Provider)
实现功能扩展点的具体逻辑。功能扩展点提供者可以是以下几种对接方式:
- 内置实现:ONES 原生提供的默认逻辑实现,比如 两步验证中,ONES默认实现了TOTP 验证器。
- 插件体系:通过插件形式扩展的提供者,如 两步验证中,可通过插件实现出手机短信验证器。
- 应用体系(规划中)
- 第三方 API 注册(规划中)
信息
下文中有关“功能扩展点提供者”简称为“功能扩展实现”,特此说明
核心流程:
实现动态加载
当用户触发特定业务流程时,系统基于当前上下文匹配并加载对应的扩展实现。
示例:MFA 登录验证流程(部分)
- 用户进入 MFA 校验页面,系统加载当前可用的验证方式,如 TOTP 验证器(ONES 提供)、手机短信验证器(插件提供)。
- 用户选择「手机短信验证」,系统调用插件提供的插槽(slots)渲染短信验证页面。
- 用户提交验证码后,系统调用插件实现的后端接口函数(funcs)完成校验。
功能扩展分类
- 组织级别:按组织/租户维度进行功能扩展,在组织范围内生效。
- 实例级别:按ONES实例维度进行功能扩展,在整个ONES实例范围内生效。