在 Cloud Run 容器合约的文档 中,列出了端点以包括获取电子邮件和令牌的端点:
/computeMetadata/v1/instance/service-accounts/default/email
/computeMetadata/v1/instance/service-accounts/default/token
描述是“this Cloud Run 服务或作业的运行时服务帐户的电子邮件”和“为this Cloud Run 服务或作业的服务帐户生成 OAuth2 访问令牌。”
但是,(大概是 RESTful)端点包括路径
service-accounts/default/
... default service account 是真实的。
我的问题
Cloud Run 的元数据服务器是否返回
email
/ token
为当前活动的服务帐户生成尽管端点表明它是针对默认服务帐户,或者端点是否应该由服务帐户的名称参数化, 例如
/computeMetadata/v1/instance/service-accounts/<service-account-name>/email
/computeMetadata/v1/instance/service-accounts/<service-account-name>/token
?
如@guillaume blaquiere所述:
元数据服务器上的默认路径在所有元数据服务器上默认设置。请记住,Google Cloud 是 Google 基础架构的扩展。 Google infra 中的元数据服务器具有多个身份可能是正常的。但公有云并非如此。因此,始终只有一个服务帐户(运行时帐户)并且默认每次都引用它。