Я столкнулся с множеством статей, и многие из них предлагают использовать OAuth over API Key. По моему мнению, в OAuth мы наконец получаем токен доступа, и он действителен в течение многих дней. Одним из примеров является то, что токен онлайн-токена QuickBooks действителен в течение 6 месяцев.OAuth (токен доступа) Vs API Key
Итак, токен доступа эквивалентен ключу API. Тот, кто получает его, должен иметь такую же защиту, как API Keys. И вызовы OAuth должны выполняться через HTTPS, аналогичные вызовам на основе API Key.
Еще одно преимущество перед OAuth - авторизация. Но мы можем сделать то же самое с моделью API Key. Например, мы можем определить правила в нашей базе данных, такие как эти ключи могут получить доступ к этим API.
Теперь, каково реальное преимущество OAuth? Если мы реализуем OAuth, мы должны попросить всех наших клиентов установить библиотеки поддержки OAuth на своем сервере. И это сложная задача для них, а также для нас. В то время как в модели API Key это простой веб-звонок без каких-либо дополнительных библиотек и сложностей.
Мое намерение - это просто понять OAuth лучше, а не сравнивать & спорить с API-моделью.
Примечание:
Я не говорю о Google & LinkedIn вид модели, где пользователи должны видеть и давать разрешения. Я просто говорю о API, которые мы предоставляем нашим собственным клиентам.
Спасибо за вашу помощь заранее.
Я думаю, что кто-то уже задал этот вопрос http://stackoverflow.com/questions/6767813/api-keys-vs-http-authentication-vs-oauth-in-a-restful-api –
Да. Все описание этого ответа в моем вопросе. Тогда почему еще OAuth? Действительно ли это полезно только для такого подхода Google - LinkedIn? И это не имеет реальных преимуществ в небольшой клиентской базе? – user10