LinkedIn oAuth2身份验证中的authenticated_scope_error

时间:2018-11-26 10:27:55

标签: oauth-2.0 linkedin

我正在遵循Sign in with Linkedin中的正式 Microsoft 说明(还有 Linkedin 说明here),该说明也链接了{{3 }}以获取授权代码流。按照指示,我已经建立了一个linkedin应用程序,并使用客户端ID和密码来启动oAuth 2流,从而请求r_liteprofiler_emailaddress范围。

我没有获取登录表单,而是使用以下参数将其重定向到我的回调URL:

error: unauthorized_scope_error error_description: Scope "r_liteprofile" is not authorized for your application state: cfa970987c9a3c2178dddeda0d81dab3e00dce4c683098d6

这是默认范围的列表(根据文档,如果您自己未指定范围列表,则为默认范围),而r_liteprofile不在其中。

here

文档是否过时,还是我在忽略某些内容?

7 个答案:

答案 0 :(得分:8)

我们必须在产品标签下启用“使用LinkedIn登录”,然后才能使用该范围(r_liteprofile和/或r_emailaddress)和服务。

enter image description here

这将进行审核(系统最多需要60分钟才能批准),如果您的请求已获得批准,则相关产品将移至“添加的产品”部分。

enter image description here

答案 1 :(得分:2)

我在 2021 年的一点贡献。

似乎 Linkedin 一直在更改范围的值。

在 Linkedin 开发人员门户中,在“身份验证”选项卡中的 OAuth 2.0 范围 部分下,我找到了最终对我有用的值。

PS:确保从产品选项卡启用登录。 Linkedin API scope

答案 2 :(得分:1)

前几天这发生在我身上,但是以某种方式我能够解决这个问题。 new Microsoft API docs for LinkedIn是最新的。 LinkedIn Developers门户上的文档将很快过时:

  

重要更新:所有开发人员都需要在2019年3月1日之前迁移到我们的API版本2.0和OAuth 2.0。

一些尝试:

  • 注册新的LinkedIn OAuth 2.0开发人员应用程序-新注册的应用程序可以访问新的V2 API
  • 尝试删除r_liteprofile范围或恢复为r_basicprofile

答案 3 :(得分:1)

原因是尽管文档是实时的,但实际的实现却不是。

文档化的作用域现在可以按照

中的描述工作

答案 4 :(得分:0)

对我来说,解决方案是在我的应用程序的LinkedIn开发人员控制台上,单击“使用LinkedIn登录”旁边的“选择”。

答案 5 :(得分:0)

在LinkedIn开发人员控制台中导航至产品,然后选择“使用LinkedIn登录”。

验证过程需要一些时间,然后r_emailaddress和r_liteprofile应该出现在您的许可下。

答案 6 :(得分:0)

我们必须添加一个通过 LinkedIn 登录的产品(点击选择):Product menu with "Sign in with linkedin" selected.png。 然后,在身份验证菜单中:OAuth 2.0 范围,我们得到:Auth menu scope.png