对象存储
在 Sigil 里直接浏览和管理 S3 兼容对象存储——不用开控制台,也不用把 Access Key 贴进第三方客户端。
它要解决的问题
对象存储的 Access Key 权限很大,但日常要用它的场景又很碎:传个安装包、看看某个文件在不在、给同事发个临时下载链接。
为此装一个第三方客户端,就意味着把密钥交给它。Sigil 的做法是:凭据存在金库里,浏览界面就在应用内,密钥不出本机。
支持哪些
凭据类型是 S3 兼容,界面提供的预设:
| 预设 | URL 风格 |
|---|---|
| Cloudflare R2 | path-style |
| MinIO | path-style |
| 腾讯云 COS | path-style |
| 阿里云 OSS | virtual-hosted(必须) |
| 自定义 / AWS S3 | 按需选 |
Backblaze B2 等其他 S3 兼容服务走「自定义」也能用。
凭据字段:Endpoint、Access Key ID、Secret Access Key、Region、URL 风格、默认 bucket(可选)、公开访问基址(可选)。
编辑凭据时密钥不回填
全部留空 = 保持原值。只改 Region 或默认 bucket 时,不必重新输一遍密钥。
浏览
顶栏一个 bucket 输入框(留空用凭据的默认 bucket),下面是面包屑导航,逐层进目录。底部显示「N 个文件夹 · N 个文件」。
- 两种视图:列表 / 方格。方格视图不支持多选
- 排序:按名称 / 大小 / 修改时间
- 搜索:只过滤当前目录内的名称,不是全桶搜索
上传与下载
两条上传路径:
| 方式 | 限制 |
|---|---|
| 「上传」按钮 | 可多选;超过 64MB 自动分片,无大小上限 |
| 拖拽到列表区 | 单文件 25MB 以内;更大的会提示改用按钮走分片 |
下载单个文件时选本地保存路径,走流式传输并支持断点续传,完成后提示「已下载 {大小} → {路径}」。
管理
| 操作 | 说明 |
|---|---|
| 重命名 | 同目录改名,名称不能含 / |
| 复制到… | 可跨 bucket,填目标 bucket 和对象路径 |
| 新建文件夹 | 在当前前缀下创建 |
| 删除 | 二次确认,不可恢复 |
| 删除文件夹 | 递归删该前缀下全部对象,完成后报删了多少个 |
| 批量删除 | 列表视图勾选多项,顶部显示「已选 N 项」 |
重命名底层是服务端复制后删源——复制成功才删源,中途出错不会两头落空。
分享直链
两种:
签名直链——预签名 URL,第三方无需凭据即可下载。有效期三档:1 小时 / 24 小时 / 7 天(7 天是签名算法的上限)。点一下复制到剪贴板。
永久直链——需要凭据配了「公开访问基址」且 bucket 是公有读。没配基址时会明确报错,而不是给你一个打不开的链接。
AI 能做什么
| 能力 | 需审批 | 说明 |
|---|---|---|
r2_object_list / r2_object_head | 否 | 列对象、查元数据(也用来判断对象存不存在) |
r2_object_upload | 否 | 上传,>64MB 自动分片。拒绝上传 .pem / .key / id_rsa / .env 等敏感文件 |
r2_object_download | 否 | 下载到本地 |
r2_object_copy | 否 | 服务端复制,不经过 Sigil 中转 |
r2_object_delete | 是 | 不可恢复,需确认 |
r2_presign_get / r2_presign_put | 否 | 生成限时直链,默认 1 小时、上限 7 天 |
r2_bucket_list | 否 | 列 bucket。仅「对象读写」权限的 R2 Token 通常无此权限,属正常 |
