Я работаю над кластером SANDBOX и новым приложением, созданным мной в MongoDB Stitch.
Мне нужно понять «Проверка подписи полезной нагрузки» в приложении MongoDB Stitch.Допустим, мне нужно создать API REST GET, который будет получать список продуктов, но этот вызов API должен быть аутентифицирован, т.е.только зарегистрированные / аутентифицированные пользователи смогут сделать этот вызов.MongoDB Stitch предлагает ниже сделать это:
https://docs.mongodb.com/stitch/services/webhook-requests-and-responses/#webhook-verify-payload-signature
Но мне нужно понять:
image1
(1) Где добавить это ТЕЛО И СЕКРЕТ?Насколько мне известно, он должен храниться в приложении для стежков, так как вы не должны предоставлять какой-либо из своих секретных ключей в javascript на стороне клиента.
(2) {"message": "MESSAGE"} это настраиваемый?если да, какое значение мы должны здесь добавить?
image2
Эта функция должна быть закодирована в приложении MongoDB Stitch.Это понятно.Эта функция возвращает «хеш» на основе «тела» и «секрета», которые вы передали на предыдущем шаге.
И теперь вы должны передать этот хеш в запросе API:
image3
Теперь вопрос:
Вы можете легко увидеть любой запрос, который передается на сервер в инструментах разработчика, любой может легко скопировать его и передать его через POSTMAN.Итак:
-> Как защитить свои запросы?(К вашему сведению: я также добавил «ПРАВИЛА», говоря, что этот запрос должен выполняться только в том случае, если имя домена содержит, скажем, www.mysite.com. Но я могу успешно выполнить запрос с localhost.)
-> Если кто-нибудь может скопировать и вставить мой запрос в POSTMAN и запустить его.Итак, в чем смысл генерации этого HASH?
-> Как сохранить токены моих запросов активными / действительными в течение ограниченного периода времени, скажем, запрос действителен только в течение следующих 5 минут?(я имею в виду, как мне сделать это в приложении Stitch? Где этот вариант?)
-> Как получить токен обновления?И даже если я получу его каким-то образом, как мне повторно передать его в запрос?
Все такие запросы НЕ UN_ANSWERED в документации по MongoDB Stich: https://docs.mongodb.com/stitch/
В основном я хочу понятьполный жизненный цикл любого запроса GET / POST / PUT / PATCH / DELETE API MongoDB Stitch / API REST Stitch.
Если кто-то использовал MongoDB Stich, пожалуйста, объясните мне.