Согласно вашему описанию, я предлагаю вам попробовать выполнить следующие шаги для шифрования web.config и расшифровки web.config с помощью сертификата.
1. Создайте сертификат для шифрования файла конфигурации.
$ cert = New-SelfSignedCertificate -Type DocumentEncryptionCert -Subject "CN = DevConfig" -KeyExportPolicy Exportable -KeySpec KeyExchange
Export-Certificate -Cert $cert -FilePath ".\DevConfig.cer"
$mypwd = ConvertTo-SecureString -String "1234" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath ".\DevConfig.pfx" -Password $mypwd
$cert
2.Укрепить сертификат энсипта:
Import-Certificate -Filepath ".\DevConfig.cer" -CertStoreLocation cert:\LocalMachine\My
3. Импортируйте сертификат дешифрования:
$mypwd = ConvertTo-SecureString -String "1234" -Force -AsPlainText
Import-PfxCertificate -FilePath ".\DevConfig.pfx" -CertStoreLocation Cert:\LocalMachine\My -Password $mypwd
4. Установите пакет WebConfigEncrypter NuGet.
Install-Package WebConfigEncrypter -Version 1.1.0
5.Добавьте приведенный ниже файл конфигурации в файл web.config.Примечание: вы должны найти отпечаток из сгенерированного файла сертификата, как показано ниже:
<configProtectedData>
<providers>
<add name="Pkcs12Provider" thumbprint="91cb0b7c611e54f6bfd43c4d8d178b542bc6557e" type="WebConfigEncrypter.Pkcs12ProtectedConfigurationProvider, WebConfigEncrypter" storeLocation="LocalMachine"/>
</providers>
</configProtectedData>
6. Выполните команду ниже в файле web.configfodler:
aspnet_regiis -pef "connectionStrings" "." -prov "Pkcs12Provider"
7.Вы обнаружите, что ваш web.config зашифрован, но если вы расшифруете сертификат дешифрования на удаленном сервере, ваше приложение будет работать хорошо.