# 12-研发云平台互联互通 > 研发云平台与外部系统的集成规范 --- ## 一、互联互通方式(5 类) | 方式 | 说明 | |------|------| | **系统接入** | 外部平台与研发云集成,单点登录、界面跳转/集成 | | **能力开放** | 通过 OpenAPI 及消息事件订阅向外部开放平台能力 | | **数据开放** | 提供研发效能类数据(系统级/组织级) | | **数据接入** | 外部平台研发过程数据同步到研发云 | | **服务接入** | 脚手架等服务接入研发云 | --- ## 二、系统接入 ### 认证方式(三种) 1. **天翼认证** — 按天翼认证系统要求 2. **云认证** — 按云认证系统要求 3. **研发云认证** — 通过 OIDC/OAuth2.0 协议 ### 集成方式 - **界面跳转**:研发云菜单点击跳转 - **界面集成**:iframe 嵌入,使用 `postMessage` 通信 ```javascript window.postMessage({ valueType: "xxx", // 双方约定事件名称 data: {}, // 具体参数 }, "*"); ``` ### 系统接入安全要求 - 系统接入须提交安全扫描、漏洞扫描、渗透测试报告 - 集成页面须使用 HTTPS + 公网可信证书 - CSP 头严格限制 iframe 来源 - 链接跳转实施白名单机制 --- ## 三、OpenAPI 能力开放 ### 鉴权方式 | 方式 | 适用场景 | |------|----------| | **平台级鉴权** | 使用"外部用户账号",SHA256 + Base64 签名 | | **用户级鉴权** | OAuth 获取 auth_token,通过 `id_token` 传递 | ### 已开放的能力模块 用户管理、安全中心、版本中心、部署中心、测试中心、代码库、流水线、敏捷管理、文档空间、问需管理、我的工作、Wiki、自研工作项、数据中台、组件广场、Codefree、制品中心、资源中心 ### 平台级鉴权格式 ``` Header: srdcloud-user-account: <外部账号> time-stamp: <时间戳> authorization: SHA256({account},{timestamp},{secret}) 再 Base64 ``` --- ## 四、数据开放与接入 ### 数据开放范围 - 基本对象维度信息(组织、项目、用户) - 研发过程效能度量明细数据 - 效能度量汇总模型数据 - 研发成果数据(专利等) - **不涉及**源代码文件、制品内容 ### 数据订阅方式 | 方式 | 说明 | |------|------| | DCOOS(云桥) | 推送至 DCOOS 地址 | | HTTPS/HTTP | 仅组织级,推荐 HTTPS | | Kafka | 需 1124VPN,JDK 11+ | ### 数据接入方式 - 通过消息中心(CloudEvents 格式) - 通过其他中心(如测试中心,按业务要求) --- ## 五、消息事件订阅 ### 已开放事件 | 中心 | 事件 | |------|------| | 用户中心 | 账号开通、密码重置 | | 代码中心 | 代码库变更 | | 集成中心(流水线) | 配置变更、任务执行状态、错误日志 | | 安全中心 | Sonar 扫描结果 | | 部署中心 | 资源部署对象删除事件 | --- ## 六、网络对接方案 | 方案 | 适用条件 | |------|----------| | CN2-1124 直通 | 主机可直接访问 CN2-1124 VPN | | CN2-1124 代理 | 有服务器同时接入 CN2-1124 和本地内网 | | SASE 打通 | 不能直接访问 CN2-1124,但可访问公网 | --- ## 七、安全运营 - 重大安全事件:边处置、边报告 - 重大安全风险:及时排查、整改、反馈 - 日志保留 ≥ 6 个月 - **【禁止】** 研发云与接入系统间批量同步用户信息、项目信息、用户角色和权限