В настоящее время я разрабатываю веб-приложение, которое сейчас состоит из интерфейса, который отображает и взаимодействует с данными с помощью API REST, который мы написали. Единственное, что когда-либо будет использовать API, - это наш веб-сайт, и в какой-то момент мы разработаем мобильное приложение.Безопасность для «Private» REST API
Я много читал о том, как OAuth является идеальным механизмом защиты API, и на этом этапе я начинаю хорошо понимать, как это работает.
Мой вопрос - так как я никогда не предоставляю доступ к моему API стороннему клиенту, действительно ли нужен OAuth? Есть ли причина, по которой это выгодно? Кроме того, поскольку задний конец - это просто API, для аутентификации пользователя нет шлюза (например, если вы пишете приложение с использованием API Twitter, когда пользователь аутентифицируется, они будут направлены на страницу Twitter, чтобы предоставить доступ затем перенаправляется обратно клиенту).
Я не уверен, в каком направлении войти. Похоже, что существует некоторый подход на полпути между аутентификацией HTTP и OAuth, который был бы уместным для этой ситуации, но я просто не понимаю.
В чем преимущество использования OAuth? – brandonvvv
Вам не придется писать код аутентификации самостоятельно :), и он хорошо протестирован и надежен. С 2-мя ногами OAuth вам нужно всего лишь разделить один закрытый ключ между вашим сервером и вызывающим абонентом api, и любые snoopers не смогут понять, что это за ключ (хотя вы, вероятно, захотите запустить соединение через SSL) , – jbowes
ОК. Таким образом, идея заключается в обработке входа через API с использованием имени пользователя и пароля и подписи с использованием закрытого ключа, предоставления токена, а затем для будущих вызовов используется токен и подпись на оставшуюся часть сеанса? – brandonvvv