У меня есть сборка api с node.js & express.js. На данный момент у меня есть незащищенный api, где каждый может GET, POST, PUT, DELETE записи.Как защитить мой REST-API?
У меня возникает следующая проблема. Мой отдых api не должен аутентифицировать пользователей, а приложений. Например. мое мобильное приложение должно иметь действительный токен для доступа к api. То же самое для веб-приложения.
Другой случай пользователя: мой api будет использоваться другим приложением, которое использует только один вызов для отдыха. Так что где-то в коде, который я не знаю в приложении, которое я не знаю (для большей части), будет вызван вызов для отдыха на моем api. Как я могу защитить такой доступ, поскольку не используются куки-файлы или сеансы?
Моя первая мысль была, создать пользователя и пароль. Каждый вызов api (через https) должен содержать учетные данные. Пароль может быть хэширован. Однако я прочитал это
логины и пароли, сеансовые маркеры и ключи API не должны появляться в URL, так как это может быть захвачен в журналах веб-сервера и делает их самоценным.
из https://www.owasp.org/index.php/REST_Security_Cheat_Sheet
Любые предложения по этому поводу? Я читал о oauth, но это связано с перенаправлением, и я не могу представить, как это будет работать с мобильным приложением, например. на андроиде.