问题标签 [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 投票
1 回答
4097 浏览

asp.net-mvc - 在 .NET 中使用 FB Connect / Google OAuth 登录

我想允许我的用户使用我的登录系统、FB Connect 或 Google 登录来登录我的网站。我不想只为这两个选项使用大型库(如 dotnetOpenAuth) - 那么我应该如何实现呢?

附加问题 - 我应该如何将 FB/Google 用户绑定到我的内部用户系统?我想允许同时使用它们登录(例如,我可以使用 FB 登录,然后使用 Google 登录,并且仍然绑定到同一个用户)。

我正在使用 ASP.NET MVC 2

谢谢!

0 投票
2 回答
760 浏览

authentication - 在使用 OpenID、OAuth 和/或 OAuth 2.0 进行身份验证时评估每个请求的登录状态

我正在为我的网站构建一个扩展的登录/注册区域,其中包括 OpenID、OAuth (Twitter) 和 OAuth 2.0 (Facebook) 登录选项。

一旦用户成功通过身份验证并且我已经将他们的访问令牌存储在我的数据库中并编写了一个将用户链接到他们的登录状态的 cookie,我应该使用什么最佳实践来确定用户的访问令牌仍然有效?似乎必须为对我网站的每个请求调用身份验证提供程序会减慢用户的速度,我无法想象其他网站正在这样做。

我的猜测是我应该存储一个仅对当前浏览器会话有效的 cookie,因此当用户关闭浏览器时该 cookie 将过期,从而强制在下一个请求时生成一个新的访问令牌(以及一个新的 cookie 匹配)。如果用户明确注销,我也会提前使 cookie 过期。

我唯一的问题当然是,例如,如果用户在一个选项卡中打开我的网站,然后他们在另一个选项卡中打开他们的身份验证提供程序并退出该网站,但继续浏览我的网站,他们不会退出我的网站,即使从技术上讲,他们应该能够使用第三方提供商退出。

这是那些“无关紧要”的场景之一,还是我以错误的方式处理整个事情?

0 投票
10 回答
243719 浏览

oauth-2.0 - OAuth 2 如何使用安全令牌防止诸如重放攻击之类的事情?

据我了解,以下事件链发生在 OAuth 2 中Site-A以便从.Site-B

  1. Site-A在 上注册Site-B,并获得一个 Secret 和一个 ID。
  2. 用户告诉Site-A访问Site-B时,用户被发送到Site-B他们告诉Site-B他们确实想Site-A授予特定信息权限的地方。
  3. Site-B将用户重定向回Site-A,以及授权码。
  4. Site-A然后将该授权代码连同其秘密一起传递回以Site-B换取安全令牌。
  5. Site-A然后通过将安全令牌与请求捆绑在一起来Site-B代表用户发出请求。

所有这些在安全和加密方面是如何工作的?OAuth 2 如何使用安全令牌防止诸如重放攻击之类的事情?

0 投票
2 回答
21729 浏览

ruby - “验证客户端密码时出错。” 404 与 Facebook Oauth 和 ruby

在用户允许 facebook auth 并使用令牌重定向到我的应用程序回调后,我正在尝试为带有 Warden 的应用程序实现 facebook 身份验证,我在使用 api 时得到 400。我的典狱长策略是这样的:

打印响应正文的结果是这样的:

我很确定 app id 和 app secret 是 FB 提供的。

谢谢。

0 投票
2 回答
474 浏览

facebook - 获得 access_token 后,如何获取关联的 user_id 服务器端?

我知道我可以要求:

但是“我”指的是“活动用户”,大概是在这台机器上登录到 facebook 的用户,这将是服务器,我需要客户端端 user_id 的 facebook 用户,所以我的服务器可以向 GraphAPI 提出关于该用户使用以下格式:

0 投票
2 回答
2319 浏览

facebook-graph-api - 将 Facebook 集成添加到 Web 应用程序时,您如何处理 OAuth 令牌过期以及应保存哪些用户数据?

我正计划将 Facebook 集成添加到我正在开发的网络应用程序中。在大多数情况下,它进展顺利,但我对处理 OAuth 令牌的正确方法感到困惑。

Facebook在这里展示的事件顺序是:

  1. 要求用户授权您的应用程序,这会将他们发送到 Facebook 窗口。
  2. 这将返回 Facebook 生成的授权码
  3. 然后,您使用您的授权码点击https://graph.facebook.com/oauth/access_token,这将为您提供一个有时间限制的 OAuth 令牌。
  4. 使用 OAuth 令牌,您可以请求访问用户的 Facebook 个人资料。

Facebook 的文档对令牌过期有以下说法:

除了访问令牌(access_token 参数)之外,响应还包含令牌过期前的秒数(expires 参数)。令牌过期后,您将需要重新运行上述步骤以生成新代码和 access_token,但如果用户已经授权您的应用程序,则不会再次提示他们这样做。如果您的应用需要一个无限期的访问令牌(可能在用户不使用您的应用后代表用户执行操作),您可以请求offline_access 权限。

当他们说重新运行上述步骤时,需要重新运行哪些步骤才能获得新的 OAuth 令牌?将哪些数据(Facebook UID、授权码、OAuth 令牌)保存到我的本地数据库有意义?

我希望能够让用户继续与我的网站进行交互,并且为了响应某些用户操作,我希望能够提示用户是否想在他们的 Facebook 墙上发布内容。

0 投票
1 回答
2223 浏览

facebook - Facebook C# SDK 4.2.1 在墙上发布问题

您好,当我尝试在用户墙上发布内容时遇到问题。这是我的代码

当我尝试发布时,我得到:

(OAuthException) 必须使用活动访问令牌来查询有关当前用户的信息。

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:Facebook.FacebookOAuthException:(OAuthException) 必须使用活动访问令牌来查询有关当前用户的信息。

附言

工作没有问题!

提前致谢。

0 投票
3 回答
8339 浏览

java - 是否有 OAuth 2 服务器端 PHP 或 Java 实现?

如果有不止一种实现,哪一种更好/维护最多?

专门针对 OAuth 2.0 Draft 12。

0 投票
1 回答
589 浏览

java - 在 Netflix 上使用路标 API 的 OAuth 出现问题 - OAuthCommunicationException

我试图从retrieveRequestToken 路标API 获取Auth_url。它抛出 OAuthCommunicationException。当我对 twitter 使用相同的代码时(在更改消费者和提供之后),它可以正常工作。请在这里帮助我。谢谢

0 投票
1 回答
1374 浏览

oauth - oauth 2 提供商 - 需要为客户提供 api 密钥和应用程序 ID?

我正在实现一个 OAuth 2 提供程序,并且想知道在客户向我的提供程序注册应用程序时是否有必要为他们生成 API 密钥和客户端 ID。

从 Google 和 Twitter 等 OAuth 1.0a 提供商来看,他们只有一个用于客户端的密钥,但 Facebook (OAuth 2) 同时具有 API 密钥和应用程序 ID,但在 OAuth 中使用应用程序 ID 作为“client_id”参数2 舞蹈。

我很确定 OAuth 1.0a 和 OAuth 2 规范都没有为客户端指定多个密钥。

我不确定提供商需要在什么情况下为客户端应用程序生成两者。