При попытке зашифровать строку подключения к базе данных в файле web.config MVC 3 с использованием стандартного шифрования RSA, я получаю следующее сообщение об ошибке:
Атрибут 'configProtectionProvider' недопустим.
Есть идеи, как зашифровать строку подключения к базе данных на веб-сайте MVC 3?
Пример кода
<connectionStrings configProtectionProvider="RsaProtectedConfigurationProvider"> <EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element" xmlns="http://www.w3.org/2001/04/xmlenc#"> <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" /> <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"> <EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#"> <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" /> <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"> <KeyName> RSA Key </KeyName> </KeyInfo> <CipherData> <CipherValue> WcFEbDX8VyLfAsVK8g6hZV.... </CipherValue> </CipherData> </EncryptedKey> </KeyInfo> <CipherData> <CipherValue> OpWQgQ.... </CipherValue> </CipherData> </EncryptedData> </connectionStrings>
В узле <configuration> добавьте: xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"
<configuration>
xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"
Вам также может понадобиться <validation validateIntegratedModeConfiguration="false" /> в вашем элементе <system.webServer>, чтобы запустить сервер.
<validation validateIntegratedModeConfiguration="false" />
<system.webServer>