c# - 无法为 Facebook 创建 SSL/TLS 安全通道

标签 c# facebook ssl dotnetopenauth

我在生产环境中使用 Facebook 进行社交登录已经有一段时间了。从今天早上开始,它不再对我有用。我在开发(没有 SSL)和在 Azure 网站上托管并使用 SSL 的生产中遇到同样的错误。

这是我看到的错误:

[WebException:请求被中止:无法创建 SSL/TLS 安全通道。] System.Net.WebClient.DownloadDataInternal(Uri地址,WebRequest&请求)+283 System.Net.WebClient.DownloadString(Uri 地址) +100 DotNetOpenAuth.AspNet.Clients.FacebookClient.QueryAccessToken(Uri returnUrl, String authorizationCode) +350 DotNetOpenAuth.AspNet.Clients.OAuth2Client.VerifyAuthentication(HttpContextBase 上下文,Uri returnPageUrl)+202 DotNetOpenAuth.AspNet.OpenAuthSecurityManager.VerifyAuthentication(String returnUrl) +411 Microsoft.Web.WebPages.OAuth.OAuthWebSecurity.VerifyAuthenticationCore(HttpContextBase 上下文,字符串 returnUrl)+189 Microsoft.Web.WebPages.OAuth.OAuthWebSecurity.VerifyAuthentication(String returnUrl) +139

还有其他人看到了吗?我的 Google 登录继续正常工作。

最佳答案

正如 Igy 所说,这是由于 Facebook 由于 POODLE 漏洞而禁用了 SSLv3。

我在连接到 Twitter 的应用程序上遇到了同样的事情。我通过添加这行代码来使用 TLS 来修复它。我不确定这是最好的解决方案,但它现在有效。

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12

编辑:忘记提及这一点,但我将该行添加到 global.asax 的 Application_Start

关于c# - 无法为 Facebook 创建 SSL/TLS 安全通道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26388615/

相关文章:

c# - 如何在C#中设计一个不会失效的DataType

c# - 递归函数中的计数器

c# - Entity Framework DbContext SaveChanges() OriginalValue 不正确

PHP 通过 facebook 点赞订购

c# - 如何将特定页面限制为证书身份验证?

c# - 容器放在哪里?

swift - 快速在 collectionView 上像 facebook 一样分页

php - 从 # 之后的 URL 解析 Facebook token

java - 通过 ssl 将 springboot 应用程序与 mysql 服务器连接起来

php - SMTP -> ERROR : AUTH not accepted from server: 530 5. 7.0 必须先发出 STARTTLS 命令