Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure实例元数据服务_Azure_Azure Active Directory_Azure Managed Identity - Fatal编程技术网

Azure实例元数据服务

Azure实例元数据服务,azure,azure-active-directory,azure-managed-identity,Azure,Azure Active Directory,Azure Managed Identity,我对使用Azure实例元数据服务的Azure系统管理的标识的内部工作的理解是,每个VM都有自己独特的使用Azure AD创建的服务主体,以及一对与之关联的唯一的公钥-私钥对 私钥在VM上维护,用于对访问令牌进行签名,该令牌可以使用Azure实例元数据服务上的/identity API端点获取 此VM实例的唯一标识是否仅与此私钥关联,还是与此私钥关联更多?如果坏角色能够将私钥复制到另一个VM,那么坏角色能否模拟给定VM?或者,除了私钥之外,这个访问令牌的生成还有更多的内容吗?我只是在这里做一个总结

我对使用Azure实例元数据服务的Azure系统管理的标识的内部工作的理解是,每个VM都有自己独特的使用Azure AD创建的服务主体,以及一对与之关联的唯一的公钥-私钥对

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


此VM实例的唯一标识是否仅与此私钥关联,还是与此私钥关联更多?如果坏角色能够将私钥复制到另一个VM,那么坏角色能否模拟给定VM?或者,除了私钥之外,这个访问令牌的生成还有更多的内容吗?

我只是在这里做一个总结:@Thomas提供了详细而专业的解释。根据和,正如您所见,获取访问令牌的整个过程是一个
get
函数,没有提供私钥或机密,因此不必担心有人窃取它们并在其他VM上使用它们。正如@Thomas所说:

只有您的VM可以向IMDS请求令牌


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

你看过这篇文章吗?谢谢你的链接!这有助于我变得更清晰。我正在查看系统分配的托管标识。我看到与VM关联的客户端id和证书被提供给Azure AD进行身份验证,以获取访问令牌。因此,这个VM的身份取决于客户端id和证书。那么,这是否意味着如果将客户端id和证书复制到另一个VM上,那么可以模拟目标VM?客户端id/证书不在VM上,而是在IMD上。由于托管标识已分配给您的VM,因此只有您的VM可以向IMDS请求令牌。非常感谢,这回答了我的问题。我的回答也适用于系统分配的标识。对于用户分配的标识,这是不同的,因为您可以将相同的标识分配给多个azure资源。