首页 > 解决方案 > DataProtectionConfigurationProvider 在我的 Azure 应用服务上不起作用

问题描述

我正在尝试在我的项目的 App.config 文件中加密我的连接字符串数据。我找到了这个主题,解决方案基本上是,我给出我的连接字符串->它加密它->我将给定的加密字符串放入我的 App.config 和 bam。它工作(通常)。

这是加密字符串的样子:

<connectionStrings configProtectionProvider="DataProtectionConfigurationProvider">
    <EncryptedData> 
        <CipherData> 
            <CipherValue>AQAAANCMnd...</CipherValue> 
        </CipherData> 
    </EncryptedData> 
</connectionStrings>

该解决方案适用于我的本地解决方案,我可以毫无问题地访问我的数据库。但是,当我将项目上传到我的 Azure 应用服务时,无法访问数据库。我确定这是因为加密的数据,但我不知道为什么(数据库连接在没有加密的情况下工作)。

所以如果你有想法,你就是我唯一的希望。我想保持加密简单,我发现了很多其他解决方案,但我发现它们非常复杂,无法使其工作。

提前感谢!

标签: c#azureencryptionazure-web-app-serviceapp-config

解决方案


Azure 网站和 Web 作业的配置文件加密方法

由于 Azure Web AppService 平台的特殊性,所以无法使用 Azure 平台中 DataProtectionConfigurationProvider 和 RSAProtectedConfigurationProvider 的 C# config 原始加密方法。

仔细阅读文章可以知道,DataProtectionConfigurationProvider不能以Azure web app的传统方式生效。可以参考文章中的解决方案进行处理。


推荐阅读