Войти через веб-сервис с удаленной базой данных пользователей - PullRequest
2 голосов
/ 16 мая 2011

У меня есть онлайн-приложение с PHP и MySQL. Мне нужно предоставить некоторые функциональные возможности, используя настольное приложение, построенное на C #. В мою задачу входит следующее ..

  1. Аутентификация
  2. Запрос к базе данных

Пожалуйста, предложите мне правильный способ продолжить этот сценарий.

Некоторые мои сомнения ..

  • я должен использовать webservice в моем конце PHP?
  • Как пройти аутентификацию?
  • есть проблемы с безопасностью?

Ответы [ 2 ]

2 голосов
/ 16 мая 2011

Да. Вам нужно будет создать веб-сервис на стороне PHP, который содержит метод, который будет выполнять ваш запрос. Затем вы можете добавить 'Service Reference' в вашем приложении C # к службе PHP.

Относительно аутентификации: это зависит от вашего сценария. Если вы являетесь единственным пользователем веб-службы, вы можете использовать базовую аутентификацию (через HTTPS), чтобы гарантировать, что ваши учетные данные защищены от перехватчиков.

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

1 голос
/ 16 мая 2011
  • Веб-сервис: это стандартный способ работы.Но у него есть некоторые издержки (XML и все такое), поэтому, если вы передаете сложные структуры, вам могут понадобиться другие опции (например, передача данных с вашей собственной кодификацией через HTTP-соединение).Возможно, даже смешанная система представляла собой простые запросы через простые веб-службы, а более сложные - через HTTP, но без использования XML или передачи структуры, кодифицированной таким образом внутри веб-службы.В любом случае, постарайтесь свести нестандартные решения к минимуму.
  • Зависит от ваших требований безопасности.Веб-сервисы - это HTTP, поэтому стандартная веб-аутентификация работает.
  • То же, что и раньше, у вас есть базовое решение, оно зависит от того, что делает ваше приложение.
...