0

我有手机在线游戏,我的服务器需要玩家的 user_id。但是 facebook 只给我 access_token 从用户帐户请求数据并且不提供签名的 user_id。拥有已签名的 user_id 很重要,这样其他用户就不能通过替换对我的服务器的请求中的 user_id 来假装是另一个用户。在客户端上签名并不安全,因为任何关心的人都可以在客户端二进制文件中找到密钥。

所以现在我将不得不在身份验证过程中创建中间步骤 - 使用 access_token 向我的服务器请求,这反过来又向 facebook 请求用户信息(这很慢,取决于我的服务器地理位置(常量),而不是客户端),使用 MY_SERVER_PRIVATE_KEY 创建签名+ user_id,并将其发送回客户端。这不是一个大问题,但在身份验证期间会产生延迟。

我错过了什么吗?是否无法从使用我的应用程序密钥签名的 facebook 接收 user_id?

4

1 回答 1

0

除非用户先连接到您的应用程序,否则您无法获取签名的用户 ID。因此,您必须在应用程序中使用客户端或服务器端身份验证流程。

Facebook 上的应用程序身份验证流程文档

于 2012-10-15T05:55:45.987 回答