我已将服务结构服务配置为使用Azure Key Vault进行配置。如果在部署应用程序后,我更改了密钥保管库中的配置,那么如何重新启动受影响的服务以便它可以获取新的配置值?
或者还有另一种方式吗?
答案 0 :(得分:4)
在SF上处理配置的最佳方法是使用您的应用程序参数文件,如果您使用像VSTS这样的连续部署管道,您可以使用发布变量为您设置这些值并部署新版本的配置文件让SF做其余的事。
但是如果你仍然需要使用Key vault:
如果您使用的是asp.net核心,使用Azure Key Vault存储机密就像加载配置文件一样,这些值会被缓存,直到您重新加载它为止。
您可以使用IConfigurationRoot.Reload()
从密钥保险库新值重新加载机密。检查Here
现在的诀窍是让你自动完成:
然后:
或者,如果您更喜欢更多自定义设计的解决方案,您可以根据KeyVault创建自己的ConfigurationProvider
,并根据您的应用架构执行缓存逻辑,而您不必为其余部分烦恼。请参阅Asp.Net来源here。
答案 1 :(得分:0)
为您的服务提供配置的documented方法是使用应用程序包的“配置”部分。 由于这是版本化的,因此可以升级,无需升级服务甚至重新启动服务。