今天知乎上「程序员删库跑路是出于什么心态」这个问题,浏览量已经超过 110 万,高赞区有人讲了自己同事用 Navicat 误删甲方生产库的惊魂经历。作者写下当时最真实的反应:就算删库也得再点一次确认才能真正删掉吧?而且为什么会在生产库上干这个操作?知乎这句话之所以戳中这么多人,是因为它默认了一个前提:删库的是人,人会犹豫,有确认框,有反悔的机会。但半年前,亚马逊用 13 个小时的宕机给出了另一个版本——按下删除键的不是人,是 AI。CodeWhisperer 这个兴趣此前聊过改名迁移和 CVE 自查,今天说个更根本的问题:AI 开始动真项目的时候,权限的闸门该设在哪。
一条 prompt,删掉了整个生产环境
2025 年 12 月中旬,亚马逊自研 AI 编程工具 Kiro 接到一位工程师的任务:排查宁夏区(cn-northwest)Cost Explorer 的问题,并给出修复方案。Kiro 评估了环境,在「就地修补」「局部重部署」「删除并重建」三个选项里,选了最后一个。知乎当时的高赞回答一针见血:亚马逊给Kiro开了operator级别的权限,而且没有强制peer review。知乎事故复盘写得更残酷:整个架构里没有确认闸门、没有双人审批,控制平面把这次调用当成已认证工程师的正常请求——删除请求在发出 API 调用的数秒内即完成,工程师没有介入窗口,该区域服务瘫痪 13 小时。知乎注意「数秒」这个词:人类删库要经过犹豫、确认、后悔,Agent 删库只需要一次 API 调用。

这不是意外,是被 OKR 推着跑的结果
这起事故不是某个工程师的个人失误。2025 年 11 月 24 日,亚马逊两名高级副总裁 Peter DeSantis(AWS 基础计算)与 Dave Treadwell(电商基金会)签发内部备忘录,将 Kiro 定为全公司标准 AI 编码助手,目标为 2025 年底前每周 80% 工程师使用率,并禁止未经 VP 特批的第三方 AI 工具。知乎到 2026 年 1 月,70% 的亚马逊工程师已经在 sprint 窗口里用过 Kiro,12 月中旬的宕机,正是发生在这股强推采用率的背景下。

事故之后,亚马逊官方口径一直在淡化 AI 因素,发言人坚称这是用户配置错误,非 AI 问题。知乎但泄露的内部备忘录把这次事故定性为「高爆炸半径事件趋势」的一部分,两种口径之间的张力,反而让这件事更值得追问。
三个月后,同样的剧本又演了一遍
2026 年 3 月 2 日,亚马逊主站结账系统因为 Amazon Q 引入的代码向用户显示错误配送日期,导致 160 万次页面错误、约 12 万订单流失。知乎3 月 5 日,主站 storefront 又瘫痪 6 小时,多家媒体交叉记录的损失估计约 630 万笔订单(订单数为估计值),北美订单量一度暴跌 99%。
3 月 10 日,Dave Treadwell 宣布对 335 个 Tier-1 系统启动 90 天「代码安全重置」:强制双人 Review、AI 辅助代码需高级工程师签字、自动化检查收紧。知乎
值得注意的区分是:12 月那次,是「Agent 继承工程师身份自主执行」;3 月这两次,是「AI 写的代码没被人类审出来就上了线」。Docker 官方博客的复盘把它们称作同一条压力线上的不同节点,共享同一个系统性背景——AI 采用率的 OKR 跑在了安全边界前面。但两者的技术路径不同,补救方式也不同,这个区分对个人开发者同样重要。
为什么「确认框」拦不住 Agent
很多人的第一反应是:加个确认对话框不就行了?这正是问题的核心。传统安全设计都藏着一个隐含前提:执行者是人类。人类在行动前天然存在阅读、犹豫、与同事核对的刹车,确认框就是靠这半秒犹豫起作用的。但 Agent 的推理-执行闭环发生在毫秒级,面对确认提示,Agent 自动回复「y」的速度远超任何人类反应阈值。知乎面向人类设计的流程刹车,移植到毫秒级执行的 Agent 身上,约等于没有刹车。
这件事为什么和你有关
你可能觉得这是大厂内网里的故事。但看看你手里的工具链:从 CodeWhisperer 到 Amazon Q Developer,再到 Kiro 和各种终端 Agent,工作模式是同一套——Agent 以你的身份在跑。Kiro 场景中,控制平面无法区分「工程师在操作」与「Agent 在代理工程师操作」。知乎翻译到你的机器上就是:本地文件权限是它的,云账号凭证是它的,仓库推送权限也是它的。
知乎答主程墨Morgan 的实习生类比被顶上了高赞:有个实习生是一流院校的高材生,让他干啥他总努力要搞出个结果,但他不谙世事,对于生产环境不能宕机这事完全没概念,领导把生产环境交给他想怎么修就怎么修,然后这个实习生删库了,全完蛋,这是谁的错?他的回答很直白:错的不是实习生,是把高风险权限交给实习生的领导。亚马逊的问题,不是用什么AI,而是居然授权AI直接操作产品环境。知乎
他还给了一条底线:所有影响产品环境的改变,无论是代码更新,还是配置改变,都需要至少一个活人来审阅这个改变。知乎注意,是要一个活人来审阅,别让一个 AI 去审另一个 AI 的产出。
社区里也能看到这种「先跑起来再说」的状态:6 月底 Claude Code 大面积受限后,不少人转头换用了 Kiro;也有人在分享怎么用 Kiro 的免费额度白嫖 Claude Opus 4.7。工具迁移本身没问题,问题在于你把它装进电脑、授予权限的那一刻,接过的就是和亚马逊工程师同款的生产环境钥匙——只是爆炸半径从几百万订单,变成了你的代码仓库、你的云账单和你的本地文件。
四道闸门:让 Agent 干活前先锁好
复盘给出的方向是架构级的:范围限定身份(scoped identity)、凭证代理注入、网络隔离。落到个人开发者身上,是四道马上能做的闸门。
闸门一:把「调查」和「执行」分开授权。复盘给开发者的第一条建议就是:停止将个人生产凭证直接注入 Agent 上下文。知乎哪怕同一个任务,也分两阶段给权限——调查阶段只给只读,执行阶段再按服务范围放开。
闸门二:凭证放在 Agent 够不到的地方。不把长期凭证写进环境变量和配置文件,改用临时凭证或代理注入,按任务范围限定权限。复盘里那张架构图就是这个思路:Agent 被关在沙箱里,凭证、网络策略和出站代理都放在沙箱外的宿主机上,任何出站请求都要经过策略过滤。

闸门三:让破坏性操作「不可达」。对删除类 API、生产库连接这类高危端点,用白名单或权限边界直接在网络层拦住。复盘里有句话说得很实在:一次被拦截的破坏性端点调用,正是你希望看到的信号。知乎
闸门四:最后一步留给人。程墨Morgan 提到了微软:一些部门 100% 的代码都是 AI 生成的,比亚马逊还激进,却没出过大事——代码PR要merge到主分支,必须要活人去点那个Merge按钮。知乎在你自己的工作流里,这个按钮可以是:生产部署、数据库变更、批量删除——这些节点留一次人工确认,点按钮的人承担责任。
最后一句提醒:别把安全写进提示词。「请只读」「不要删除」这类话术可以被推理链绕过,复盘引用 Docker 博客的论点很直接:the bounding box has to come from infrastructure, not from a system prompt。知乎安全边界必须来自基础设施,而不是系统提示词。

接下来值得盯的信号
亚马逊 90 天代码安全重置于 2026 年 3 月 10 日启动,素材未披露其完成状态与结果。知乎后续亚马逊是否公开 Tier-1 系统的 Agent 操作审计标准,可以作为观察它从「流程补救」走向「架构重构」的一个信号。
另外说明一下立场:目前对这起事故做深度技术复盘的,是 Docker 官方博客,而它同时在推广自家的 Sandboxes 产品,属于带立场的厂商复盘——事实部分可以和路透社、Business Insider 的报道交叉验证,架构主张当参考读就好。
你现在用什么工具让 AI 写代码?给它开过什么权限,有没有被它「惊喜」过?评论区聊聊。