У меня есть REST API MVC 3 с простым контроллером: ApiController
. Существует метод Foo
в ApiController
, который принимает некоторую строковую информацию и возвращает результат JSON:
public class ApiController : Controller
{
[HttpPost]
public JsonResult Foo(string input)
{
...
}
}
Я хочу, чтобы метод JQuery вызывал Foo с некоторыми введенными пользователем данными и отображал результат.
Загвоздка здесь в том, что я хочу проверить, разрешен ли пользователю доступ к Foo. Как лучше всего это сделать в ASP.NET MVC 3? Я думаю, что ответ заключается в использовании SSL и базовой аутентификации, но я понятия не имею, как это будет выглядеть. Кроме того, нужно ли мне использовать собственное хеширование/соление пароля или есть способ просто использовать аутентификацию с помощью форм?
Изменить. Обратите внимание, что я пытаюсь создать API, который смогут использовать сторонние разработчики. Например, если кто-то пишет плагин для браузера в стиле Rapportive, который сканирует ваш Gmail, отправляет текст в Foo и отображает его в браузере.
Кроме того, я считаю, что простое использование проверки подлинности с помощью форм отправит информацию об имени пользователя и пароле в виде обычного текста, верно? Я не уверен, как реализовать SSL, чтобы предотвратить это.