赋予编程代理 shell 访问权限感觉太疯狂了。大家是如何处理机密的?
摘要
作者对授予编程代理 shell 访问权限表示担忧,指出它们可以读取 .env、凭据等敏感文件,并希望在让代理接触真实仓库之前,向社区请教实用的机密处理模式。
我一直反复遇到这个问题。如果代理拥有 shell 访问权限,它就能读取普通开发者能读取的所有内容:.env、配置文件、令牌、本地凭据、包脚本、日志等等。即使它没有恶意“泄露”这些信息,也可能把它们粘贴到对话记录中,修改会输出这些信息的脚本,运行 env,检查进程状态,或者意外留下谁都不想要的痕迹。旧的开发环境假设键盘前坐着的是人类。这个假设现在看起来已经站不住脚了。那么,合理的模式是什么?本地保险库?短期凭据?命令审批?不可变工作树?broker/proxy 模型(代理永远看不到机密)?每个任务独立沙箱?本地永远不存机密?我不想要那种敷衍了事的安全表演。我想知道在让代理接触真实仓库之前,人们实际上是怎么做的。
相似文章
你是如何让编码代理访问外部 API,同时不把原始密钥交给它们?
这是一场关于开发者如何为编码代理处理凭据的讨论,探讨了一种让代理无需接收原始密钥即可使用 API 的方案:在请求时注入凭据,并限制允许的目标地址。作者正将这一方案构建为 Stashbase 的一部分,并邀请大家分享各自的实践。
无需在编程代理环境中放置密钥,为其提供SSH访问真实服务器的权限 - 信任模型解析
作者提出了一种安全方法,通过一个持有密钥并签名命令的中介客户端,为编程代理提供SSH访问真实服务器的权限,并支持按主机策略、实时监控和审计日志,同时讨论局限性并寻求反馈。
编码代理应该被允许做什么?
本文探讨了在软件项目中控制编码代理访问权限的安全问题和最佳实践,特别是涉及敏感数据和操作方面。
AI编码智能体遭遇严峻安全挑战
本文探讨了AI编码智能体的新兴安全问题,重点关注权限管理以及赋予其完全访问开发环境的风险。
如果你刚接触编程助手:它们会写日记,你的 API 密钥就在里面
像 Claude Code、Cursor 和 Codex 这样的编程助手会将会话日志保存在本地,这可能会暴露 API 密钥和环境变量等敏感数据。一位名叫 Ishan 的开发人员创建了一个离线工具,用于扫描并擦除这些日志中的机密信息,解决了这一常见的安全盲点。