答案1
首先,Key Vault 的虚拟网络服务端点功能仍处于预览阶段。强烈建议不要在任何生产场景中使用此功能。
在这种情况下,您可能需要允许来自您的应用程序所在的虚拟网络或公共 IP 地址范围的连接以绕过防火墙。
根据您的图片访问政策,您拒绝所有网络的流量访问。除默认网络外,这些来源之外的任何呼叫者都将被拒绝访问值得信赖的 Microsoft 服务。这意味着来自这些服务的连接将通过防火墙,但这些调用者仍然需要提供有效的 AAD 令牌,并且必须具有执行请求的操作的权限。
此外,应用服务即将推出,我在当前版本中找不到它值得信赖的 Microsoft 服务. 对于应用服务,仅支持 ASE(应用服务环境)实例。
参考:宣布推出 Key Vault 虚拟网络服务终结点(预览版)
更新1
由此关联您在评论中提供。
如果您想限制对 PaaS 资源的网络访问,您可以确保在特定子网中启用特定服务端点 Microsoft.KeyVault。此外,如果您选择了网络,则允许子网。您可以从此处获取更多详细信息教程。
如果您在应用服务中使用 Azure 托管服务标识,则需要确保已添加访问策略,该策略包括你的应用程序的身份. 请参阅这。
更新2
在这种情况下,如果您只想允许 Web 应用访问密钥保管库,而不是从本地网络访问密钥保管库,则需要将 Web 应用服务的出站 IP 地址添加到密钥保管库防火墙。
答案2
如果您在应用服务中使用托管服务标识 (MSI),则可以在 Key Vault 策略中授予对该 Azure AD 标识的访问权限,而不必在应用中保留硬编码的凭据。https://azure.microsoft.com/sv-se/resources/samples/app-service-msi-keyvault-dotnet/
关于限制网络/端点对密钥保管库的访问,Nancy 的正确答案是使用“Microsoft Trusted Services”。根据https://docs.microsoft.com/en-us/azure/key-vault/key-vault-overview-vnet-service-endpoints应用服务是 Key Vault 的受信任服务。