Microsoft 提供了多种方法来安全访问 Azure Key Vault 机密,特别是使用托管身份或服务主体作为身份提供者。但是,这些方法明确设计用于使用基于 Azure 的资源,例如 Web 应用程序和微服务。它们不适用于 UWP/WinUI 桌面应用程序。
到目前为止,我发现的允许 UWP/WinUI 桌面应用程序访问 Key Vault 的唯一方法是将应用程序的 Azure 注册信息(TenentId、ClientId 和 ClientSecret - 秘密,它们本身!)加载到由创建新的 SecretClient 对象 (Azure.Security.KeyVault.Secrets) 时的 DefaultAzureCredential() 方法。
但这意味着我需要将这些秘密存储在代码或配置文件中以便在运行时读取。绝对不是最佳实践!我肯定错过了什么。
2020 年,UWP/WinUI 桌面应用程序安全访问 Key Vault 机密(且在此过程中不会暴露其他机密)的最佳实践是什么?
我看过一些有关此主题的旧帖子,但没有任何最新内容且与较新的服务总线和 Azure Functions 堆栈相关,因此我想再次问这个问题。
在使用服务总线触发器的 Azure 函数上,有没有办法访问服务总线消息属性?据我所知,似乎只有消息正文字符串被传递到 Run 方法中。
同样,在使用服务总线输出绑定的 Azure 函数上,是否有办法将消息属性添加到出站服务总线消息?同样,据我所知,输出绑定似乎只接受消息正文字符串。