Azure Key Vault 从 VMSS 实例获取机密
Posted
技术标签:
【中文标题】Azure Key Vault 从 VMSS 实例获取机密【英文标题】:Azure Key Vault get Secret from VMSS Instances 【发布时间】:2020-05-07 15:09:57 【问题描述】:有人有从 VMSS 实例获取 Azure Key Vault Secret 的解决方案吗? 对于单个 VM,我发现了这篇文章:https://docs.microsoft.com/en-us/azure/key-vault/tutorial-python-linux-virtual-machine#create-edit-and-run-the-sample-python-app
我可以为 VMSS 实例做类似的事情吗? 使用 Microsoft 文档中的 Python 脚本,我遇到了以下问题。我无法通过此请求从实例访问 Key Vault URL。 (请求超时。)
requests.get(url = KeyVaultURL, headers = "Authorization": "Bearer " + data["access_token"])
VMSS 有一个带有公共 IP 地址的 LoadBalancer。 并且后端池中的实例只有一个 NIC(私有 IP)。 Vault 和 VMSS 位于不同的资源组中。
您知道为什么我无法从我的实例访问 Key Vault 吗? 因为如果身份(访问策略)会成为问题,我应该得到 4xx 而不是超时。
谢谢 韩国
【问题讨论】:
为什么不呢?你试过什么? 我在我的 VMSS 实例上完全尝试了这个 python 脚本。但我无法访问我的 Key Vault。 (连接超时。) 【参考方案1】:我认为,如果您通过门户将托管标识分配给 vmss 并再次对其进行测试,它应该可以工作。
https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/qs-configure-portal-windows-vmss
【讨论】:
您好,感谢您的回复。但我想身份不应该是问题。因为我可以使用 VMSS 标识在我的 Azure Key Vault 中创建新的访问策略。 那么这应该是 NSG 中的一些问题。尝试添加服务端点并查看它是否有效: az network vnet subnet update --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --service-endpoints "Microsoft.KeyVault"跨度> 感谢当我将服务端点添加到子网时问题已解决。以上是关于Azure Key Vault 从 VMSS 实例获取机密的主要内容,如果未能解决你的问题,请参考以下文章
从 Azure Functions 访问 Azure Key Vault 时访问被拒绝
如何从 Key Vault 自动映射 Azure Functions 机密