Azure Keyvault已停止在IIS托管网站上工作



嗨,我有一个关于Azure密钥保管库和IIS的问题。因此,我们的服务器提供商做了一个windows补丁:2021-04基于x64系统的Windows Server 2016累积更新(KB5001347(2021-04针对基于x64的系统的Windows Server 2016的服务堆栈更新(KB5001402(

在这个windows补丁和重新启动服务器之后,我们在Azure中从web.config到keyvault的提取停止了工作。

当IIS启动我们的应用程序时,它找不到Microsoft。配置ConfigurationBuilders。蔚蓝色的即使DLL位于bin文件夹中。

另一件需要提及的重要事情是,我们到位于其自己的文件connectionStrings.config中的数据库的connectionStrings在Azure Keyvault中工作得很好。

我们在同一台机器上的windows服务也与Azure Keyvault配合得很好。

因此,这个问题只会影响web.config中的appsettings部分。我们试图在web.config中将bin文件夹添加到privatePath中,但这对没有帮助

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin;modulesbin"/>

这在我们的STAGING机器上非常有效,它具有相同的窗口更新和使用相同的配置。有人知道我们下一步能做什么吗?我们正在使用的:

System.Configuration.ConfigurationBuildersSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
<configBuilders>
<builders>
<add name="AzureKeyVault" vaultName=somevaultname"
type="Microsoft.Configuration.ConfigurationBuilders.AzureKeyVaultConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.Azure, Version=1.0.0.0, Culture=neutral"
vaultUri="somevaulturi"/>
</builders>
</configBuilders>

感谢的帮助

编辑:我们现在已经安装了更新的Azure dll。已在服务器上安装Azure CLI。我们现在在环境变量中使用AZURE_TENNT_ID、AZURE_CLIENT_SECRET、AZURE_CLIENT_ID而不是AzureServicesAuthConnectionString。

重新启动后,Web应用程序、服务和连接字符串停止工作。事件查看器中的错误消息:异常消息:加载配置文件时出错:指定的用户没有有效的配置文件。无法加载"Microsoft"。配置ConfigurationBuilders。Azure

在我们的后台服务器上,一切仍按预期运行。

AZURE_TENNT_ID已正确添加到Administrator环境变量下但在系统环境变量下,它添加了AZURE_ENTANT_ID(太多了(这样一个拼写错误。现在一切都好。

最新更新