Какой метод аутентификации подходит для клиентского приложения Sync Framework (синхронизация базы данных)? - PullRequest
0 голосов
/ 30 августа 2011

Пользователи будут находиться в поле, собирая данные о клиентском приложении Windows в районах с плохим интернет-соединением. Дни или даже недели за пределами любого сетевого подключения. Счастливчики принесут свой ноутбук обратно в региональный офис, чтобы синхронизировать данные, которые они собрали, когда они войдут в сеть компании. Другим придется прибегнуть к подключению к интернет-клиенту / клиенту и / или интернет-кафе для выполнения синхронизации данных.

Приложение сохраняет данные в локальной базе данных SQL Server 2008 R2 Express, и клиент будет запускать синхронизацию базы данных со стандартом SQL Server 2008 в HQ по мере появления соединения.

Аутентификация пользователя и безопасность на основе ролей являются требованиями Приложения. Какой метод я должен использовать: Аутентификация с помощью форм или Аутентификация Windows? (И я думаю, что натолкнулся на третий тип, называемый Custom Authentication?)

Извините, я действительно потерялся в аутентификации - впервые делаю это и не уверен в плюсах и минусах каждого типа. Кто-нибудь может посоветовать, что я должен использовать для этого сценария?

ОБНОВЛЕНИЕ: Фактически у меня теперь работает синхронизация с использованием внешнего IP-адреса SQL Server в строке подключения и аутентификации SQL для входа пользователей. Будет ли это принятой практикой или я нарушаю какие-либо принципы безопасности?

Мне еще нужно перейти к элементу безопасности на основе ролей - может ли безопасность на основе ролей работать с аутентификацией SQL?

Кроме того, новая складка: выясняется, что некоторые удаленные пользователи после того, как им выдали свой ноутбук из головного офиса, могут никогда не войти в домен организации снова, поэтому их доверительные отношения с доменом истекают через несколько месяцев. Поэтому, я думаю, аутентификация Windows в любом случае нежизнеспособна ...

1 Ответ

0 голосов
/ 02 сентября 2011

Как вы будете подключаться к серверу HQ db?

Imo самое безопасное решение - синхронизация по WCF (пример с SqlCompact к Sql Server по WCF с N-уровнем здесь ),Затем вы можете реализовать любую схему аутентификации, какую захотите, в зависимости от типа безопасности (транспорта и / или сообщения), которую вы реализуете в WCF.См. это и это для получения дополнительной информации.

...