lah*_*u89 6 email encryption apache-camel
我想签名并加密我的邮件.
我目前的骆驼版是2.13.0.
有没有我可以用于此目的的骆驼功能?
正文是纯文本,因此不能使用XMLDSig左右.
预期结果应该是包含以下标题的邮件:
我不是 Camel 用户,但我很好奇并尝试了一下。您想要的是 S/MIME 签名和加密。目前尚不可用,但有一个票证,自 2015 年 2 月创建以来从未得到任何响应。Camel 有 MIME-Multipart 数据格式、PGP 加密(但仅限对称)、签名/验证(无加密)-但我认为没有办法将它们组合起来,以便真正获得签名+加密电子邮件的有效 S/MIME 信封。此外,PGP 不是 S/MIME,反之亦然。
我确实知道如何通过 JavaMail + BouncyCastle 库撰写和发送此类电子邮件,我什至有示例代码。理论上,您可以通过 JavaMail + BouncyCastle 创建 MIME 消息,然后使用 Camel 发送它或创建您自己的 S/MIME 端点或数据格式(至少是一种编组方式,如果不需要,则跳过解组)。但开箱即用我还没有找到一种方法来做到这一点。
更新:
即使我在输入端点上放置了预配置的签名和加密的 MIME 部分并执行此操作...
.setHeader("From", simple("sender@web.de"))
.setHeader("To", simple("recipient@web.de"))
.setHeader("Subject", simple("Signed & encrypted"))
.setHeader("Content-Type", simple("application/pkcs7-mime; name=\"smime.p7m\"; smime-type=enveloped-data"))
.setHeader("Content-Transfer-Encoding", simple("base64"))
Run Code Online (Sandbox Code Playgroud)
...并且邮件已发送,像 Thunderbird 这样的邮件客户端无法真正显示邮件,因为 Camel 邮件端点会Content-Transfer-Encoding用 值覆盖7bit。此问题还有另一张票证,但自 2014 年 6 月以来一直未解决。因此,在通过 JavaMail 和 BouncyCastle 构建消息后,目前您甚至无法使用邮件端点来发送消息。你甚至必须自己发送(通过 JM + BC 也很简单,但很烦人)。因此,目前您无法真正使用 Camel 基础设施,因为端点和数据格式不适合 S/MIME 消息组合。
| 归档时间: |
|
| 查看次数: |
1238 次 |
| 最近记录: |