У меня есть MVC 3 REST API с простым контроллером: 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, чтобы предотвратить это.