Dot-Net
Owin Twitter登錄-根據驗證程序遠端證書無效
我最近在嘗試使用 twitter 登錄時開始收到此錯誤 - 知道為什麼嗎?
Stack Trace: [AuthenticationException: The remote certificate is invalid according to the validation procedure.] System.Net.TlsStream.EndWrite(IAsyncResult asyncResult) +230 System.Net.PooledStream.EndWrite(IAsyncResult asyncResult) +13 System.Net.ConnectStream.WriteHeadersCallback(IAsyncResult ar) +123 [WebException: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.] System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) +6432446 System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar) +64
由於開源的力量,我們可以看到 Twitter 證書的指紋已在 Katana 項目中編碼。
Microsoft.Owin.Security.Twitter.TwitterAuthenticationOptions最近某些證書必須已更改,現在指紋不再匹配。
請將“VeriSign Class 3 Public Primary Certification Authority - G5”證書的新指紋添加到您
Startup.Auth.cs(針對 MVC 使用者)中的 Twitter 身份驗證選項。從預設值更改:
app.UseTwitterAuthentication( consumerKey: "XXXX", consumerSecret: "XXX" );用這個:
app.UseTwitterAuthentication(new TwitterAuthenticationOptions { ConsumerKey = "XXXX", ConsumerSecret = "XXXX", BackchannelCertificateValidator = new CertificateSubjectKeyIdentifierValidator(new[] { "A5EF0B11CEC04103A34A659048B21CE0572D7D47", // VeriSign Class 3 Secure Server CA - G2 "0D445C165344C1827E1D20AB25F40163D8BE79A5", // VeriSign Class 3 Secure Server CA - G3 "7FD365A7C2DDECBBF03009F34339FA02AF333133", // VeriSign Class 3 Public Primary Certification Authority - G5 "39A55D933676616E73A761DFA16A7E59CDE66FAD", // Symantec Class 3 Secure Server CA - G4 "5168FF90AF0207753CCCD9656462A212B859723B", //DigiCert SHA2 High Assurance Server CA "B13EC36903F8BF4701D498261A0802EF63642BC3" //DigiCert High Assurance EV Root CA }) });