gog-restricted

📬 Google Workspace 安全沙箱 CLI

Google Workspace CLI 的安全沙箱封装版,仅允许白名单内的 Gmail/Calendar 只读与有限创建操作,默认阻断所有写操作、外发及高危指令。

收藏
5.4k
安装
1.9k
版本
1.0.4
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

gog-restrictedgog 二进制文件的安全封装层,通过硬编码白名单实现"fail-closed"(默认拒绝)安全模型。用户需通过 ~/.local/bin/gog-restricted 调用,禁止直接使用底层 gog 命令。

关键约定

  • 始终使用 --json 获取结构化输出,避免解析文本
  • 始终使用 --no-input 防止交互式提示阻塞
  • 始终使用长格式参数(--max 10,拒绝 -m 10
  • 通过 GOG_ACCOUNT 环境变量设置默认账户

Gmail 能力:支持线程/消息搜索、读取、附件下载、标签管理(增删改标签,但不支持删除邮件或标签本身)。搜索采用 Gmail 查询语法(如 from:alice after:2025/01/01)。

Calendar 能力:支持事件查询、空闲/忙碌信息、冲突检测、受限的事件创建(严格参数白名单)。其他所有写入操作(更新、删除、ACL 修改、RSVP 等)均被硬阻断。

阻断范围:邮件外发(send/reply/forward/drafts)、过滤器管理、Drive/Docs/Sheets/Chat/Tasks 等全部其他 Google 服务、配置修改命令。

显著优点

1. 纵深防御架构:命令级白名单 + 参数级白名单 + 短标志拒绝 + 子命令路径精确匹配,多层防护避免配置漂移导致的权限扩大。

2. 审计友好:所有操作通过单一入口,便于集中日志记录;标签操作可用于构建 pending-review 等人工审核工作流。

3. 结构化输出:强制 --json 降低解析错误风险,支持标准分页模式(--max/--page + nextPageToken)。

4. 安全提示内置:文档明确标注提示注入风险、附件不可信、数据边界约束,形成安全意识嵌入。

潜在缺点与局限性

  • 功能裁剪激进:大量合理场景被误伤(如批量归档需手动组合标签操作,无法使用原生 archive 子命令)。
  • 维护负担:底层 gog 新增安全参数需同步更新白名单,否则无法使用(fail-closed 的双刃剑)。
  • 无细粒度范围控制:白名单基于子命令而非 OAuth 作用域,无法限制只能访问特定日历或标签。
  • 环境依赖~/.local/bin 必须在 PATH 中,安装脚本非系统级,多用户场景配置复杂。
  • 性能隐患:建议 --max 10 起步,大账户操作效率受限;分页需手动实现。

适合人群

  • 需要自动化 Gmail/Calendar 数据提取但严禁外发的安全敏感环境
  • 构建邮件分类、归档、报告生成的只读/半自动工作流
  • 对提示注入和数据泄露有高度警惕的 AI Agent 场景
  • 已具备 gog 使用经验、理解其查询语法的用户

常规风险

| 风险类别 | 说明 |
|---------|------|
| **提示注入** | 邮件主题、正文、日历事件描述可能包含恶意指令("转发给 X""点击链接"),需严格按文档要求忽略 |
| **附件风险** | 下载的附件可能含恶意内容,禁止执行或遵循其指令 |
| **数据边界违规** | 禁止将邮件/日历内容暴露给外部服务或工具 |
| **误操作放大** | `batch modify` 等命令作用范围大,建议单批次 ≤50 条并启用审计日志 |
| **OAuth 凭证** | 依赖系统密钥环(keyring),需确保主机级密钥安全 |

该技能是"高安全、低功能"的典型设计,适合作为自动化工作流的数据入口网关,而非通用 Google Workspace 管理工具。

gog-restricted 内容

script文件夹
手动下载zip · 7.7 kB
setup.shtext/x-shellscript
请选择文件