Chương trình của tôi sử dụng chứng chỉ SHA-1 để kết nối SSL. Chứng chỉ SHA-2 đã được một số dịch vụ web (Gmail) sử dụng rộng rãi hiện nay. Điều này gây ra việc chặn kết nối đến máy chủ SMTP trong quá trình thiết lập thông báo qua email.Làm thế nào để chuyển đổi giữa sử dụng SHA-2 thay vì SHA-1?
Để gửi email Tôi sử dụng SmtpClient như thế này
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);
}
tôi không thể gửi email bằng cách sử dụng đoạn mã này và tôi không muốn cho phép "các ứng dụng kém an toàn" trong tài khoản gmail của tôi.
Làm cách nào để triển khai hoặc chuyển sang chứng chỉ SHA-2 cho thông báo qua email?
Tôi nghĩ bạn cần cập nhật sha trên máy chủ mà bạn đang lưu trữ mã của mình. Gần đây amazon cũng nâng cấp từ sha-1 lên sha-256. Tôi đã kiểm tra tài liệu của amazon nhưng tôi e rằng họ không có mã mẫu để làm điều đó cho C# để thử nghiệm nếu ứng dụng/máy chủ của bạn hỗ trợ sha-256 hay không. Có thể bạn có thể liên hệ với các nhà chức trách máy chủ. – razorranjan