【问题标题】:Email intercepting techniques电子邮件拦截技术
【发布时间】:2016-03-01 11:39:10
【问题描述】:

我有一个需求,我打算构建一个工具来扫描电子邮件内容(包括附件)。电子邮件服务器将是 SendMail 或 z/OS 通信服务器,两者都支持 SMTP。该服务器不是 Miscrosoft 实现,因此 MAPI 或 Outlook API 不存在。该工具将是基于 Java 的代码,并且基本上需要根据某些规则查找不允许的内容。我在这里有什么选择?可以使用代理服务器,但我们正在寻找更直接的方法。

【问题讨论】:

  • 您希望在客户端和服务器之间截取邮件的哪一侧?可以在服务器上安装软件吗?
  • 在服务器上。这样做的目的是在工具检测到违反规则时阻止邮件发送出去。
  • 如果您可以在服务器上安装软件,那么您最好的选择是实施(或扩展)SMTP 代理,它将扫描电子邮件并根据您的规则集将邮件转发到真正的 SMTP 服务器或拒绝它。你确定你不能配置现有的 SMTP 服务器来做到这一点。
  • @stjepano 我们可以做到。这是我在问题中列出的选项之一,但我正在寻找更直接的方法,避免需要代理服务器。
  • 最好的方法是将您的规则集实施到现有的 SMTP 服务器(无代理)。许多服务器允许这种扩展。如果可能的话,您还可以在客户端上实施规则。

标签: java email smtp zos


【解决方案1】:

z/OS 通信服务器 SMTP 实现具有内置的“退出”功能 - 请参阅 http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/F1A1B4B0/30.3?DT=20110609204120#HDRWQ1299。

几乎所有 SMTP 活动都会调用出口,它可以根据您建立的规则检查、更改或拒绝任何事情。它通常是用 IBM 汇编语言编写的,但没有理由不能拥有一个精简的汇编层,它可以使用您喜欢的任何协议(例如,管道或套接字)将数据传递给 Java 应用程序。

有许多小细节需要处理,例如字符编码(例如,EBCDIC 与 ASCII 或 UTF-8)以及从电子邮件内容中清除附件。但是使用出口保留了 IBM SMPT 服务器的所有 z/OS 特定功能,而无需尝试自己重新创建任何这些功能。

祝你好运!

【讨论】:

  • 我认为这正是我所需要的,我会尝试一下。谢谢。
  • 很高兴能提供帮助...最困难的部分将是汇编语言出口本身。尽管 IBM 没有这样记录,但我相信他们的 SMTP 服务器实际上是一个 C/C++ 程序……这意味着会有一个与此进程相关联的 LE 运行时,所以如果你小心的话,你可能能够在 C 中退出,如果您不是核心汇编程序开发人员,这可能会使您的 Java 代码的开发变得不那么繁琐。
猜你喜欢
  • 1970-01-01
  • 2013-06-04
  • 1970-01-01
  • 2011-02-02
  • 2011-09-20
  • 2014-02-18
  • 1970-01-01
  • 2011-08-12
  • 2012-08-19
相关资源
最近更新 更多