在iPhone应用程序和第三服务器中的FB身份验证

时间:2012-08-22 10:34:41

标签: php ios authentication restful-authentication

我的公司正在开发一个如下工作的系统:

有一个iphone /移动应用程序和一个提供休息服务的php服务器。

在移动应用中,用户可以通过两种方式注册/登录:

  1. 用户名/密码情侣
  2. facebook account
  3. 虽然第1点非常清楚,但我对第2点有困难:

    据我所知,序列应如下所示:

    1 - 应用程序发送给fb用户数据,fb以某种方式我不在乎验证用户并回答“好,这是你”。 2-应用程序现在必须向php服务器请求一些用户数据。

    在用户在应用程序中使用fb登录后,如何验证服务器和应用程序之间的通信?

    我不能只问“向我发送用户fbid的数据”,因为有一个可以被任何人检索的简单请求。

1 个答案:

答案 0 :(得分:4)

这就是你使用“密钥”(facebook设置的一部分)的原因。

当用户通过您的应用登录时,他们会批准与您的应用共享信息并获得令牌 - 令牌是会话ID。该会话ID只能由该用户使用该手机与您的应用程序一起使用 - 除非您拥有“密钥”。

然后,手机会将该会话ID传递给服务器。

然后,服务器将令牌与密钥一起传递,并且facebook向服务器返回与用户在电话上相同的信息。这就是它的认证方式。

其他人(手机上的用户除外)没有密钥,而且令牌没用。