Создать сервис, который подключается к удаленной базе данных и использует шифрование с открытым ключом - PullRequest
1 голос
/ 11 июня 2010

Я искал весь день и читал много уроков, но все еще в замешательстве. Я работаю над проектом, который имеет следующие требования, указанные клиентом (клиент - не путать с клиентским приложением):

  1. Подключитесь к удаленному серверу и убедитесь, что подключение прошло успешно.
  2. Подключение к веб-службе на указанном сервере через SOAP.
  3. Аутентификация с использованием сервиса с использованием шифрования с открытым ключом
  4. После успешной аутентификации отправьте список продуктов и категорий в базу данных MSSQL на удаленном сервере через веб-службу.

Клиент - это приложение Winforms, написанное на C #. До сих пор я создал приложение службы WCF с отдельными службами для продуктов и категорий, но я не могу понять остальное.

Может ли кто-нибудь указать мне направление на учебник или учебные пособия, которые охватывают эти требования?

Большое спасибо заранее!

Джо

Ответы [ 2 ]

1 голос
/ 11 июня 2010

Хорошо ... вы захотите взаимодействовать с базой данных, используя какой-либо уровень доступа к данным.Ваши варианты катятся самостоятельно ... или с использованием готовых решений, таких как Linq2SQL, Entity Framework, nHibernate, SubSonic и т. Д.

Что касается безопасности, если передача данных с помощью веб-службы является проблемой, которую вы могли бы простоиспользовать HTTPS.

0 голосов
/ 18 июня 2010

Я разработал следующее решение:

  1. Пользователь вводит имя пользователя, пароль и открытый ключ
  2. Программа подключается к удаленной службе WCF, которая проверяет предоставленные имя пользователя и пароль по базе данных на серверечтобы убедиться, что они верны - имя пользователя и пароль отправляются через пользовательский MessageContract.
  3. После успешной аутентификации сервер отправляет ответ клиенту, чтобы сообщить ему, что он продолжает.
  4. Пользователь выбирает продукты и категорииотправить на удаленный сервер.
  5. Выбранная информация шифруется клиентом с открытым ключом пользователя и расшифровывается на сервере с помощью соответствующего закрытого ключа.
  6. Расшифрованная информация сохраняется в базе данных.

Я на правильном пути?

...