Files
2026-09-27 16:39:38 +08:00

4.8 KiB

文件资产管理

管理入口现为「代理管理」,用于独立创建 Kubeconfig、SSH、SOCKS5 和 sing-box 网络代理,再关联目标或网关;不提供通用文件列表与新建入口。本文说明保留的文件凭据和旧文件兼容能力,新流程见 网络代理管理。

文件资产不再属于项目:新建、编辑与就地上传没有「所属项目」字段,切换顶部项目不隐藏资产。环境信息及列表环境筛选仍保留;各处资产选择器按类型列出全部可用资产,不再按目标或连接资产的项目、环境隐藏选项。旧文件资产、备份和同步数据中的项目字段读取时忽略,文件、备注、ID 和引用保留,保存后不再写入项目,无需重新上传,也不做全库批量迁移。旧调用方提交文件资产的 project 会被忽略;GET /api/v1/assets?project=... 不再按项目过滤,environment 仍有效。连接资产的旧项目元数据及 API 则保留兼容,不能套用文件资产的清空规则。

就地上传、未保存提醒、元数据与引用跳转见配置操作与易用性。

在代理、目标或账号需要凭据的表单内选择或上传指定类型的文件。同一份文件可以被多个配置复用;重新上传并保存同一资产后,后续连接使用更新后的内容。

兼容文件编辑器仍保留六种资产类型;此前新建资产页面顶部直接展示全部六种资产类型,点击选择后填写环境、名称并上传文件,无需展开类型下拉框;窄屏下选项自动换行。默认仍为 Kubeconfig。切换类型会清除本次已选文件,名称、环境和备注保留;编辑已有资产时,类型选项不可修改。从其他表单就地创建资产时,继续使用入口指定的类型。此次调整仅改变类型选择控件和顺序,API、资产字段和已存文件不变,无数据迁移。类型检查通过;生产构建与浏览器验证限制见 测试记录。

资产类型 使用位置 文件内容
Kubeconfig 代理管理 → Kubeconfig 代理 → 上传/选择配置;兼容旧内联 K8s 自包含的 Kubernetes YAML/JSON 配置
SSH 私钥 SSH/SFTP 目标 → 账号 → 私钥资产 PEM 或 OpenSSH 私钥;加密私钥的口令仍在账号中设置
SSH 公钥 SSH/SFTP 网关 → 账号 → 客户端公钥资产 OpenSSH 公钥列表,可包含多行
SSH 用户证书 SSH/SFTP 目标 → 账号 → 用户证书资产 与所选私钥匹配的 OpenSSH 用户证书,由目标服务器信任的 CA 签发
TLS/CA 证书 目标 → 上游 TLS → 目标 CA 证书资产 PEM 证书或证书链,用于验证目标服务器
其他配置文件(文本) 仅兼容已存文件和 API UTF-8 文本配置,暂不直接参与协议连接

上传文件上限为 512 KiB,使用 UTF-8 编码。管理界面不回显文件内容;资产名称、类型和引用关系可用于识别文件。私钥、证书和其他文件内容均加密保存到数据库。普通配置导出、模板和历史差异隐藏文件内容,完整迁移使用加密备份。

更新已有文件时,从资源搜索或引用跳转打开「编辑资产」,重新上传并保存。未上传新文件时保留已存内容,「取消本次上传」仅撤销本次选择。更新前须停止引用该资产的网关;有引用的资产不能删除,需先在相应配置中解除或更换引用。通过资产历史可以查看变更和恢复旧版本,恢复同样受运行状态限制。

现有内联私钥、公钥和 CA 配置继续兼容;选择资产并保存后使用资产引用。不同类型的资产不能混用。SSH 用户证书需要同时选择匹配的私钥,单独的公钥文件不能用于登录上游;证书是否受信任、主体和有效期是否允许登录,仍由目标 SSH 服务验证。

Kubeconfig 代理及旧内联 Kubernetes 配置的 Kubeconfig 下拉均列出全部 Kubeconfig,不受项目或环境筛选影响,不需要「显示全部项目/环境」开关。SSH 私钥、证书等选择器也按类型使用全部范围。点击「刷新 Kubeconfig 列表」可获取其他页面新上传的文件,失败时保留原选择并提供重试。没有 Kubeconfig 类型资产时会提示就地创建;普通文件不会被当作 Kubeconfig。操作和验证边界见 Kubernetes。

上传为资产或内联保存的 Kubeconfig 必须内嵌证书、私钥和 Token,不接受外部文件路径或 exec/auth-provider 登录插件。显式配置的本地 Kubeconfig 路径仍属于可信部署配置,可继续使用其登录插件。管理服务启动所用的 TLS 文件、数据库主密钥和自动生成的网关主机密钥属于部署与运行材料,不是目标或账号的文件配置。