Этот вопрос является обновленной версией предыдущего вопроса, который я задавал здесь.
Я новичок в модели клиент-сервер с SQL Server в качестве реляционной базы данных.Я прочитал, что публичный доступ к SQL Server не является безопасным.Если прямой доступ к базе данных не является хорошей практикой, то какой тип слоя должен быть расположен между сервером и клиентом?Обратите внимание, что у меня есть настольное приложение , которое будет служить клиентом, и удаленная база данных SQL Server, которая будет предоставлять данные клиенту.Клиент введет свое имя пользователя и пароль, чтобы увидеть свои данные.Я слышал о таких терминах, как VPN, ISA, TMG, Terminal Services, прокси-сервер и так далее.Мне нужна быстрая и безопасная n-уровневая архитектура.
PS Я слышал о веб-сервисах перед базой данных.Могу ли я использовать WCF для извлечения, обновления, вставки данных?Будет ли это хороший подход с точки зрения безопасности и производительности?