2012-04-22 1 views
-1

Я пишу приложение aC# windows, для которого требуется логин, который я планировал просто проверить с помощью выбора sql с моего веб-сервера, однако мой веб-хост, похоже, разрешает удаленный доступ к SQL, если вы вручную введите свой IP-адрес, который я не могу сделать для каждого пользователя приложения.C# windows app login без SQL

Итак, мой вопрос в том, что было бы лучшим решением для этого? Я рассмотрел попытку httprequest на странице моего веб-сайта, которая, в свою очередь, могла проверить данные для входа в систему, переданные ей с PHP, и передать результат, но он должен быть безопасным, и это выглядит немного больно для реализации (im довольно новый для C#).

+0

Что вы подразумеваете под "вручную введите свой IP-адрес"? Из сервера? Или пользователь? – lordcheeto

+0

** Редактировать: ** Тупой вопрос, конечно, вы имеете в виду пользователя. По соображениям безопасности вы никогда не захотите, чтобы какой-либо пользователь с этим приложением мог атаковать ваш сервер sql для учетных данных для входа. – lordcheeto

ответ

1

Как сказано в моем комментарии выше, только по соображениям безопасности вы никогда не захотите, чтобы какой-либо пользователь с этим приложением имел доступ к вашему серверу sql. Мое предложение состоит в том, чтобы клиент подключался через SSL (https: //) к странице ASP.NET или веб-службе, которая будет проверять учетные данные, предоставляемые с использованием LINQ to SQL. Затем он может отправить клиенту ответ «провал/отказ».

О, и для любви к Богу и всему, что свято, salt and hash your users' passwords.

Примечание: Если вы хотите использовать этот логин, чтобы пользователь не мог использовать ваше приложение, не имея учетной записи/оплаты, все перечисленные выше, но этого недостаточно, чтобы остановить людей от обратного проектирования и взлома приложение (например, обманывая его, думая, что оно получено передающим сообщением). Этот тип DRM представляет собой целую «ночную игру».