2017-02-06 10 views
0

Я пытаюсь зашифровать свою web.config файлы ConnectionString детали, но получаю сообщение об ошибке, какКонфигурация для физического пути не может быть открыта

The configuration for physical path "Path Goes Here" can not be opened 

Вот команда, которая выполняется в визуальной строке студии Command.

aspnet_regiis.exe -pef “connectionStrings” “C:\Users\Shi\Documents\ProjFolder\StudentApp\StudentApp” -prov "StudentProvider" 

P.S: Я дал разрешение на запись по пути и папке всем. Что не так в команде?

+0

Использует командную строку с правами администратора? – Teja

+0

@Teja Да ........ – user1197114

+0

Вы пытались запустить команду из командной строки разработчика? – Hackerman

ответ

1
aspnet_regiis -pe "connectionStrings" -app "/SampleApplication" -prov "RsaProtectedConfigurationProvider" 

Если приложение уже размещено на IIS, это способ сделать это. -site также может быть задан.

Убедитесь, что у вас есть контейнеры ключей RSA. Лучшая идея - реализовать его в коде, чтобы шифрование происходило, когда приложение вызывается в первый раз. В коде есть много способов сделать это.

https://msdn.microsoft.com/en-us/library/system.configuration.rsaprotectedconfigurationprovider.aspx

+0

Спасибо для ответа. Теперь проблема физического пути исчезла, но он не может найти поставщика защиты. Есть предположения ? – user1197114

+0

Вам необходимо получить контейнеры ключей RSA на вашем компьютере. Следуйте этой ссылке https://msdn.microsoft.com/en-us/library/2w117ede.aspx – Teja

+0

Кроме того, если вы дешифруете файл конфигурации, который зашифрован на другой машине, это не сработает! Шифрование и дешифрование должны выполняться на одной машине. – Teja