用PHP和MySQL实现两足OAuth

时间:2013-03-28 17:35:45

标签: php mysql api oauth

我想为自己的移动应用程序创建一个Api来访问存储在MySQL数据库中的数据。但是我读了很多关于3脚OAuth方法的文章,我认为这不是我想要的解决方案。当我正确理解时,例如我创建一个新的Twitter客户端并想要使用twitter Api时,三脚法更有用。

但我的应用不是第三方应用,我的应用和网站包括。数据库来自我。所以我假设,用户启动应用程序输入他的用户ID和密码,然后api有一个功能,检查用户ID / pw是否正确,并将“true”作为结果发送回应用程序。该应用程序然后为用户提供访问需要登录的功能的可能性。因此,不应将用户重定向到网站并“允许”访问userid / pw。

如果我理解正确的话,两条腿的方法更有可能达到我的目的。但我也对此感到困惑。我假设用户输入了他的id和pw,这些凭据由Web服务在数据库中查找,将在数据库中为该用户查找令牌并将其发送到应用程序。此外,app-token从一开始就保存在应用程序中,并随请求一起发送。该应用程序将在内部从数据库中保存此用户令牌,并且每次用户对Web服务执行某些操作时都将使用此令牌。对Web服务的每个请求都会将令牌发送到服务,服务会检查令牌是否有效,否则会向应用程序发送错误。

我查了一下这个例子: http://code.google.com/p/oauth-php/wiki/ConsumerHowTo#Two-legged_OAuth

但没有提到在数据库中查找用户的用户ID / pw ......

任何人都可以解释我如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

双腿OAuth与Client-Server类似。它是一个客户端应用程序,请求从服务器完全访问数据。无论哪个用户正在访问客户端

,客户端都可以完全访问其凭据所允许的所有数据

三脚OAuth是用户 - 客户端 - 服务器。它是一个客户端,要求从服务器访问用户的数据。客户端只能访问授权用户的数据(直到用户撤销访问权限)。