服务器必须做的事情; 只需检查任何访问令牌的有效性.
客户端向FB服务器发送FB.getLoginStatus获取的用户ID和访问令牌.
正如我所料,会有任何url检查访问令牌的有效性,例如
http://xxx.facebook.com/access_token?=xxxxxxxxxxxxxxxxxxxxxxxxxxxx
返回它是否可用.
或者是否有任何API(服务器端)?
我找到了这个问题,它有一个答案,但从那时起facebook改变了令牌格式,现在它是这样的:
AAACEdEose0cBACgUMGMCRi9qVbqO3u7mdATQzg[more funny letters]ig8b3uss9WrhGZBYjr20rnJu263BAZDZD
Run Code Online (Sandbox Code Playgroud)
简而言之,你无法从中推断出任何东西.我还找到了访问令牌调试器,它显示了我正在寻找的信息,如果你粘贴一个令牌,这很好,但不能帮助我以编程方式进行.
重点是,如果有人为用户获取令牌,他可以使用它来访问图表,这就是我在我的应用程序中所做的事情 - 我想确保人们转发我的应用程序发给他们的令牌,而不是另一个.
我的申请流程是:
我的应用程序是安全的,无论facebook如何,访问完成也都经过身份验证,但是!在这个流程中,我发现的弱链接是我无法验证我获得的访问令牌是否已经为我的应用程序签名 - 我不喜欢它,因为我将令牌缓存用于离线使用,我希望100%确定它们是我的应用程序,具有我的权限.
那么验证我获得的令牌与我的应用程序相关的(最佳)方式是什么(与用户的关系,我使用令牌来访问/我并查看此令牌用于哪个用户)
我不需要解密令牌(我猜它是某种AES),我只是在找一个会告诉我令牌与我的应用程序ID匹配的端点.
(编辑:使用C#SDK,如果重要..但是图形/休息调用以提供该信息同样好:))
我有一个iOS,它使用OAuth和OAuth2提供商(Facebook,谷歌,推特等)来验证用户并提供访问令牌.除了名称和电子邮件地址等最小数据外,应用程序不会将这些服务用于除身份验证之外的任何其他服务.
然后,应用程序将访问令牌发送到服务器,以指示用户已通过身份验证.
服务器是用Node.js编写的,在做任何事情之前,需要根据正确的OAuth*服务验证提供的访问令牌.
我一直在环顾四周,但到目前为止,我发现的所有node.js身份验证模块似乎都是用于登录并通过服务器提供的网页进行身份验证.
有没有人知道任何可以对提供的访问令牌进行简单验证的node.js模块?
我想用Facebook登录实现一个iOS应用程序.我希望我的应用的用户能够与他们的社交图进行交互(即发布到他们的流).为此,我将使用Facebook iOS SDK.
当用户已经通过Facebook进行身份验证时,他们也应该能够在我的应用程序的服务器端使用某些服务.如何根据服务器上的服务验证用户?
在我的iOS应用程序中,我可以使用iOS Facebook SDK查询访问令牌(对于我的Facebook应用程序).我应该将该访问令牌与facebook用户ID一起发送到我的服务器吗?服务器可以验证访问令牌是否有效吗?或者只应该我的iOS应用程序与Facebook API进行通信?服务器可以发布到我的Facebook墙上,还是应该通过iOS应用程序完成?
我正在开发基于与服务器通信的iPhone应用程序,我想使用Facebook身份验证机制.
基本上,我认为它应该像这样工作:
我的问题是:如果给定的访问令牌有效,服务器应该如何询问Facebook?我想我应该以某种方式检查令牌是否对我的Facebook应用程序有效.
我已经尝试了很多Facebook查询到图形API,我发现,但没有任何工作像我预期的那样.你能举个例子吗?