商业动态 · 小互解读

加拿大阿尔伯塔省使用 Claude Code 做安全审查,20 小时扫描 4.66 亿行代码,原本需 6.5 年

50 个智能体自主并行工作,覆盖该省 27 个部门、3,400 个代码仓库,还能自动修复漏洞、重写老旧系统。
速览
  • 加拿大阿尔伯塔省技术与创新部自 2025 年起用 Claude Code(搭配 Claude Opus 与 Claude Sonnet 模型)审查政府系统安全。
  • 约 50 个智能体自主并行工作,20 小时内扫描了 4.66 亿行代码,覆盖该省 27 个部门、约 1,280 个应用、3,400 个代码仓库。
  • 团队估算,同等规模的传统人工审查原本需要约 6.5 年。
  • Claude Code 不只能定位漏洞,还能生成修复、编写测试、甚至用现代语言重写过时系统,一个有 25 年历史、原本手工开发耗时 5 个月的 Java 补贴系统,重建只用了 4 到 5 天。
  • 团队还搭了持续运行的红队 / 蓝队安全审查智能体,每次对每个应用核查约 95 项安全控制;阿尔伯塔已发布技术白皮书供其他政府参考。
本文由 Anthropic 官网发布,介绍自家客户案例。文中的规模数字与耗时对比(如「6.5 年」)多为阿尔伯塔团队自行估算和披露,下面按原文事实转述。
1谁在做这件事

谁在用 AI 查政府系统的安全

加拿大阿尔伯塔省技术与创新部,从 2025 年开始用 Claude Code(搭配 Claude Opus 与 Claude Sonnet 两个模型)给省政府系统做安全审查:找漏洞、修漏洞,还顺手搭了一套能一直跑的安全审查工具。

部门内部一个团队,让约 50 个智能体自主并行工作,在 20 小时里扫完了 4.66 亿行政府代码。
为什么值得看:这是目前已公开案例里,政府量级最大的一次 AI 代码安全审查。团队估算,同样规模的活儿要是靠传统人工审查,得花大约 6.5 年。
2问题有多大

这堆代码有多老、多乱

阿尔伯塔省技术与创新部替全省 27 个部门维护系统,从社会服务到公共安全,再到山火应急,全都靠它。这背后是约 1,280 个应用、3,400 个代码仓库。

27个省级部门(社会服务 / 公共安全 / 山火应急……)
约 1,280个应用
3,400个代码仓库
合计 4.66 亿行代码

其中大部分从来没做过系统性的安全审查。多年攒下的技术债,包括不安全的代码、没修的 bug、过时的软件,粗算下来价值数十亿美元。而这些系统里存的,正是税务记录、政府采购数据、社会服务案卷这类最敏感的信息。

累计技术债 数十亿美元 · 大部分仓库此前 零系统性安全审查
3怎么挑出问题

怎么从 4.66 亿行代码里挑出问题

约 50 个智能体自主并行工作,分头去扫每一个代码仓库,找的不只是安全漏洞,还有底层基础设施和部署流程的薄弱环节、以及技术文档的缺口。

核心做法 · 两段式流水线

整个扫描分两段:先让规则引擎快速过一遍,把符合已知可疑模式的代码标记出来;再让 Claude 逐条复核这些标记,对每一处问题都指出它在哪个文件、第几行,方便开发者直接去核对。信息就这样一级级被过滤、精炼下来。

这里的规则引擎(rules engine),是一套预先写好的机械匹配规则:代码只要长成某个样子就被挑出来,它只管标记,不管判断真假。

打个比方

就像机场安检先过金属探测门。门响了不代表一定有问题,只是先把人拦下来,真假交给后面更精细的检查确认。规则引擎负责「让门响」,Claude 负责后面那道「精细检查」,还告诉你该翻哪个包。

4.66 亿行代码 · 50 个智能体全量并行扫描
规则引擎标记「已知可疑模式」
Claude 复核 · 标出具体文件与行号
开发者按行号验证 · 确认真问题

这一遍扫描覆盖了阿尔伯塔拥有的每一个代码仓库,还挖出了传统自动化扫描工具漏掉的问题。20 小时跑完,团队估算换成传统人工审查,这种规模的活儿大概要 6.5 年。

约 50 个
自主并行的扫描智能体
20 小时
全量扫描实际耗时
4.66 亿行
覆盖的政府代码总量
约 6.5 年
传统人工审查估算耗时
4挑出来怎么修

挑出来的问题,AI 接着修

挑出问题只是上半场。扫描发现漏洞的地方,Claude Code 往往能直接把补丁写出来:生成修复、跑测试、完成构建。

遇到系统缺少自动化测试、没法确认补丁安全的情况,Claude 会先把测试补上;遇到代码太旧、太复杂、原地打补丁不划算的,就干脆用更现代、更好维护的语言重写一遍。整个过程都和部门的工程师一起做:任何一个补丁上线前,都要经工程师人工审核批准。

扫描发现漏洞
缺测试?
先补测试
生成修复
或整段重写
工程师
审核批准上线

最能看出差距的是一个补贴项目门户。它 25 年前用 Java 手写而成,当年建起来花了整整 5 个月。这次用现代语言重写,最短只要 4 到 5 天。

25 年前 · 手工开发
5 个月

Java 手写的补贴项目门户,最初从零建起来的耗时。

现在 · Claude Code 重建
4 到 5 天

同一个系统用现代语言重写一遍所需的最短时间。

5持续把关

扫完不算完:红队蓝队全天候盯着

系统扫完、补丁打上,还不算结束。阿尔伯塔的网络安全团队还搭了一组专门的 Claude 审查智能体,让它们在开发全过程里一直跑,把安全审查从一次性的专项排查,做成日常开发里的常态把关。

核心做法 · 红蓝队持续审查

红队智能体像攻击者一样从外部探测系统,摸清一个漏洞可能被怎么利用;蓝队智能体随后对照国际安全标准评估防御,并写出精确到文件的修复方案。两支队伍配合,让每个应用每一轮都过约 95 项安全控制。

红队 · 进攻方

扮演攻击者,从外部主动尝试突破系统,摸清一个漏洞会被怎么利用。

蓝队 · 防守方

对照国际安全标准检查防御是否到位,并写出该改哪个文件的具体修复方案。

① 红队探测像攻击者一样从外部探测系统,找出可能被利用的漏洞
② 蓝队评估对照国际安全标准检查防御,写出精确到文件的修复方案
③ 修复上线工程师审核批准后,补丁进入系统
↻ 回到第 ① 步,进入下一轮 · 每一轮每个应用约 95 项安全控制

每跑一轮,每个应用都要对照约 95 项安全控制(security control)逐条核查。这 95 项,是从国际安全标准里拆出来的一条条具体检查,比如密码是否加密存储、用户输入有没有做校验,合起来就是一份 95 条的安全体检清单,每一轮都得从头过一遍。

除了红蓝两队,还有智能体专门检查代码质量,以及公众看到的文字是否清楚。这一整套审查智能体,都是基于 Claude Agent SDK 搭起来的。

6能复制吗

这套经验能复制给别的政府

阿尔伯塔没打算把这套经验捂在自己手里。它已经把整个过程写成一批技术白皮书,公开供其他省、州、联邦政府参考,因为技术债和安全漏洞这些麻烦,全世界的政府系统里都有。

2025 年
部门组建内部团队,开始用 Claude 给系统做安全审查、加固。
随后
20 小时扫完 4.66 亿行代码,修复漏洞、重写老旧系统。
随后
搭建红队 / 蓝队持续审查智能体,让安全把关常态化。
已发布
公开技术白皮书,给其他政府一份可照做的蓝图。
2026 年 7 月
在埃德蒙顿办一场行业日,分享这套做法学到的东西。
今年秋季起
启动一项计划,把这套做法推广到全省政府。

下一步,阿尔伯塔计划让 AI 智能体不只改代码,还能和工程师一起从零构建全新的软件和工具。比如某个部门有 185 个还在生产环境里跑的老旧应用,维护贵、更新难,团队打算用 Claude Code 把它们摸清楚、整合成 16 个基于现代语言的可复用应用。

现在
185 个

老旧应用还在生产环境里跑,维护成本高、难更新。

计划整合为
16 个

基于现代语言、可复用的现代应用。

与此同时,阿尔伯塔还通过「阿尔伯塔 AI Academy」培训政府员工和普通公众怎么用 AI,从写提示词到交付企业级应用都教。

数千名
通过平台学习 AI 的政府员工
超 10,000 人
上平台学习 AI 使用的公众
7数字说话

数字说话

把全篇最有冲击力的一组数字放在一起看:同样一件事,两个时间尺度。

用 Claude Code 实际完成20小时
传统人工审查 · 团队估算≈6.5
同一份 4.66 亿行代码的安全审查,上面那条细到几乎看不见的短条,就是 20 小时。
用 AI 找出并修复系统里的漏洞,我们用几个小时就完成了传统做法要花好几年才能做完的事。Nate Glubish,阿尔伯塔省技术与创新部部长
来源:Anthropic 官网《Government of Alberta uses Claude to find and fix cybersecurity vulnerabilities》。文中的规模数字与耗时对比(含「6.5 年」「185 → 16」)多为阿尔伯塔省技术与创新部自行估算与披露。阿尔伯塔发布的技术白皮书见 thevelocitywhitepapers.com。