如何使用PHP以安全的方式从第三方Web应用发出POST请求?

时间:2018-09-11 21:47:17

标签: php rest security oauth http-post

我有一个网站,用户可以在其中进行各种活动。 接收这些积分的方法之一是从允许我发送它们的第三方应用程序中获得。

我希望仅当用户在两个站点上登录时才分配积分。因此,流程如下所示:

  1. 用户位于第三方网站上,并提交“索取我的积分”表格(此时,积分的数量,用户ID和发送的合作伙伴(谁)的ID);
  2. 如果用户尚未登录,则会将其重定向到我的网站并显示一个“登录”表单,否则(或在成功认证之后)将分配分数。

我的挑战是弄清楚使数据发送到我的网站的最佳方法(我将指导发件人/第三方应用程序如何做)是足够安全的,因此没有人可以伪造积分转让。尤其是其中一个参数是点数,我想如果有人了解POST请求的样子,就像他可以伪造该参数一样。

我一直在研究OAuth2 Client credentials grant,但不确定OAuth2是否适合我想要实现的目标,或者可能是? 事实是,OAuth2会在我的流程中再增加一步:

  • 第三方(请求访问令牌)->

  • 主应用程序(登录和释放令牌)->

  • 第三方(接收访问令牌)--->
  • 主应用程序(通过验证令牌进行POST请求)但是,仍然可以伪造所有参数吗?

那么,从第三方应用发出一些安全的POST请求的最佳方法是什么?

0 个答案:

没有答案