Аутентификация RESTful API

Я нашел довольно много вопросов по этой теме на SO, но не смог найти ответа на этот вопрос:

Должен ли я проверять пользователей с их именем пользователя и паролем или с помощью API ключ? И каковы плюсы и минусы каждого метода.

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

ОБНОВЛЕНИЕ

Если другим читателям интересно, что я в итоге использовал, я решил скопировать, как Amazon выполняет их проверку (хорошее объяснение здесь : https: //www.ida .liu.se / ~ TDP024 / labs / hmacarticle.pdf )

16
задан OhadR 18 June 2017 в 19:36
поделиться