Azure 实例元数据服务

Azure Instance metadata service

我对使用 Azure 实例元数据服务的 Azure 系统托管身份的内部工作的理解是,每个 VM 都有自己使用 Azure AD 创建的唯一服务主体和一对唯一的 public - 关联的私钥对有了它。

私钥在 VM 上维护,用于签署可以使用 Azure 实例元数据服务上的 /identity API 端点获取的访问令牌。

此 VM 实例的唯一标识是否仅与此私钥相关联,还是还有更多?如果坏人能够将私钥复制到不同的 VM,那么坏人可以冒充给定的 VM 吗?或者除了私钥之外,生成此访问令牌还有更多内容吗?

这里我只是做一个总结:@Thomas 提供了详细而专业的解释。基于How MSI works and how to get access token via managed identity on Azure VM,你可以看到,整个获取access token的过程是一个GET函数,没有提供私钥或秘密,所以不用担心有人窃取并使用它们其他虚拟机。正如@Thomas 所说:

Only your VM can request a token to the IMDS

如果您的问题已经解决,请标记此post以关闭此案例,谢谢!