2014-01-29 2 views
0

Я создаю небольшое веб-приложение со всеми элементами управления HTML и использую javascrip и webservices для всей моей работы.Аутентификация с использованием Webservice и Javascript

Теперь мне нужно добавить аутентификацию входа в мое приложение. Обычно я бы сделал это с легкостью с помощью кода на стороне сервера.

 FormsAuthentication.SetAuthCookie(strUSername, createPersistentCookie) 

Но мне нужно достичь этого, используя исключительно обращения к Javascript и Webservice.

 function Autheticateuser(strUser,strPwd) 
     { 
      Webservice.AuthenticateUser(strUser,strPwd,SetAuthentication,FailAuthentication) 
     } 

Но поскольку Javascript небезопасен, любой может манипулировать этим в браузере. Как я могу сделать это безопасным, а также сохранить его в стороне от кода на стороне сервера.

+0

Что вы подразумеваете под «держаться подальше от серверной части»? –

+0

означает, что у меня нет кодовой части сервера. – user2561997

+0

Если все операции выполняются в браузере с кодом Javascript, и вы хотите пройти проверку подлинности пользователей с помощью кода JavaScript, я боюсь, что это не сработает. –

ответ

1

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

Контроллер аутентификации форм не сильно отличается от веб-службы. Он принимает сообщение формы от анонимного пользователя с идентификатором/паролем и возвращает файл cookie. Это можно так же назвать сценарием. Вот почему вы устанавливаете защиту (блокировку после нескольких неудачных попыток) для аутентификации.

Вы не хотите использовать файлы cookie с услугами веб-API. Самый простой способ сделать это - посмотреть на приложение MVC5 SPA или проверку веб-API 2.0. Они поставляются с Visual Studio 2013 и .NET 4.5. Веб-службы встроены в поддержку токена OAuth, что является правильным способом проверки подлинности/авторизации для веб-служб. Вы можете сделать это с более ранними версиями MVC, но вам нужно получить внешние библиотеки для поддержки OAuth.

This - хорошее видео, чтобы попасть в веб-безопасность api.

Смежные вопросы