У меня есть веб-сайт, на котором у пользователей есть очки для выполнения различных действий.
Один из способов получить эти баллы - от сторонних приложений, которые я разрешаю отправлять.
Мне бы хотелось, чтобы точки назначались только тогда, когда пользователь вошел на оба сайта. Итак, поток будет выглядеть так:
- Пользователь находится на стороннем веб-сайте и отправляет форму «Получите мои баллы» (на данный момент отправляется сумма баллов, идентификатор пользователя и идентификатор партнера (от кого));
- Пользователь перенаправляется на мой веб-сайт и получает форму входа в систему, если он еще не вошел в систему, в противном случае (или после успешной аутентификации) баллы будут назначены.
Моя задача состоит в том, чтобы выяснить, как лучше всего сделать отправленные данные (я покажу, как это сделать отправителю / стороннему приложению) на мой веб-сайт, чтобы никто не мог подделать перевод баллов. В частности, одним из параметров будет количество очков, и я думаю, что если кто-то понимает, как выглядит запрос POST, он просто может подделать этот параметр.
Я искал OAuth2 Предоставление клиентских учетных данных но я не уверен, что OAuth2 соответствует тому, чего я хочу достичь, или, может быть, так оно и есть?
Дело в том, что OAuth2 добавит еще один шаг в мой поток:
Итак, как лучше всего сделать некоторые безопасные POST-запросы от сторонних приложений?