【问题标题】:DKIM signing using Mimekit, signing with custom headers使用 Mimekit 进行 DKIM 签名,使用自定义标头进行签名
【发布时间】:2017-03-27 08:21:19
【问题描述】:

我想知道是否可以使用自定义标头进行签名。

所以我的代码 sn-p 是这样的。

message.Headers.Add("X-Feedback-ID", "XXXXX -  **XXXXXX**");

string privatekey = System.IO.File.ReadAllText("my.key");

   using (Stream s = GenerateStreamFromString(privatekey))
            {
                var headersToSign = new[] { HeaderId.From, HeaderId.To, HeaderId.Subject, HeaderId.ReplyTo, HeaderId.MimeVersion, HeaderId.ContentType };
                var signer = new DkimSigner(s, "mydomain.com", "myd");   
                message.Sign(signer, headersToSign, DkimCanonicalizationAlgorithm.Relaxed, DkimCanonicalizationAlgorithm.Relaxed);

            }

我想不出一个简单的方法来添加下面的标题,因为它没有 ID:

Headers["X-Feedback-ID"]

谢谢!

【问题讨论】:

    标签: c# dkim mailkit mimekit


    【解决方案1】:

    我找到了一个解决方案,我认为它不是很优雅:(虽然。

    我不得不编辑 HeaderID.cs 文件,不确定项目所有者是否会批准。

            XStatus,
    
        /// <summary>
        /// The X-Feedback-ID header field.
        /// </summary>
        [HeaderName("X-Feedback-ID")]
        XFeedbackID,
    

    【讨论】:

    • 你实际上可以只使用HeaderId.XMailer
    • @jstedfast,这是一个自定义标题的占位符,实际标题是 X-FeedbackID,抱歉没有说清楚。
    • 我认为,@jstedfast 仍然存在问题,如果我使用像“X-Feedback-ID”这样的自定义标头,那么它会给出一个例外“标头列表不应使用未知标头”: (.
    • @jstedfast,你认为你可以添加标题 /// /// X-Feedback-ID 标题字段。 /// [HeaderName("X-Feedback-ID")] XFeedbackID,我被告知这是一个用于反馈循环报告的标准头。
    • 这不是标准的标头。标准标题不以 X- 开头。我已经添加了新的 Sign() 方法来代替字符串列表,但我不会再发布另一个版本大约一个月左右。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-14
    • 2012-04-05
    • 1970-01-01
    • 2021-11-09
    • 2011-06-10
    • 1970-01-01
    • 2011-08-17
    相关资源
    最近更新 更多