GCP里长期有效的服务账号密钥,本质上是一类必须永远保管的机密。它们难以轮换,又极易泄露。Shijin Nair在把Workload Identity Federation推广到120多个生产项目后,得出了一个更彻底的判断:密钥是需要管理的机密,而联合身份是配置一次、靠属性条件约束的信任关系。

密钥与联合身份的本质差别

打开网易新闻 查看精彩图片

长期密钥的麻烦在于,它一旦生成,就变成了一串需要持续看护的字符串。轮换要排期,泄露要应急,权限范围还容易越滚越大。联合身份把这件事换了个方向:不再分发密钥,而是在身份提供方和GCP之间建立一次性的信任配置。

属性条件如何替代密钥

这种信任关系不是无条件的。它通过属性条件来限制谁能以什么身份访问什么资源,条件不满足,访问请求根本不会通过。换句话说,控制点从“保管好一串秘密”前移到了“定义清楚一段信任”。

规模化之后的变化

当这套机制覆盖到120多个生产项目时,运维负担并没有线性增加。因为信任关系配置一次即可复用,而密钥管理会随着项目数量不断累积新的轮换和审计任务。这也是为什么作者认为,它改变的不仅是工具,而是看待机器身份的方式。