微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 如何在使用SHA-2而不是SHA-1之间切换?

我的程序使用SHA-1证书进行SSL连接. SHA-2证书现在已被一些网络服务(Gmail)广泛使用.这会在电子邮件通知设置期间阻止到SMTP服务器的传入连接.

要发送电子邮件,我使用SmtpClient这样

using (var smtpClient = new SmtpClient(serverSettings.SmtpServerName,(int)serverSettings.SmtpPort))
{
     smtpClient.EnableSsl = serverSettings.SmtpUseSsl;
     smtpClient.UseDefaultCredentials = false; 

     if (!string.IsNullOrEmpty(serverSettings.UserName) || !string.IsNullOrEmpty(serverSettings.EncryptedPassword))
     {
          smtpClient.Credentials = new NetworkCredential(serverSettings.UserName,serverSettings.EncryptedPassword);
     }
                ...
      smtpClient.Send(message);
}

我无法通过使用此代码发送电子邮件,我不想在我的Gmail帐户中允许“安全性较低的应用”.

如何实施或切换到SHA-2电子邮件通知证书?

解决方法

SHA-1与SHA-2完全不符合您的问题.对于不使用OAuth 2.0进行身份验证的应用程序(这将允许进行双重身份验证),而仅使用简单的密码,Google将考虑使用较不安全的应用程序.有关更多信息,请参阅 New Security Measures Will Affect Older (non-OAuth 2.0) Applications.

要使用OAuth 2.0与C#,请参阅SMTP and OAuth 2

原文地址:https://www.jb51.cc/csharp/93312.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐