问题域/PD-519

Electron IPC 安全桥接

Electron IPC Security Bridge

Electron 渲染进程与主进程的安全通信,contextBridge 隔离与 API 命名空间设计

子问题

1.contextBridge API 命名空间设计

2.文件系统操作 IPC 封装

3.图片存储本地协议处理

4.缓存管理与数据导入导出

5.自定义特权协议注册与 MIME 类型映射

6.IPC 数据迁移的回滚与幂等性保证

7.多存储源(fs/localStorage/IndexedDB)自动降级与数据迁移

各项目的解法1 solutions

Signals

横向对比

维度moyin-creator
桥接架构contextBridge 四命名空间(imageStorage/fileStorage/storageManager/electronAPI)
IPC 模式invoke/handle 请求-响应,16 个预定义 channel
协议设计自定义 local-image:// 特权协议,支持 Fetch API + CSP bypass
安全措施安全文件名生成 + 路径冲突校验 + 零字节校验 + 导入回滚
降级策略isElectron() 检测,三源降级(fs → localStorage → IndexedDB)
类型安全declare global Window 接口扩展,渲染侧完整类型推导

最佳实践

1.渲染进程无直接 fs 访问

2.所有文件操作通过 IPC invoke

3.按功能划分 API 命名空间

4.安全文件名生成(时间戳+随机串)防路径注入

5.导入操作先备份后执行,失败自动回滚

6.路径冲突校验防止目录循环嵌套