【发布时间】:2016-11-16 07:39:36
【问题描述】:
我有以下代码...
var credential = GoogleWebAuthorizationBroker.AuthorizeAsync(new ClientSecrets
{
ClientId = "<< MY CLIENT ID>>",
ClientSecret = "<<MY CLIENT SECRET>>"
},
new[] { "https://www.googleapis.com/auth/gmail.readonly" },
"<<EMAIL ADDRESS>>",
CancellationToken.None,
new FileDataStore("Mail2.Auth.Store")).Result;
using (var client = new ImapClient())
{
// THE CODE FAILS ON THIS NEXT LINE
client.Connect("imap.gmail.com", 993, SecureSocketOptions.SslOnConnect);
client.Authenticate("<<EMAIL ADDRESS>>", credential.Token.AccessToken);
}
运行时,代码会在AuthenticationException: The remote certificate is invalid according to the validation procedure. 中指示失败
我最初认为这是因为帐户启用了两步身份验证。因此,我设置了另一个帐户,确保它只使用常规身份验证设置,但我得到了同样的错误。
我在这里和其他地方找到了一些处理此异常的帖子,但它们似乎处理使用SmtpClient() 的问题,在这里,正如您从代码中看到的那样,我得到了ImapClient() 的错误。
任何人都可以提出可能导致错误的原因吗?是GMail吗?邮件套件? 。网?以上都是?
【问题讨论】:
标签: oauth-2.0 google-oauth mailkit google-oauth-.net-client