跳到主内容
快讯直播
AI智模界
AI 词典

工作负载身份:给每个服务和智能体发张会过期的身份证

一句话定义:工作负载身份(Workload Identity)就是给每一个"干活的东西"——一个服务、一个容器、一个定时任务、一个 AI 智能体——发一张只属于它自己、短期有效、能自动续期的身份证,取代那些长期不变的密钥和 API Key。

SPIFFE(Secure Production Identity Framework For Everyone)定义的就是这张身份证长什么样、怎么验证;SPIRE 是它的开源实现,负责把证真的发出去。两者都是云原生计算基金会(CNCF)下的项目。

身份证长什么样

SPIFFE 身份是一个 URI 形式的 ID,形如 spiffe://信任域/路径,比如 spiffe://corp.example.com/ns/payment/sa/report-service。凭证叫 SVID(SPIFFE Verifiable Identity Document),常见形态是 X.509 证书或 JWT,有效期通常很短,到期自动换新。

怎么证明"你是你"

这一步最有意思,分两层。第一层是节点证明(node attestation):SPIRE 的 agent 先证明自己确实跑在一台可信的机器上,比如借助云平台的实例元数据、Kubernetes 的节点身份。第二层是工作负载证明(workload attestation):agent 在本地观察进程——PID、Unix UID、Pod 标签、ServiceAccount、容器镜像摘要——判断"这个进程确实是支付服务",然后才把 SVID 交给它。全程没有人工审批,也没有密码写进配置文件。

打个比方:传统的 API Key 像一张永不过期、还能随便复印的门禁卡,丢了别人可以一直刷,你也不知道卡在谁手上。SPIFFE 更像前台当场核对工牌、现场打印一张两小时后失效的临时卡,过期自动作废,捡到也刷不开。

和相邻概念的区别

维度长期密钥 / API Key工作负载身份(SPIFFE/SPIRE)
身份归属一把钥匙,谁拿到都能用绑定到具体进程与运行环境
有效期常年不变短期,自动轮换
发放方式人工生成、到处粘贴运行时自动证明、自动签发
泄露后果可能被长期滥用窗口短,换到别处难以复现
跨环境各平台各搞一套一套身份跨集群、多云通用

和 OAuth/OIDC 的区别:那套解决的是"用户是谁",是人登录系统;SPIFFE 解决的是"这个进程是谁"。和 Kubernetes ServiceAccount 的区别:SA token 是集群内的身份,跨集群、跨云、连虚拟机时不好统一,而 SPIRE 反而可以把 SA token 当成证明材料之一。和 mTLS 的关系是分工:SPIFFE 负责"我是谁",mTLS 用这个身份建立加密通道,服务网格里常见这种搭配。

对从业者的意义

把密钥从环境变量、配置文件、代码仓库里挪走,是安全建设里回报很高的一件事。审计视角也会变:从"哪把钥匙被用了"变成"哪个服务访问了哪个服务"。对做 AI 的人来说尤其相关——智能体要调工具、连数据库、互相调用,把 API Key 塞进提示词或环境变量是最常见的翻车点;换成工作负载身份,凭据跟运行环境绑定且短期有效,即使被日志或提示词带出去,在别处也基本用不了。

一句话记住:SPIFFE 是可移植的身份标准,SPIRE 是它的参考实现。具体的支持范围和部署细节,以官方页面为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。