Создание RESTFul API, как сделать аутентификацию - PullRequest
4 голосов
/ 21 января 2011

Я создаю RESTFul API и задаюсь вопросом, как лучше сделать аутентификацию? Пользователи должны будут пройти аутентификацию. Я знаю три способа:

1.) Передайте ключ API в каждом запросе RESTFul:

http://api.mydomain.com/api-key-here/get-users

Это хорошо, потому что разработчики могут сразу начать использовать API, просто скопировав строку URL в браузер. Есть ли потенциальные угрозы безопасности?

2.) Каждый запрос передает ключ API в заголовке запроса.

Это кажется более безопасным, но разработчики не могут делать запросы через свой браузер. CURL требуется.

3.) OAuth

Должен признать, я мало что знаю об этом, но, похоже, очень популярен. Меня беспокоит то, что разработчикам мешает начать использовать API. Сначала они должны быть знакомы с oAuth и настроить его.

Мысли? Большое спасибо.

Ответы [ 2 ]

2 голосов
/ 21 января 2011

Если ваша задача обременяет разработчиков высокой стоимостью входа, я предлагаю базовую аутентификацию, но ваш API работает через https.

Я делаю это с Дилижент-стрит , и это работает очень хорошо. Я использую ключ API и соединяю его с секретом в качестве комбинации имени пользователя и пароля для базовой аутентификации.

0 голосов
/ 30 октября 2013

Я использовал методику, найденную здесь: Создание RESTful API . В этом решении используется хэш MD5 вашего идентификатора API , секрет API и отметка времени UNIX, передаваемая в заголовке HTTP. Этот метод аутентификации аналогичен Mashery's Authentication .

Эта ссылка ссылается и содержит полный стартовый комплект для создания API, который имеет Auth , Членство и * Измерение использования API * вместе с поддержкой EF база данных.

Что касается тестирования службы, которую вы можете использовать RESTClient для выполнения HTTP-вызовов с пользовательскими заголовками вместо использования Curl.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...