Проверьте мой следующий пост в блоге: Защита ключей машины asp.net и строк подключения
Если вы используете ответ Quandary, используйте ключ, которого нет в папке сайта, как это делает asp.net с защищенными разделами конфигурации.
Мы вручную одобряем изменения в файле web.config, которые переходят в стадию / производство. Мы используем интегрированный вместо имени пользователя, где это возможно, но вариант, который мы использовали в последнем случае, это просто иметь заполнители для имени пользователя / паролей в SVN.
В прошлом мы использовали отдельные файлы конфигурации, но у нас возникли другие проблемы с модификациями web.config, поэтому в последнее время мы заблокировали их в одном файле.