如何将私有Azure Key Vault的vault.azure.net请求重定向至专用DNS区域或专用IP?
解决禁用公网访问的Azure Key Vault DNS解析问题
问题背景
- 已创建
privatelink.vaultcore.azure.net专用DNS区域,添加了指向禁用公网访问的Key Vault专用终结点的DNS记录 - 配置了连接本地条件转发器的Azure专用DNS解析器
- 现象:
- 执行
nslookup key_vault_name.privatelink.vaultcore.azure.net可返回专用IP - 执行
nslookup key_vault_name.vault.azure.net返回公网IP
- 执行
- 访问Key Vault密钥/机密时触发错误:
Public network access is disabled and request is not from a trusted service nor via an approved private link.
- 仅在本地主机文件添加
key_vault_name.vault.azure.net与专用IP的映射时,才能正常访问 - 顾虑:直接在本地DNS服务器添加
vault.azure.net转发规则会影响现有在用的公网Key Vault,希望仅影响特定VNet内的私有Key Vault
可行解决方案:基于Azure DNS转发规则集的拆分解析
你提出的方案完全可行,具体配置逻辑如下:
1. 配置DNS转发规则集
- 创建Azure DNS转发规则集,添加一条针对
vault.azure.net的转发规则:- 域名:
vault.azure.net.(注意末尾的点,确保是完全限定域名) - 目标DNS服务器:填写你的Azure专用DNS解析器出站终结点的IP地址
- 域名:
- 将该转发规则集仅关联到目标特定VNet(即负责新混合环境部署的VNet)
2. 确保专用DNS解析器的关联配置
- 确认专用DNS解析器已与
privatelink.vaultcore.azure.net专用DNS区域关联,确保能正确解析专用链接域名的IP - 专用DNS解析器的入站终结点已正确连接本地环境的条件转发器,保证本地到Azure私有DNS的解析通路
3. 验证效果
- 在目标VNet内的资源上执行
nslookup key_vault_name.vault.azure.net,确认返回Key Vault专用终结点的私有IP - 尝试通过门户或Terraform访问Key Vault的密钥/机密,验证错误提示消失
方案安全性说明
- 该配置仅影响关联的特定VNet:其他VNet或本地环境的
vault.azure.net查询仍使用原有DNS配置,不会干扰现有公网Key Vault的正常访问 - 针对未配置专用终结点的其他公网Key Vault,专用DNS解析器在查询不到私有记录时,会自动回退到公共DNS解析,确保原有业务不受影响
内容的提问来源于stack exchange,提问作者Igor Levin
相关产品推荐
相关产品推荐

