【问题标题】:LinkedIn OAuth2.0 Invalidate Session / Force re-authorizationLinkedIn OAuth2.0 使会话无效/强制重新授权
【发布时间】:2019-06-16 08:38:30
【问题描述】:

我刚刚在我的应用程序中从 LinkedIn 的 JavaScript SDK 迁移到他们的 OAuth2.0 授权流程,因为他们在 3 月份宣布弃用他们的 SDK。

身份验证流程按预期工作。问题是我找不到任何有关如何强制重新身份验证或使当前用户的访问令牌无效的文档。以前的 JavaScript SDK 有一个 IN.User.logout() 方法,我用来允许重新验证,而使用 OAuth2.0 流程则不可用。这会给在共享计算机/浏览器上登录的用户带来问题。

以下是我发现重新身份验证在哪里启动的一些方法,但我的应用程序无法自行完成:

  • 清除网络浏览器/LinkedIn cookie
  • 直接退出领英网站
  • 更新/更改请求的权限(不理想)

是否有人建议我如何在应用程序中强制重新进行身份验证?或者除非 LinkedIn 实现一个端点来使令牌无效,否则这是不可能的?

希望LinkedIn 的某个人能够对此发表意见,并希望开发人员在向 Stack Overflow 寻求支持时如何处理这种情况。

参考文献

更新 [2/12/19]: 我已经就这个问题直接联系了LinkedIn,他们继续把我引到这里,并坚持让我重新发布这个问题。希望LinkedIn的人仍然会看到这个,但假设它不会很快得到答复。必须假设 v2 API 中不存在失效。

【问题讨论】:

  • 除了您列出的方法之外,LinkedIn API 没有任何方法可以使访问令牌无效。
  • 有关此的任何更新
  • @Dulanga 目前没有更新。目前无法使 LinkedIn v2 api 的访问令牌无效

标签: oauth-2.0 linkedin linkedin-api


【解决方案1】:

我和你有同样的痛苦,所以我从所有可能的请求组合开始,直到我设法撤销令牌,这是请求:

curl --request POST \
  --url https://www.linkedin.com/oauth/v2/revoke \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data client_id=CLIENT_ID_HERE \
  --data client_secret=CLIENT_SECRET_HERE \
  --data token=YOUR_TOKEN_HERE

【讨论】:

  • 我希望这对某人有所帮助 - 但此命令确实有效,但它实际上从我的开发人员控制台中删除了该应用程序!因此,如果您以应用程序的所有者/开发者身份对您自己的帐户运行此命令,您实际上是在撤销对您的应用程序的访问权限并将其从您的个人资料中删除。我一开始以为 LinkedIn 管理员出于某种原因删除了我的应用程序,后来才想起我进行了这个 API 调用。如果其他人可以确认这些,请在您的回复中告知。谢谢。
  • 事实上你是对的! :) 我的控制台中有几个应用程序,是的,我已经撤销令牌的那个已经消失了。我以为 Linkedin 出于某种原因删除了它,而且由于我有备份,所以我并没有那么困扰。现在我有解释了。谢谢你。寻找Linkedin令牌撤销仍在继续......:D
猜你喜欢
  • 2015-09-29
  • 2020-09-20
  • 2012-08-19
  • 1970-01-01
  • 2010-12-08
  • 2018-07-30
  • 1970-01-01
  • 2023-03-31
  • 1970-01-01
相关资源
最近更新 更多