是否有一种简单的方法来了解 Azure 托管身份的工作原理以及它们为何安全?

Is there an easy way to understand how Azure Managed Identities work and why they are secure?

我正在阅读 https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview,中途发现我的大脑在沸腾。

对于它是什么以及为什么不需要在源代码中存储凭据,是否有更直观的解释?

尝试https://azure.microsoft.com/en-us/blog/keep-credentials-out-of-code-introducing-azure-ad-managed-service-identity/

您可以将其视为您的 Azure 资源(即 VM)身份。假设你想从 Azure 虚拟机访问 Azure 存储中的一个 blob。一种选择是创建 AAD 应用程序并将客户端 ID 和客户端密码(密码)放入您的代码或配置文件中。这是托管身份试图解决的问题。

通过为 VM 分配托管标识,Azure 知道 VM 具有标识,因此您的代码只需使用从托管标识获得的令牌直接调用存储。您不需要存储客户端机密来获取该托管标识令牌,因为 Azure 已经知道 'who' VM 并允许它隐式使用托管标识。