2009-12-22 49 views

回答

12

前段時間,我的一位同事爲我們的客戶之一寫了一個C#實現的AS2(他使用了.NET 1.1),所以我可以告訴你,你想要做的事當然是可以實現的。

要做到這一點,您需要獲得AS2 RFC以及AS2引用的任何其他RFC(例如各種HTTP)的副本。

您還需要一些東西來測試您的工作 - 您可以將消息發送到的其他一些AS2實現。

這是方法我的同事跟隨,並在過程結束時,他犯了一個AS2運輸以來一直在生產大約7年來,對付幾個跨國公司誰使用德拉蒙德認證的產品。

你並不絕對需要走這條賽道 - 你可以通過在HTTP POST提供正確的AS2頭髮送有效的AS2消息,但你只會被執行AS2標準的最低限度的子集,其中不包括使其值得使用的協議的加密,認證和不可否認方面。

如果你只想發送AS2,或許用基本的加密和簽名,這可能是可行的。


我會的,但是,強烈反對,除非你一)絕對必須或b)相信你會只發送帶有簡單的加密和簽名的基本信息,你寫你自己的AS2實現建議。

我這樣說是因爲:

  1. 的代碼是不平凡
  2. 你會遇到的問題有認證

認證問題可能是最大的障礙。所有大型供應商的AS2產品(例如Gentran,WebSphere,BizTalk)都通過Drummond認證。這意味着他們已經通過了德拉蒙德集團公司管理的一系列測試,確定他們的AS2的實施可以與所有其他實施互操作。

德拉蒙德認證是一個耗時且成本高昂的過程,沒有它,您總會被視爲可疑。即使你實現了一個完美的AS2發送者,你的代碼將始終是手指指向的地方。


至於替代品去,有幾個免費或相對便宜的AS2實現比如OpenAS2(僅適用於Java的)或Boomi(商業,但不要太貴)到完全成熟的B2B引擎如WebSphere和BizTalk。

我以前沒有聽說過AS2Box,但它確實聽起來像可以滿足您的需求(儘管通常使用AS2的人不會想要通過不受信任的第三方)。

與任何事情一樣,它的確取決於你需要做什麼的細節。

相關問題