Подписание электронного письма дает dkim=neutral (хеш тела не проверен) при отправке через API Gmail от Google.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Подписание электронного письма дает dkim=neutral (хеш тела не проверен) при отправке через API Gmail от Google.

Сообщение Anonymous »

Мы пытаемся подписать сообщение электронной почты с помощью DKIM. Электронное письмо успешно отправлено получателю через API Gmail; однако он не проходит проверку DKIM, когда мы подписываем его с помощью домена с допустимой настройкой DKIM.Домен имеет действительную настройку DKIM (https://mxtoolbox.com/SuperTool.aspx?ac ... im%3aunsub. eeunsub.com%3as1&run=toolpage) и проходит DKIM, когда мы отправляем электронные письма с помощью других поставщиков услуг электронной почты, таких как AWS SES (добавленный снимок экрана, см. ниже).

Код: Выделить всё

private static void SendEmail()
{
ClientSecrets clientSecrets = new ClientSecrets
{
ClientId = ClientId,
ClientSecret = ClientSecret
};

TokenResponse token = new TokenResponse
{
AccessToken = "",
RefreshToken = _espApiEndpoint.RefreshToken
};

IAuthorizationCodeFlow flow =
new GoogleAuthorizationCodeFlow(new GoogleAuthorizationCodeFlow.Initializer
{
ClientSecrets = clientSecrets,
Scopes = new string[] { GmailService.Scope.GmailSend }
});

UserCredential credential = new UserCredential(flow, "me", token);

BaseClientService.Initializer intializer = new BaseClientService.Initializer
{
ApplicationName = "GmailEspApiClient",
HttpClientInitializer = credential
};

var gmail = new GmailService(intializer);

string message = @"From: Xxx 
Date: Thu, 14 Mar 2024 09:59:20 -0700
Subject: Gmail EE est
Message-Id: 
Reply-To: xxx 
To: Dan 
X-EE-RunId: xxx
List-Unsubscribe: , 
List-Unsubscribe-Post: List-Unsubscribe=One-Click
X-Test-Header: TestHeader
X-Testing: Testee
MIME-Version: 1.0
Content-Type: text/html; charset=utf-8

Hello from Gmail[/b]
";

using MemoryStream memoryStream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(message));
MimeMessage mimeMessage = await MimeMessage.LoadAsync(memoryStream);

string privateKey = ""; // Your private key
byte[] byteArray = Encoding.UTF8.GetBytes(privateKey);
using MemoryStream memory = new MemoryStream(byteArray);

string domain = "xxx"; // Your Domain
string selector = "xxx"; // Selector
DkimSigner signer = new DkimSigner(memory, domain, selector)
{
HeaderCanonicalizationAlgorithm = DkimCanonicalizationAlgorithm.Simple,
BodyCanonicalizationAlgorithm = DkimCanonicalizationAlgorithm.Simple,
QueryMethod = "dns/txt",
};

mimeMessage.Prepare(EncodingConstraint.SevenBit);

signer.Sign(mimeMessage, new HeaderId[] { HeaderId.From });

Message finalmessage = new Message();
finalmessage.Raw = Base64UrlEncode(mimeMessage.ToString());
var result = await gmail.Users.Messages.Send(finalmessage, "me").ExecuteAsync();
}

private static string Base64UrlEncode(string input)
{
var inputBytes = System.Text.Encoding.UTF8.GetBytes(input);;
// Special "url-safe" base64 encode.
return Convert.ToBase64String(inputBytes)
.Replace('+', '-')
.Replace('/', '_')
.Replace("=", "");
}
Скриншоты публикуются как для Google, так и для Aws SES. Обратите внимание, что Google возвращает dkim=neutral (хэш тела не проверен).
Сообщите нам свое мнение.
Проблема ранее открыт с помощью Google https://github.com/googleapis/google-ap ... ssues/2701

Подробнее здесь: https://stackoverflow.com/questions/781 ... ending-via
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как проверить подпись DKIM простого электронного письма, которое Yahoo не дает
    Anonymous » » в форуме JAVA
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Как проверить подпись DKIM простого электронного письма, которое Yahoo не дает
    Anonymous » » в форуме JAVA
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Ошибка при декодировании вложения с помощью Python из электронного письма, полученного с помощью API Gmail.
    Anonymous » » в форуме Python
    0 Ответы
    32 Просмотры
    Последнее сообщение Anonymous
  • Стилизация электронного письма в формате HTML для Gmail
    Anonymous » » в форуме CSS
    0 Ответы
    39 Просмотры
    Последнее сообщение Anonymous
  • Устранение ошибки SMTP 504 при отправке электронного письма с вложением
    Гость » » в форуме Php
    0 Ответы
    35 Просмотры
    Последнее сообщение Гость

Вернуться в «C#»