0

谷歌搜索了几天,并没有真正找到关于 facebook / google plus 或其他网站如何验证他们的应用程序的任何答案(也许是因为这可能是一个风险,不确定但仍然找不到任何答案。 )

我正在寻找一个网站,用户可以在其中“安装”网络应用程序 - 就像 facebook / google plus 一样。例如:用户访问堆栈溢出应用程序,它请求权限并获得身份验证。

我该怎么做呢?即,如何交叉检查应用程序是否已通过用户身份验证,以及应用程序 ID 是否与正在使用的实际应用程序匹配,以防止恶意应用程序使用已知已通过身份验证的相同 ID。

我能想到的唯一方法是检查用户是否允许该应用程序。伪:"SELECT * FROM authorised_applications WHERE user_id = '123' AND app_id = '234'" 如果有,允许应用程序访问一些数据(即用户名等)。

if(mysql_num_rows(pseudo_above)=="1") { allow }

但是,如果恶意应用程序使用相同的应用程序 ID(如果我们假设它是经过身份验证的)并因此可以访问数据怎么办。

我可能会过度思考事情并让自己感到困惑,但我真的想不出该怎么做。

4

1 回答 1

0

为了对这些服务进行身份验证,他们使用 OAuth。我建议阅读这篇很棒的文章:

http://hueniverse.com/2007/10/beginners-guide-to-oauth-part-ii-protocol-workflow/

据我了解,您希望为您的 Web 应用程序设置类似的东西。我没有将 OAuth 与 PHP 结合使用,但我很肯定有很多资源可以使用它。

于 2012-08-07T16:01:43.120 回答