我有移动在线游戏,我的服务器需要播放器的user_id。但Facebook只给我access_token来从用户帐户请求数据,并且不提供签名的user_id。拥有SIGNED user_id非常重要,因此只有将请求中的user_id替换为我的服务器,其他用户才能伪装成另一个用户。客户端上的Siging不安全,因为任何关心的人都可以在客户端二进制文件中找到密钥。
所以现在我必须在身份验证过程中创建中间步骤 - 使用access_token向我的服务器请求,而access_token又要求facebook提供用户信息(这是sloooow并取决于我的服务器地理位置(常量),而不是客户端),创建使用MY_SERVER_PRIVATE_KEY + user_id签名,并将其发送回客户端。这不是一个大问题,但在身份验证期间会产生延迟。
我错过了什么吗?是否无法从使用我的应用程序密钥签名的facebook接收user_id?
答案 0 :(得分:0)
除非用户已首先连接到您的应用,否则您无法获得已签名的用户ID。因此,您必须在应用程序中使用客户端或服务器端Auth流程。