我们需要编写一个 .Net (C#) 应用程序,通过 POP、SMTP 和 Exchange Server(2007 及更高版本)监控所有邮件活动,并从本质上获取邮件以归档到文档管理系统中。我意识到监视每种类型的服务器的方式可能会有所不同,所以我想知道实现这一目标的最佳(最优雅和最可靠)的方式是什么。
谢谢。
我们需要编写一个 .Net (C#) 应用程序,通过 POP、SMTP 和 Exchange Server(2007 及更高版本)监控所有邮件活动,并从本质上获取邮件以归档到文档管理系统中。我意识到监视每种类型的服务器的方式可能会有所不同,所以我想知道实现这一目标的最佳(最优雅和最可靠)的方式是什么。
谢谢。
我认为您不必担心 POP 对吧?它不用于发送邮件(除非您也需要监控对电子邮件的访问)。
关于 Exchange,2000 及更高版本具有日志支持(不知道以前的版本),因此在发送/接收邮件时会将邮件复制到邮箱中(根据 Exchange 版本,有几个不同的选项,请查看)。然后您可以读取该邮箱或设置规则以将其转发到外部 SMTP,然后您的应用程序就会收听它。
对于其他 SMTP 服务器,可以通过转发规则等获得类似的方法,并且有些可能像 Exchange 那样具有自定义支持。
许多国家对这样一个系统必须做什么和不能做什么的规定相当狭窄,才能符合法律。如果您正在为希望在国际上销售的 SA 公司开发产品,我建议您需要一种更有针对性的方法。根据法律框架,您的解决方案必须拦截和归档所有电子邮件,或者只是一个子集。例如,一些国家不允许公司存储员工的私人电子邮件,在这种情况下,归档过程需要根据员工可以控制的规则进行配置。如果目的是归档每封电子邮件,那么 Jimmy Chandra 建议的网络级方法更好,因为它更易于部署。