应用发布规范
本文档详细介绍微应用发布的完整流程、安全审查规范要求以及相关注意事项,帮助开发者顺利完成应用上架与审核。
发布前准备
1. 应用自测与验证
在提交应用发布申请之前,开发者必须完成以下自测工作:
- 功能完整性测试:确保所有功能模块正常运行,无严重异常或阻塞性 Bug
- 健康检查与启动测试:后端必须支持并正确响应
ping方法(返回"pong"),确保客户端在拉起守护进程时能通过探活检测 - 平台与架构兼容性:基于 Go 编写的后端建议通过交叉编译(
make build-linux)验证二进制文件在纯净 Linux 环境下的执行兼容性 - 资源与内存占用:服务退出时需确保清理临时文件与 Unix Socket(
tmp/app.sock),无内存泄露与僵尸进程
2. 代码审计与规范检查
- 遵循微应用工程分层规范(参考 项目工程规范)
- 必须清理本地测试残留、测试账号密钥及临时调试日志
- 依赖版本固定,严禁引入未审计或带有已知安全漏洞的三方依赖
🔒 核心安全规范(严格代码审计项)
极目桌面高度重视用户服务器的数据与系统安全,所有提交发布的微应用均需经过官方安全团队的严格代码审计。请务必遵守以下底线要求:
1. 外部网络接口与外联限制
- 严禁私自调用线上/外部接口:微应用设计初衷是在用户本地服务器环境运行并直接管理服务器。除极目桌面原生提供的客户端能力外,默认禁止微应用向第三方外部服务器、未报备域名发起私网/公网网络请求。
- 特殊业务场景例外(需报备说明):
- 若应用属于 AI 大模型服务类应用(必须调用外部 AI 模型供应商 API),或需要实时抓取官方开源镜像元数据等合理业务场景,可以在代码中调用外部线上接口。
- 必须履行的义务:在提交发版申请时,必须在「版本说明」或应用详情中如实、明确说明调用外部接口的原因、服务提供商及传输的数据类型,供审核团队定向审计。
- 严禁收集、窃取用户数据:绝对禁止私自上传、收集用户服务器敏感信息(包括但不限于:服务器公私网 IP、SSH 密钥、登录凭据、命令执行历史、业务数据库数据、个人隐私数据等)。一经发现,立即封禁开发者账号并下架全线应用。
2. 前端安全与防注入规范
- 严防 XSS 攻击:
- 前端渲染用户输入、日志内容、系统文件内容或执行结果时,必须进行合法的转义过滤,严禁直接使用
v-html、innerHTML盲目渲染未过滤的富文本内容。 - 严禁通过动态拼接字符串引入外部
<script>脚本,严禁使用eval()、new Function()执行动态代码。
- 前端渲染用户输入、日志内容、系统文件内容或执行结果时,必须进行合法的转义过滤,严禁直接使用
- 防止命令注入(Command Injection):
- 后端执行系统底层命令(如使用 Go 的
exec.Command)时,禁止使用危险的 shell 字符串拼接执行(如避免直接调用sh -c "command " + userInput),必须对入参进行严格的白名单校验与结构化参数传参。
- 后端执行系统底层命令(如使用 Go 的
- 路径穿透防御:
- 操作文件时必须使用模板提供的
pkg/files工具包或严格检查目标路径是否属于允许目录(如/.__gmssh/下),防止../../路径穿越读取或覆写服务器关键系统文件(如/etc/passwd、~/.ssh/)。
- 操作文件时必须使用模板提供的
发布流程
1. 提交发布申请
- 登录 开发者中心控制台
- 进入左侧导航的「应用管理」页面
- 在应用列表中找到目标微应用,点击「发布」按钮
- 填写版本号与详细的发版说明,确认关联的 Git Commit 后提交审核
- 等待官方安全与体验团队进行自动化审计与人工复核
2. 完善应用详情与展示
在应用正式上架前,需确保应用详情信息的专业与完整:
基础信息
- 应用名称:简洁、规范、具有辨识度,准确描述应用用途
- 应用图标 (Logo):清晰的矢量/高清图,建议 256×256 以上无底色 PNG
- 版本号:严格遵循语义化版本命名(如
1.0.0、1.0.1) - 应用描述:提供清晰的功能介绍、适用场景与使用前提
平台与 CPU 架构设置
极目桌面后端已全面升级为 Go 架构:
- 建议优先提供主流架构支持:x86_64 (amd64) 与 AArch64 (arm64)
- 后端应静态编译为单可执行文件,避免依赖目标服务器安装复杂的运行时解释器环境
宣传与截图
- 上传高清晰度的实际功能运行截图(支持中/英文两套,每套最多 5 张),让用户在应用中心一眼了解核心特性。
审核流程与驳回处理
审核标准清单
| 评估维度 | 审核核心关注点 |
|---|---|
| 安全合规(一票否决) | 无 XSS / 命令注入、无非法外网接口调用、绝不收集用户隐私与服务器凭据、安全路径校验 |
| 架构规范 | Go 后端响应 ping 健康检查、Socket 位于 tmp/app.sock、持久化数据写入数据隔离目录 |
| 功能体验 | 功能自洽可用,无白屏、阻塞性报错,界面适配浅色/深色主题 |
| 文档与信息 | 应用描述真实准确,若包含外部必要服务(如 AI 接口)已如实附带申请说明 |
审核结果与发布
- 审核通过:系统自动完成应用包签名并在极目桌面「应用中心」公开发布,所有用户均可直接搜索并一键安装。
- 审核驳回:若存在安全漏洞、调用未报备外网接口或功能严重异常,审核团队会在控制台详细注明驳回原因与修改建议,开发者修复后重新推送代码并提交审核即可。
