猿问

Asp.Net MVC LinkedIn OAuth 2.0 登录失败

LinkedIn 登录突然停止工作,错误代码为error=access_denied,代码库或包没有任何更改。

根据文档错误代码access_denied,意味着用户已拒绝权限,但即使授予权限也会发生这种情况,我们只请求默认信息电子邮件 ID。

问题是返回的用户信息始终为空。

使用的 Nuget 包是Owin.Security.Providers.LinkedIn : 2.22.0,我们尝试更新它但没有解决问题。

对于诊断,我们检查了linkedIn 应用程序设置它看起来不错,也可以通过javascript sdk为相同的应用程序ID登录,因此问题似乎与应用程序ID 无关。

在 github 中没有提出与之相关的问题。所以,不确定根本问题在哪里。

该问题的任何指针或解决方案都会有所帮助。


慕田峪9158850
浏览 213回答 1
1回答

幕布斯6054654

在调试 nuget 包 Owin.Security.Providers.LinkedIn https://github.com/TerribleDev/OwinOAuthProviders的源代码后发现问题。由于 tls 协商问题,对端点https://www.linkedin.com/oauth/v2/accessToken的调用失败,并抛出LinkedInAuthenticationHandler 类的方法 AuthenticateCoreAsync 中的底层连接已关闭错误。我设置了 SecurityProtocol,如下面的代码片段所示。ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls |                                        SecurityProtocolType.Tls11 |                                        SecurityProtocolType.Tls12;不知道为什么对这个端点的调用只是突然失败,尽管其他端点正在工作。
随时随地看视频慕课网APP
我要回答