问题标签 [oauth-2.0]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
572 浏览

oauth-2.0 - LROAuth2Client 集成

我正在尝试将 OAuth2 集成到我的 iPhone 应用程序中。

我想使用 LROAuth2Client ( https://github.com/lukeredpath/LROAuth2Client )。

虽然有一个演示(https://github.com/lukeredpath/LROAuth2Demo),但我不知道如何从头开始重新创建这个示例(基本上是在集成方面苦苦挣扎)。

请帮忙。谢谢。

0 投票
2 回答
1643 浏览

grails - IOS的foursquare oauth2

我从 v1foursquare api 升级到需要 Oauth2 的 v2。

使用推荐的 Web 服务器流程是否正确,我应该将用户定向到: https : //foursquare.com/oauth2/authenticate ?client_id=YOUR_CLIENT_ID &response_type=code &redirect_uri=YOUR_REGISTERED_REDIRECT_URI

一旦用户通过身份验证,foursquare 将重定向到: https://YOUR_REGISTERED_REDIRECT_URI/?code=CODE

这意味着我需要在https://YOUR_REGISTERED_REDIRECT_URI定义一个端点,然后它将向

https://foursquare.com/oauth2/access_token ?client_id=YOUR_CLIENT_ID &client_secret=YOUR_CLIENT_SECRET &grant_type=authorization_code &redirect_uri=YOUR_REGISTERED_REDIRECT_URI &code=CODE

在我的服务器端获取实际令牌。

此流程如何将令牌返回到移动设备以供使用?

谢谢您的帮助。

0 投票
1 回答
510 浏览

ruby-on-rails - 服务器无法使用 authlogic-oauth2 启动

我在 gemfile 中包含了 oauth2 和 authlogic-oauth2,因为我想使用它们并尝试启动服务器。它没有启动并给我错误:

我正在使用 Rails 3.0.3 和 Ruby 1.8.7。在我添加之前,服务器似乎开始正常

到 Gemfile。

0 投票
0 回答
2131 浏览

javascript - OAuth2 用户代理流程 + 两条腿的 OAuth

我对 OAuth2 的用户代理流程有 2 个问题。(OAuth2 的用户代理流程的当前 RFC 草案在这里: https ://datatracker.ietf.org/doc/html/draft-ietf-oauth-v2-11#section-2.2 )

1)

步骤 C:必须在片段中给出访问令牌,因为只有用户代理(浏览器)才能访问它。为什么它会到达服务器端(如果有任何服务器端)会出现这样的问题,还有一些简单的解决方法,以便客户端可以将它传递给服务器端(cookie、隐藏字段、. ..)

2)

我想实现 OAuth2 用户代理流程,但是使用两条腿的版本(request_token 就足够了,消费者应用程序可以充当他的用户,因此无需在服务提供商处对用户进行身份验证)

OAuth2 的用户代理流程和两条腿的版本相结合,我有一个主要的安全漏洞:

Web 浏览器处理所有重定向。这意味着即使服务提供商认为它将用户发送到指定的主机和域,该主机和域对于用户重定向到他们自己的机器或任何地方都是微不足道的,通过调整他们的 DNS 设置或 /etc/hosts文件。

让我们看看 3-legged 和 2-legged 版本:

  • 使用 3-legged OAuth 这不是一个主要问题,因为用户仍然需要在服务提供商处进行身份验证。攻击者可能会设置一个通向他的机器的虚假域,但他仍然需要用户的凭据。他可以将用户引诱到他的域,但他必须做出域查找的结果(由用户的用户代理完成),他只能通过访问用户的机器来做到这一点(这更困难)

  • 然而,使用 2-legged OAuth:攻击者可以轻松地使用无辜消费者应用程序的域设置 localhost (/etc/hosts) 并获取 request_token。用户与它无关。攻击者现在可以代表无辜消费者应用程序的所有用户进行调用。有谁知道如何确保这个差距?

问候,基卢斯

0 投票
3 回答
2192 浏览

php - 是否有任何 php 类或库来处理 oAuth 2.0?

在我为 Facebook 和 oAuth 2.0 编写包装器之前,我想知道是否有人知道其他人已经使用过的任何代码。

0 投票
2 回答
1982 浏览

facebook - 从移动应用程序使用 Facebook Graph API

我在 Facebook(以及少数几个俄罗斯社交网络)有一个小型纸牌游戏,它通过旧的 REST API 获取用户的 id、名字和头像。

现在我正在尝试使用适用于 Android 和 iPhone的Flex Hero SDK开发与移动应用程序相同的游戏。这意味着我不能为这些平台使用本机 SDK,但必须使用Facebook page 中描述的 OAuth

替代文字

我正在尝试编写一个简短的 PHP 脚本,它将用户信息作为 XML 返回到我的移动应用程序。我的脚本已经可以获取令牌:

这很好用,我取回了令牌:

但是我现在如何使用这个令牌来查找用户的姓名和头像,尤其是我对如何获取当前用户 ID 感到困惑?

在使用 REST API 时,我总是通过调用知道当前用户 ID$userid=$fb->require_login()

0 投票
6 回答
41798 浏览

facebook - 过期后刷新Facebook OAuth2访问令牌的正确方法是什么?

据我了解,简而言之,这是使用 OAuth2 API 的新 Facebook iframe 画布应用程序的基本过程:

  1. 重定向到(或让用户单击链接到)应用的授权 URL
  2. 用户授权并被重定向到您的回调 URL
  3. 回调使用“code”参数获取访问令牌
  4. 访问令牌与 Graph API 一起用于拉取或推送信息

问题是访问令牌过期相对较快并且需要“刷新”,所以我的问题是 1)除了尝试使用令牌并简单地收到错误之外,您如何检测令牌已过期?2) 获得新令牌的最佳做法是什么?

目前,我只是检测到尝试使用他们的访问令牌获取用户信息时出错,然后再次重定向到授权 URL——因为他们已经授权了应用程序,一个空白页面闪过,他们被重定向回我的应用程序回调我得到一个新令牌的地方。它太笨重了,我不敢相信这是正确的方法。

0 投票
1 回答
355 浏览

oauth - 使用 OAuth 登录

我有一个具有登录功能(myapp)的.net Web 应用程序(asp 和c#),我想在名为secondApp 的第二个应用程序中使用OAuth 实现“使用myapp 登录”按钮。你有服务器(myapp)和客户端(secondApp)的好例子吗?我找不到任何简单的在线工作...

谢谢!

0 投票
1 回答
2711 浏览

jersey - 关于与 Jersey 集成的 OAuth2 库的建议?

我正在努力使用 OAuth2 向其他客户提供 Jersey Web 服务,并且很难找到与 Jersey 很好地结合的库。到目前为止,我已经查看了以下库。

http://static.springsource.org/spring-security/oauth/support.html

我们让演示工作,但不想使用弹簧安全。

https://labs.ericsson.com/apis/oauth2-framework/downloads

这与 RESTLet 紧密相关。

http://wiki.apache.org/incubator/AmberProposal

我们看了一眼,但很难说出项目的状态。

https://bitbucket.org/smartproject/oauth-2.0/wiki/Home

我们也刚开始研究这个。

我们的主要目标是与作为资源提供者的 Jersey 进行简单集成。

0 投票
2 回答
9712 浏览

python - python中的oauth2

我正在寻找从 python 发送推文的脚本(例如这里),但是当我尝试调用时

我只是得到这个错误:

ImportError:没有名为 oauth2 的模块

我从哪里可以得到这个模块?谢谢