У нас есть веб-сайт, где единственный способ войти в систему и аутентифицировать себя с сайтом - с помощью Facebook (это не было моим выбором). При первом входе в Facebook вы автоматически создаете учетную запись.
Теперь мы хотим создать приложение для iPhone для нашего сайта, а также публичный API для других, чтобы использовать наш сервис.
Этот вопрос касается того, как аутентифицироваться с нашего сайта из приложения /API и разбивается на 2 части:
-
Каков правильный способ обработки REST-аутентификации из API на веб-сайт, который использует только функцию OAuth Facebook в качестве метода проверки подлинности?
Я прочитал и много исследовал стандартные методы аутентификации для REST API. Мы не можем использовать такие методы, как Basic Auth over HTTPS, поскольку учетные данные для пользователя как такового отсутствуют. Что-то вроде это, похоже, только для аутентификации приложений с использованием API.
В настоящее время лучшим способом я могу подумать, что вы нажмете/авторизуете конечную точку в нашем API, он перенаправляет на Facebook OAuth, затем перенаправляет обратно на сайт и предоставляет "токен", который пользователь API может использовать для аутентификации последующих запросов.
-
Для официального приложения, которое мы создаем, нам не обязательно будет использовать публичный API таким же образом. Каким будет лучший способ поговорить с нашим сайтом и подтвердить подлинность пользователей?
Я понимаю (я думаю), как аутентифицировать сторонние приложения, которые используют наш API, используя ключи API (общедоступные) и секретные (закрытые) ключи. Однако, когда дело доходит до аутентификации пользователя, который использует приложение, я довольно запутался в том, как это сделать, когда единственным способом аутентификации пользователя является Facebook.
Я чувствую, что мне не хватает чего-то очень очевидного или не совсем понимаю, как должны работать общедоступные API REST, поэтому вам будут очень благодарны любые советы и помощь.