当客户端要求资源服务器获取具有OAuth 2.0访问令牌的受保护资源时,此服务器如何验证令牌?OAuth 2.0刷新令牌协议?
可能重复:
OpenID和OAuth之间有什么区别?
OpenID和oAuth之间的真正区别是什么?他们看起来和我一样.
我应该澄清,我打算在drupal中使用它们,如果这有任何区别的话.所以我想我受到drupal中可用的任何模块实现的约束.
使用OAuth协议时,您需要从要委派的服务获取的秘密字符串.如果您在Web应用程序中执行此操作,则可以将秘密存储在数据库或文件系统中,但在移动应用程序(或桌面应用程序)中处理此问题的最佳方法是什么?
在应用程序中存储字符串显然不是很好,因为有人可以很容易地找到并滥用它.
另一种方法是将其存储在您的服务器上,并让应用程序在每次运行时获取它,而不是将其存储在手机上.这几乎一样糟糕,因为您必须在应用程序中包含URL.
我能想到的唯一可行解决方案是首先正常获取访问令牌(最好使用应用程序内部的Web视图),然后通过我们的服务器路由所有进一步的通信,这将秘密附加到请求数据并进行通信与提供者.再说一次,我是一个安全菜鸟,所以我真的很想听听一些知识渊博的人对此的看法.在我看来,大多数应用程序都没有这么长时间来保证安全性(例如,Facebook Connect似乎假设您将秘密放入应用程序中的字符串中).
另一件事:我不相信最初请求访问令牌的秘密,所以可以在不涉及我们自己的服务器的情况下完成.我对么?
我正在尝试测试oauth按钮,但他们都(Facebook,Twitter,LinkedIn)回来时出现的错误似乎表明我无法测试或使用本地网址.
如果人们似乎都需要非开发和非本地连接环境,那么人们通常如何使用oauth工作进行开发?
我正在玩Facebook上的Oauth 2.0授权,并想知道Facebook传递的访问令牌是否会过期.如果是这样,有没有办法请求长期访问令牌?
如何验证Google身份验证访问令牌?
我需要以某种方式查询Google并询问:[给定访问令牌]是否对[example@example.com] Google帐户有效?
简短版本:
很清楚如何使用通过Google身份验证Api :: OAuth身份验证的Web应用程序提供的访问令牌,然后从一系列Google服务中请求数据.目前尚不清楚如何检查给定的访问令牌是否对给定的Google帐户有效.我想知道怎么做.
长版:
我正在开发一个使用基于令牌的身份验证的API.在提供有效的用户名+密码或从N个可验证服务中的任何一个提供第三方令牌时,将返回令牌.
其中一项第三方服务是Google,允许用户使用其Google帐户对我的服务进行身份验证.稍后将扩展到包括雅虎帐户,可信赖的OpenID提供商等.
基于Google的访问的示意图:
alt text http://webignition.net/images/figures/auth_figure002.png
"API"实体完全由我完全控制."公共接口"实体是任何基于Web或桌面的应用程序.一些公共界面在我的控制之下,其他公共界面不在我手中,而其他公共界面我甚至都不知道.
因此,我无法信任在步骤3中提供给API的令牌.这将与相应的Google帐户电子邮件地址一起提供.
我需要以某种方式查询Google并询问:此访问令牌是否对example@example.com有效?
在这种情况下,example @ example.com是Google帐户的唯一标识符 - 用户登录其Google帐户时使用的电子邮件地址.这不能被视为Gmail地址 - 有人可以拥有一个没有Gmail帐户的Google帐户.
Google文档明确说明了如何通过访问令牌从多个Google服务中检索数据.似乎没有任何东西可以说明如何在一开始就检查给定的访问令牌是否有效.
更新 令牌对N个Google服务有效.我不能尝试使用Google服务的令牌作为验证它的方法,因为我不知道给定用户实际使用的所有Google服务的哪个子集.
此外,我永远不会使用Google身份验证访问令牌来访问任何Google服务,仅仅是为了验证所谓的Google用户实际上是他们所说的人.如果还有另一种方法,我很乐意尝试.
我将使用oAuth从谷歌获取邮件和联系人.我不想每次都要求用户登录以获取访问令牌和密码.根据我的理解,我需要将它们与我的应用程序一起存储在数据库中SharedPreferences.但我有点担心安全问题.我读过你可以加密和解密令牌,但是攻击者很容易反编译你的apk和类并获得加密密钥.
在Android中安全存储这些令牌的最佳方法是什么?
如何在google oauth2 redirect_uri中添加参数?
就像这样redirect_uri=http://www.example.com/redirect.html?a=b.
该b的a=b是随机的.
有人可以帮忙吗?
我有一个Facebook页面,我想从中获取一些东西.第一件事是提要,从我读到的它们是公开的(不需要access_token).但是我也希望得到这些事件......它们不是公开的,需要access_token.
我不希望用户登录Facebook或类似的东西.我只是想从这个唯一的页面推送所有数据.这就是为什么我已经放弃了我在这里找到的许多例子以及https://developers.facebook.com/blog/post/500/上的例子,因为他们希望用户登录或需要一些用户操作我并不感兴趣.
我想要的是我的Facebook应用程序具有完全授权和access_token来推送我拥有的这个Facebook页面(管理员)的数据.这可能吗?我已经尝试了很多东西但似乎没什么用.
我试着点击这个:https://www.facebook.com/dialog/oauth? client_id = 150635421702954 & redirect_uri = http : //MY_URL/& scope = manage_pages & response_type = token & fields = access_token - 将MY_URL更改为我的网站,并请求授权编辑每个我拥有的页面.甚至不是我想要的我点击但没有access_token作为回报...
facebook oauth facebook-page facebook-graph-api access-token
是否有其他人难以获得Twitters oAuth的回调URL以访问他们的localhost开发环境.显然它最近被禁用了.http://code.google.com/p/twitter-api/issues/detail?id=534#c1
有没有人有解决方法.我真的不想阻止我的发展
oauth ×10
android ×2
facebook ×2
security ×2
access-token ×1
api ×1
google-api ×1
google-oauth ×1
iphone ×1
mobile ×1
oauth-2.0 ×1
openid ×1
preferences ×1
token ×1
twitter ×1
web-services ×1