Вы не можете.Хотя вы можете зашифровать строку подключения в файле app.config, приложение должно иметь возможность дешифровать ее, и поэтому всегда можно получить незашифрованную строку подключения, особенно с помощью управляемого приложения (возможно, не для вашего обычного конечного пользователя,но любой опытный разработчик может сделать это).
Решение этой проблемы состоит в том, чтобы не полагаться на безопасность из-за неясности .Используйте Windows Integrated Security при подключении к базе данных с использованием учетной записи пользователя Windows и предоставьте пользователю минимальное количество прав в базе данных.
Часто, хотя этого все еще недостаточно, потому что этоочень сложно защитить базу данных, когда конечные пользователи напрямую подключены к базе данных (часто потому, что вам нужна защита на уровне строк).Чтобы это работало, вам нужно запретить доступ к таблицам и представлениям и полностью вернуться к хранимым процедурам.
Однако лучший подход состоит в том, чтобы не дать настольному приложению напрямую связываться с базой данных;использовать веб-сервис в качестве промежуточного слоя.В этом случае у вас есть полный контроль над безопасностью, и вы можете безопасно хранить строку подключения на (веб) сервере.