微票宝与同城票据网盈利模式有什么区别?收费吗?

2659人阅读
传输协议(9)
OpenAS2 使您能够在交易伙伴之间传送和接收 EDI-X12、EDIFACT、XML 或二进制形式的 AS2 消息。由于 OpenAS2 文档不够具体,因此本文向您演示如何安装、配置和使用 OpenAS2,以及创建一个稍微修改就可用于不同场景的引用模型。本文还演示如何使用该 OpenAS2 引用模型来测试 B2B 网关,即将其用作向 IBM(R) WebSphere(R) DataPower(R) B2B Appliance XB60(以下简称 XB60)发送消息的客户端。
为了能够运行本文中的场景,您需要安装 Java(TM) —— 本文使用 Java 1.6。您还需要 OpenAS2 包和 Java Cryptography Extension (JCE) 策略文件,可从本文的末尾 它们。
将下载的 OpenAS2 包解压缩到适当的位置,即 &install_dir&。在 Linux(R) 中 &install_dir& 的值通常为/opt/OpenAS2,在 Microsoft(R) Windows(R) 中为C:\OpenAS2。
将文件 &install_dir&/lib/openAS2_&date&.jar 重命名为 &install_dir&/lib/openas2-lib.jar(大小写敏感)。上面的图 1 显示了重命名之后解压缩的包,并突出显示了该文件。您的安装应该与此相似。要让加密和证书管理正常工作,必须在 Java 中安装正确的 JCE 策略文件。下载的压缩文件包含 local_policy.jar 和US_export_policy.jar 两个文件。将它们安装到&JAVA_HOME&/lib/security 下的 Java 位置中。在安装这些新文件之前要备份现有的文件。为了安全起见,解压缩本文附带的可下载附加材料,并从系统平台(Windows 或 Linux)上将 myCompany 文件夹复制到&install_dir&。然后在 Linux 上运行standalone.sh 或在 Windows 上运行standalone.cmd 启动 OpenAS2。输入exit 终止该软件的运行。您应该看到类似于下面的图 2 的输出。如果遇到任何
Java 异常,则可能需要将 Java 添加到环境变量的路径中。如果异常与 SSL 证实相关,则可能是未能正确地安装 JCE 策略。
Staring OpenAS2 with file myCompany.xml
OpenAS2 v0.9
Starting Server...
Loading configuration...
Registering Session to Command Processor...
Starting Active Modules...
OpenAS2 Started
07/14/10 12:03:57 OpenAS2Server: - OpenAS2 Started -
Loading Command Processor...[Thread[Thread-2,5,main], Thread[Thread-3,5,main]]
Loading Command Processor...[Thread[Thread-2,5,main], Thread[Thread-3,5,main]]
在本文中将用到下面的引用模型。端口值是任意的,但是两端的设置必须一致才能交换消息。这个场景涉及到两个交易伙伴 myCompany 和myPartner,它们使用 OpenAS2 交换消息。这些交易伙伴在 OpenAS2 中定义;它们不是 系统的主机名。实际上这些交易伙伴可以驻留在同一个物理硬件上。下面的图 3 显示了该模型。通过 10080 端口上将一条 AS2 消息从myPartner 发送到myCompany,以同步的方式或通过
20081 端口异步接收 MDN。相反地,当通过 20080 端口将 AS2 消息从myCompany 发送到myPartner 时,以同步的方式或通过 10081 端口异步接收 MDN。
创建引用模型需要两个交易伙伴 myCompany 和 myPartner,如上面的图 3 所示。它们可以运行在 Windows 系统、Linux 系统或同时运行在这两种系统上,甚至可以运行在同一台主机上。一定要使用正确的文件分隔符 —— 在 Windows 中为 “\”,在 Linux 系统中为 “/”。如上面的图 3 所示,通过 4 个文件来控制交易伙伴的行为:
用于储存将在交易伙伴之间传递的 SSL 证书的密匙库。 控制交易伙伴(上面的图 3 中的 myCompany.xml 和 myPartner.xml)的行为的配置文件。它包含交易伙伴的属性和将与之进行通信的交易伙伴的值。定义交易伙伴之间的关系的 partnerships 文件。默认情况下,这个文件的名称为 partnerships.xml 一个名为 commands.xml 的命令文件,它是 OpenAS2 发行版的一部分,不需要进行修改。
这些文件包含在针对 Windows 或 Linux 的下载资料中。它们配合 Unix shell 脚本和 DOS 命令文件来运行该软件。
可以通过压缩文件中附带的文件在 Windows 或 Linux 上开始传递文档。在 Windows 系统上,在 OpenAS2 &install_dir& 中从解压缩文件中复制文件夹Windows\myCompany 和Windows\myPartner(不是显示的所有 OpenAS2 文件夹),如图 4 所示。在这里,Windows 和 Linux 的惟一区别是使用standalone.sh shell
脚本代替standalone.cmd,以及从解压缩包的 Linux 子目录中复制myCompany 和
myPartner 文件夹。在 Windows 和 Linux 系统上,myCompany.xml 和myPartner.xml 文件的惟一区别是将文件分隔符从后斜杠改为前斜杠。
C:\OpenAS2 (&install_dir&)
+--lib
+--myCompany
commands.xml
myCompany.p12
myCompany.xml
partnerships.xml
standalone.cmd
+--myPartner
commands.xml
myPartner.p12
myPartner.xml
partnerships.xml
standalone.cmd
您已经准备好传递文档!在 myCompany 文件夹中双击 standalone.cmd 文件。如果您安装了 JCE 组件,将会看到 OpenAS2 的运行,如下面的图 5 所示。该文件在此文件夹中分别创建了名为resend、To_any、To_myCompany 和To_myParter 的子文件夹,以及一个日志文件:
在 myPartner 文件夹中双击 standalone.cmd 文件。您将看到刚才创建文件夹和日志文件和类似于上图的窗口。要将文档从 myPartner 发送到 myCompany,仅需将文件放入&install_dir&/myPartner/To_myCompany 文件夹。下图显示了文件交换过程(突出显示消息)。将文件发送到哪里?它将出现在&install_dir&\myCompany 目录下的inbox
文件夹中。
为了保持简洁,下面的图 8 显示了文本格式的输出结果,将两个输出结果合并起来便于了解该过程,并突出显示重要的部分:
在第一个代码块中,myPartner 轮询 to_MyCompany 文件夹,选取消息并对其进行加密和签名,然后使用 HTTP 通过端口 10080 将它发送到 myCompany。在第二个代码块中,myCompany 接收消息并对其进行解密和验证,然后将它和标题一起储存在 myCompany 文件夹中。然后它同步发送 MDN,这可以通过中间代码块第一行和最后一行显示的 IP 地址 (127.0.0.1) 和端口 (3216) 看出来,因为它们是一样的。在第三个代码块中,myPartner 接收 MDN 并验证它,并记录消息已发送并收到这一事实,然后将它从 to_myCompany 文件夹删除。
myPartner: 07/28/10 10:19:19 DirectoryPollingModule: processing
C:\OpenAS2\myPartner\To_myCompany\inbound.EDIFACT
myPartner: 07/28/10 10:19:19 DirectoryPollingModule: file assigned to message
C:\OpenAS2\myPartner\To_myCompany\inbound.EDIFACT
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:19 AS2SenderModule: message submitted
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:19 AS2SenderModule: signed data
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:20 AS2SenderModule: encrypted data
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:20 AS2SenderModule: connecting to http://localhost:10080
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:20 AS2SenderModule: transferred 2778 bytes in 0.46 seconds
at 58.999 KBps [&OPENAS2-19+@myPartner_myCompany&]
myCompany: 07/28/10 10:19:20 AS2ReceiverHandler: incoming connection 127.0.0.1 3216
myCompany: 07/28/10 10:19:20 AS2ReceiverHandler: received 2779 bytes in 0.78 seconds
at 34.812 KBps 127.0.0.1 3216
[&OPENAS2-19+@myPartner_myCompany&]
myCompany: 07/28/10 10:19:20 AS2ReceiverHandler: decrypting
[&OPENAS2-19+@myPartner_myCompany&]
myCompany: 07/28/10 10:19:20 AS2ReceiverHandler: verifying signature
[&OPENAS2-19+@myPartner_myCompany&]
myCompany: 07/28/10 10:19:20 MessageFileModule: stored message to C:\OpenAS2\myCompany\
inbox\myPartner-myCompany-_OPENAS2-19-7908@myPartner_myCompany_
[&OPENAS2-19+@myPartner_myCompany&]
myCompany: 07/28/10 10:19:20 MessageFileModule: stored headers to
C:\OpenAS2\myCompany\inbox\msgheaders\2010\07\myPartner-myCompany-_
OPENAS2-19-7908@myPartner_myCompany_
[&OPENAS2-19+@myPartner_myCompany&]
myCompany: 07/28/10 10:19:20 AS2ReceiverHandler: sent MDN
[automatic-action/MDN-sent- processed] 127.0.0.1 3216
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:20 AS2SenderModule: received MDN
[automatic-action/MDN-sent- processed]
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:20 AS2SenderModule: mic is matched,
mic: nrpe5qz/n4GKdl+Cl+hgrrImyA4=, sha1
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:20 AS2SenderModule: message sent
[&OPENAS2-19+@myPartner_myCompany&]
myPartner: 07/28/10 10:19:20 DirectoryPollingModule:
deleted C:\OpenAS2\myPartner\To_myCompany\inbound.EDIFACT
[&OPENAS2-19+@myPartner_myCompany&]
现在,您已经将文档从 myPartner 传递到 myCompany。要从另一个方向传送文档,仅需将文件放入到 &install_dir&\myCompany\to_myPartner 文件夹中。您可以自己尝试,然后通过在两个命令窗口中输入exit 关闭 OpenAS2。
在上一小节中,您在预配置的交易伙伴之间传递文档。本小节将演示如何配置 OpenAS2 以在任意两个交易伙伴 partnerA 和 partnerB 之间传递文档。您在前面使用该方法创建了 myCompany 和 myPartner 配置文件。在这个新的场景中使用 Linux 系统,因为它使用更加便于管理 SSL 证书的 OpenSSL 包。
您可以使用可下载材料中的 shell 脚本来创建所需的文件。OpenAS2 安装在 /opt/OpenAS2 文件夹中,而下载的文件在/tmp/Files 文件夹中。您可以以任意用户身份登录到 Linux 系统;不需要作为根用户运行该软件。
下载文件默认设置为假设两个交易伙伴都使用 Linux 系统。如果您希望一个交易伙伴使用 Windows 系统而另一个使用 Linux 系统,可以编辑
createXML.sh 文件并根据需要更改字段分隔符的值(搜索 Partner1_FileSep 和/或 Partner2_FileSep)。下面是解压缩文件用于传递文档的完整设置:
unzip Files.zip
cd /tmp/Files/Templates
sh ./createXML.sh partnerA partnerB
结果为 3 个新文件:partnerA.xml、partnerB.xml 和 partnerships.xml。将这些文件复制到适当的位置:
mkdir -p /opt/OpenAS2/partnerA
cp /tmp/Files/commands.xml /opt/OpenAS2/partnerA
cp /tmp/Files/standalone.sh /opt/OpenAS2/partnerA
chmod 755 /opt/OpenAS2/partnerA/standalone.sh
cp /tmp/Files/Templates/partnerA.xml /tmp/Files/Templates/partnerships.xml
/opt/OpenAS2/partnerA
mkdir -p /opt/OpenAS2/partnerB
cp /tmp/Files/commands.xml /opt/OpenAS2/partnerB
cp /tmp/Files/standalone.sh /opt/OpenAS2/partnerB
chmod 755 /opt/OpenAS2/partnerB/standalone.sh
cp /tmp/Files/Templates/partnerB.xml /tmp/Files/Templates/partnerships.xml
/opt/OpenAS2/partnerB
使用提供的脚本自动创建密匙储存库。该脚本创建了很多文件,但您仅需要使用 p12 文件:
cd /tmp/Files/SSL
sh ./createSSL.sh partnerA partnerB
cp /tmp/Files/SSL/partnerA.p12 /opt/OpenAS2/partnerA
cp /tmp/Files/SSL/partnerB.p12 /opt/OpenAS2/partnerB
现在,每个文件夹中应该有 2 个文件夹和 5 个文件,如下面的图 9 所示:
/opt/OpenAS2
+--partnerA
commands.xml
partnerA.p12
partnerA.xml
partnerships.xml
standalone.sh
+--partnerB
commands.xml
partnerB.p12
partnerB.xml
partnerships.xml
standalone.sh
让我们开始传递文件!您需要打开 3 个窗口:每个交易伙伴一个,另一个用户将文件放到适当的文件夹中。
在第一个窗口 (PartnerA) 中以 partnerA.xml 为参数运行 standalone.sh 脚本:
cd /opt/OpenAS2/partnerA
sh ./standalone.sh partnerA.xml
在第二个窗口 (PartnerB) 中以 partnerB.xml 为参数运行 standalone.sh:
cd /opt/OpenAS2/partnerB
sh ./standalone.sh partnerB.xml
最后,在第三个窗口中,将文件放到适当的位置,以在交易伙伴之间传递它。
将文件从 partnerA 传递到 partnerB:cp /tmp/Files/partnerA.EDIFACT /opt/OpenAS2/partnerA/To_partnerB将文件从 partnerB 传递到 partnerA:cp /tmp/Files/partnerB.EDIFACT /opt/OpenAS2/partnerB/To_partnerA
在文件发送完毕之后,在这两个窗口中输入 exit 停止 OpenAS2。下面的图 10 显示了将文件从 partnerA 发送到 partnerB 的混合输出结果。为了保持简洁,用... 代替不必要的行。
partnerA: 07/15/10 10:32:34 DirectoryPollingModule:
processing /opt/OpenAS2/partnerA/To_partnerB/inbound.EDIFACT
partnerA: 07/15/10 10:32:34 DirectoryPollingModule: file assigned to message ...
[&OPENAS2-34+@partnerA_partnerB&]
partnerA: 07/15/10 10:32:34 AS2SenderModule: message submitted ...
partnerA: 07/15/10 10:32:34 AS2SenderModule: signed data ...
partnerA: 07/15/10 10:32:34 AS2SenderModule: encrypted data ...
partnerA: 07/15/10 10:32:34 AS2SenderModule: connecting to http://localhost:20080 ...
partnerA: 07/15/10 10:32:35 AS2SenderModule: transferred 2848 bytes
in 0.74 seconds at 37.598 KBps ...
partnerB: 07/15/10 10:32:35 AS2ReceiverHandler: incoming connection 127.0.0.1 45530
partnerB: 07/15/10 10:32:35 AS2ReceiverHandler: received ... 127.0.0.1 45530
[&OPENAS2-34+@partnerA_partnerB&]
partnerB: 07/15/10 10:32:35 AS2ReceiverHandler: decrypting ...
partnerB: 07/15/10 10:32:35 AS2ReceiverHandler: verifying signature ...
partnerB: 07/15/10 10:32:35
MessageFileModule: stored message to /opt/OpenAS2/partnerB/inbox ...
partnerB: 07/15/10 10:32:35
MessageFileModule: stored headers to /opt/OpenAS2/partnerB/inbox/ ...
partnerB: 07/15/10 10:32:35
AS2ReceiverHandler: sent MDN ... 127.0.0.1 45530 ...
partnerA: 07/15/10 10:32:35 AS2SenderModule: received MDN ...
[&OPENAS2-34+@partnerA_partnerB&]
partnerA: 07/15/10 10:32:35 AS2SenderModule: mic is matched,
mic: 3rv2s+RzWodgiK6DHiTJHPYjn+w=, sha1 ...
partnerA: 07/15/10 10:32:35 AS2SenderModule: message sent ...
partnerA: 07/15/10 10:32:35 DirectoryPollingModule:
deleted /opt/OpenAS2/partnerA/To_partnerB/inbound.EDIFACT ...
这个小节解释了配置文件的细节,以及它们是如何关联起来的。这里使用了 myCompany 文件 —— 这里的讨论适用于其它交易伙伴。回想一下,交易伙伴的配置包含 4 个文件,就 myCompany 而言,它们是myCompany.xml、partnerships.xml、commands.xml 和myCompany.p12。
myCompany.xml(或 myPartner.xml)
确定用于与交易伙伴传递文档的文件夹和端口。下面是该文件夹中比较重要的节点:
&certificates& 部分决定要使用的 SSL 密匙库和访问密码。 &loggers& 部分用于记录运行的 OpenAS2 软件,以便于诊断问题。对于这个例子,它将日志记录到一个简单的文本文件和控制台窗口中。&commandProcessors& 部分确定如何处理命令。正常情况下不需要对此进行任何更改,但是如果在同一台主机上运行交易伙伴,则需要更改其中一个portId 以避免 “套接字已占用” 错误。仅需选择尚未使用的portId 值。
&processor& 部分包含用来改变 OpenAS2 行为的 &module&。这个模块的
classname 属性指定使用哪个值。下面列出了一部分类名:
receiver.AS2DirectoryPollingModule 类名确定轮询哪个目录获取消息。例如:
&module classname=&org.openas2.processor.receiver.AS2DirectoryPollingModule&
outboxdir=&%home%/To_myPartner& errordir=&%home%/To_myPartner/error&
interval=&5& defaults=&sender.as2_id=myCompany, receiver.as2_id=myPartner&
sendFilename=&true& mimetype=&application/EDIFACT&/&
使 OpenAS2 软件能够每隔 5 秒钟轮询文件夹 %home%/To_myPartner 获取消息。在发现文件之后,它将使用
defaults 属性创建 AS2-To: 和 AS2-From: 标题并设置应用程序 mime 类型。然后,OpenAS2 使用partnerships.xml 文件中的详细信息来发送实际的数据。换句话说,它设置标题 “AS2-From: myCompany” 和 “AS2-To: myPartner”,然后为指定 “myCompany-myPartner” 的部分检查 partnerships 文件,最后将数据发送到该合作关系的as2_url
中的目标。 receiver.AS2ReceiverModule 和 receiver.AS2MDNReceiverModule 类名指定在哪个端口上监听 AS2 消息和异步 MDN 警告:
&module classname=&org.openas2.processor.receiver.AS2ReceiverModule&
port=&10080&
errordir=&%home%\inbox\error& errorformat=&sender.as2_id, receiver.as2_id,
headers.message-id&/&
&module classname=&org.openas2.processor.receiver.AS2MDNReceiverModule&
port=&10081&/&
这些端口值用于 partnerships.xml 文件中的 as2_url 和 as2_mdn_to 属性。
partnerships.xml
这个文件定义两个交易伙伴之间的关系。它包含两个主要部分:
&partner& 部分为交易伙伴指派各种属性,因此有两个这样的节点。关键值是 x509_alias 属性,使用它来选择密匙库中的特定证书。一个常见的错误是该值与密匙库中的证书匹配不当。这是代码行例子:&partner name=&myCompany& as2_id=&myCompany& x509_alias=&myCompany& email=&&/&&partnership& 部分用于确定将要传递的文档发送到什么地方。有两种这样的节点,一个用于将文档发送给交易伙伴,一个用于从交易伙伴发出文档。两个重要的属性为as2_url 和as2_mdn_to。它们都使用 URI 格式,其值作为所发送的消息的目标:
&partnership name=&myPartner-myCompany&&
&sender name=&myPartner&/&
&receiver name=&myCompany&/&
&attribute name=&protocol& value=&as2&/&
&attribute name=&subject& value=&From myPartner to myCompany&/&
&attribute name=&as2_url& value=&http://localhost:10080&/&
&!-- This value is from the myCompany.xml file --&
&attribute name=&as2_mdn_to& value=&http://localhost:10081&/&
&!-- This value is from the myCompany.xml file --&
&attribute name=&as2_mdn_options& value=&signed-receipt-protocol=optional,
pkcs7- signed-receipt-micalg=optional, sha1&/&
&attribute name=&encrypt& value=&3des&/&
&attribute name=&sign& value=&sha1&/&
&/partnership&
myCompany.p12(或 partner.p12)
这个 SSL 密匙库是 Java 所使用的常见密匙库。它包含一个自签名证书(对于 myCompany)和一个签名者证书(对于 myPartner)。
commands.xml
这个文件原封不动地来自 OpenAS2 发行版,因此不再深入讨论。
在这个部分,您将把 XB60 配置为充当 myCompany,并使用 OpenAS2 充当交易伙伴 myPartner。下面显示了该模型。这里有两个场景:
入站流:myPartner (OpenAS2) 向 myCompany (XB60) 发送一个文档,该文档通过 FTP 传递到后端。FileZilla 服务器用作接受该文档的简单 FTP 服务器。出站流:myCompany (XB60) 通过 HTTP 接收文档,并使用 AS2 将其发送到 myPartner (OpenAS2)。
为 OpenAS2 创建 myParter 配置。 将 myParter 签名证书上传到 XB60 并为之创建一个 crypto 对象。 在 XB60 上为 myCompany 创建 crypto 密匙。 从 XB60 将 myCompany 签名证书下载到 myPartner 文件夹。 在 OpenAS2 中将 myCompany 签名证书导入到 myProfile.p12 文件。 使用生成的证书和 FTP 后端目标在 XB60 上创建 myCompany(内部)配置文件。 使用上传的 myPartner 签名证书和 AS2 后端目标在 XB60 上创建 myPartner(外部)配置文件。 使用 AS2 前端处理程序为这些配置文件创建一个 B2B 网关。 开始传递文档!
您将需要使用来自安装在 OpenAS2 中的压缩文件的 myPartner 文件夹。对于 OpenAS2 不需要 myCompany 部分,因为这部分将被 XB60 代替。编辑partnerships.xml 文件并使用 XB60 的 IP 地址替换 localhost 的值。您仅需在&partnership name=&myPartner-myCompany&& 部分这样做。
在 XB60 上创建了 myCompany 配置文件之后,需要更改 myPartner.p12 文件。您还需要将压缩文件中的 SSL 文件夹中的myPartner.crt 签名证书上传到 XB60。
在 XB60 GUI 上导航到 Administration =& Miscellaneous =& Crypto Tools 并单击Import Crypto Object 选项卡。单击Upload 按钮并浏览解压缩文件 SSL 文件夹中的myPartner.crt 文件。在上传完成之后,在 “Input File Name” 下拉列表中选择它,在 Object Name
字段输入 “myPartnerCert” 并单击Import Crypto Object。稍后在 XB60 上创建 myPartner 外部配置文件时还需要使用该对象。
确保忽略日期,因为您仅使用测试环境。导航到 Objects =& Crypto Configuration =& Crypto Certificates 并单击myPartnerCert。编辑该面板并将Ignore Expiration Dates 设置为
On,然后单击 Apply。保存您的配置:
在 XB60 GUI 上导航到 Administration =& Miscellaneous =& Crypto Tools,并使用密码passw0rd 为myCompany 生成证书,如下所示。不用理会 “State or Province”、“Locality” 和 “Organization”。输入您的值并单击Generate Key:
在创建了 crypto 密匙之后,将可以在 temporary:/// 文件夹中找到以下文件:myCompany-privkey.pem、myCompany-sscert.pem 和myCompany.csr。将myCompany-sscert.pem 文件下载到 OpenAS2
myPartner 文件夹。
现在,在 OpenAS2 中已经有一个名为 myPartner.p12 的证书文件,该文件中有错误的 myCompany 证书。使用从 XB60 下载的证书代替错误的证书。在myPartner 文件夹中启动 OpenAS2 文件并发出以下命令:
Staring OpenAS2 with file myPartner.xml
OpenAS2 v0.9
Starting Server...
Loading configuration...
Registering Session to Command Processor...
Starting Active Modules...
OpenAS2 Started
07/12/10 15:15:51 OpenAS2Server: - OpenAS2 Started -
Loading Command Processor...[Thread[Thread-2,5,main], Thread[Thread-3,5,main]]
Loading Command Processor...[Thread[Thread-2,5,main], Thread[Thread-3,5,main]]
#&cert list
#&cert delete myCompany
deleted myCompany
#&cert import myCompany myCompany-sscert.pem
Certificate(s) imported successfully
(output truncated for brevity)
#&cert list
在 XB60 GUI 上单击 B2B Partner Profile 并创建名为 myCompany 的内部配置文件。在 Main 选项卡上,输入 Partner Business ID:
在 AS Settings 选项卡上,通过单击 + 和使用先前生成的密匙创建 “Inbound Decryption Identification Credentials” 和 “Signing Identification Credentials”:
在 Destinations 选项卡上,您需要为所选择的 FTP 服务器创建一个后端。因为这只是测试场景,您可以在保存文档时指定文件名。但是在实际环境中,您可能会展开Enable Advanced AS3/FTP Settings 并单击Generate unique filename on trailing slash,但前提是您的 FTP 服务器支持 STOU 命令:
在该选项卡中单击了 Apply 之后,您将看到以下摘要:
在页面的顶部单击 Apply 创建内部配置文件并保存更改。
在 XB60 GUI 上单击 Partner Profile 并创建名为 myPartner 的外部配置文件。在 Main 选项卡上输入 Partner Business ID:
在 AS Settings 选项卡上,通过单击 + 和使用先前从上传文件创建的密匙创建 “Inbound Security Validation Credentials”:
在 Destinations 选项卡上,在 OpenAS2 配置中为 AS2 监听器输入值:
在该面板内单击 Apply 将看到以下摘要:
在页面的顶部单击 Apply 创建外部配置文件并保存更改。
在两个交易伙伴之间创建 B2B 网关:
添加先前创建的两个交易伙伴配置文件(myCompany 和 myPartner)。 添加 AS2 前端处理程序和 HTTP 前端处理程序:
在 Archive 选项卡上选择 Purge Only:
要运行场景 1 并将文档发送到 XB60,需要在 myPartner 文件中启动 OpenAS2 软件,然后将 inbound.EDIFACT 文档放到 to_myCompany 文件夹中:
Staring OpenAS2 with file myPartner.xml
OpenAS2 v0.9
Starting Server...
Loading configuration...
Registering Session to Command Processor...
Starting Active Modules...
OpenAS2 Started
07/13/10 10:47:44 OpenAS2Server: - OpenAS2 Started -
Loading Command Processor...[Thread[Thread-2,5,main], Thread[Thread-3,5,main]]
Loading Command Processor...[Thread[Thread-2,5,main], Thread[Thread-3,5,main]]
07/13/10 10:47:49 DirectoryPollingModule: processing C:\OpenAS2\myPartner\
To_myCompany\inbound.EDIFACT
07/13/10 10:47:49 DirectoryPollingModule: file assigned to message C:\OpenAS2\myPartner\
To_myCompany\inbound.EDIFACT
[&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:49 AS2SenderModule: message submitted
[&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:50 AS2SenderModule: signed data
[&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:50 AS2SenderModule: encrypted data
[&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:50 AS2SenderModule: connecting to http://9.42.126.20:10080
[&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:50 AS2SenderModule: transferred 2727 bytes in 0.46 seconds at 57. 915 KBps
[&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:54 AS2SenderModule: received MDN
[automatic-action/MDN-sent- processed]
[&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:54 AS2SenderModule: mic is matched, mic: nrpe5qz/n4GKdl+Cl+hgrrImyA4=,
sha1 [&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:54 AS2SenderModule: message sent
[&OPENAS2-49+@myPartner_myCompany&]
07/13/10 10:47:54 DirectoryPollingModule: deleted C:\OpenAS2\myPartner\
To_myCompany\inbound.EDIFACT
[&OPENAS2-49+@myPartner_myCompany&]
在这次运行中,您可以看到 OpenAS2 轮询程序在 To_myCompany 文件夹中发现 inbound.EDIFACT 文档及其消息 ID。在签名并加密该数据之后,它将连接到 XB60(connecting to http://9.42.126.20:10080),然后传送文件,最后接收 MDN。OpenAS2 还将检查 MDN 是否有效,确认消息已发送并收到,然后将其从 To_myCompany 文件夹删除。最后在 FTP 服务器上该文件被替换为 myFile.txt。
在 B2B 交易查看器中的文档传递过程:如您所见,使用 URL as2://9.41.126.20:10080 的消息到达之后被发送到 ftp://9.164.169.14/MyFile.txt 上的后端,然后发送一个响应 MDN:
要实现将文档发送给 XB60,然后再让 XB60 将其发送给 MyPartner(出站流)需要使用 curl 程序。使用以下命令:
curl --data-binary @outbound.EDIFACT --header &AS2-To: myPartner&
--header &AS2-From: myCompany& http://9.42.126.20:30080
这个 curl 命令没有任何输出。在 myPartner 窗口中,您可以看到一个与下面的对话框类似的对话框(突出显示重要部分)。对于 OpenAS2 交易伙伴,传输的文档将出现在 inbox 文件夹中:
07/15/10 15:26:08 AS2ReceiverHandler: incoming connection 9.42.126.20 26319
07/15/10 15:26:08 AS2ReceiverHandler: received 3847 bytes
in 0.172 seconds at 21.862 KBps 9.42.126.20 26319
[&afdf926b-dd46-4a06-90a8-244e58a84d6a@9.42.126.20&]
07/15/10 15:26:08 AS2ReceiverHandler: decrypting
[&afdf926b-dd46-4a06-90a8-244e58a84d6a@9.42.126.20&]
07/15/10 15:26:08 AS2ReceiverHandler: verifying signature
[&afdf926b-dd46-4a06-90a8-244e58a84d6a@9.42.126.20&]
07/15/10 15:26:08 MessageFileModule: stored message to C:\OpenAS2\myPartner\inbox\
myCompany-myPartner-_afdf926b-dd46-4a06-90a8-244e58a84d6a@9.42.126.20_
[&afdf926b-dd46-4a06-90a8-244e58a84d6a@9.42.126.20&]
07/15/10 15:26:08 MessageFileModule: stored headers to C:\OpenAS2\myPartner\inbox\
msgheaders\2010\07\myCompany-myPartner-_afdf926b-dd46-4a06-90a8-244e58a84d6a
@9.42.126.20_ [&afdf926b-dd46-4a06-90a8-244e58a84d6a@9.42.126.20&]
07/15/10 15:26:09 AS2ReceiverHandler: sent MDN
[automatic-action/MDN-sent- processed] 9.42.126.20 26319
[&afdf926b-dd46-4a06-90a8-244e58a84d6a@9.42.126.20&]
这里是交易查看器对此次交易的记录。该文档在 http://9.42.126.20:30080 上接收到,然后传输到 as2://9.164.169.14:20080,最后收到一个响应 MDN:
现在,您已经将 OpenAS2 配置为稍加修改就可用于不同交易伙伴的引用模型,并配置了 WebSphere DataPower B2B Appliance XB60,实现使用入站流和出站流与 OpenAS2 交换文档。现在,您可以将 OpenAS2 用作 DataPower XB60 Appliances 的测试工具。
download.zip
非 IBM 下载
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:74301次
积分:1275
积分:1275
排名:千里之外
原创:54篇
转载:28篇
评论:11条
(4)(3)(1)(1)(13)(21)(10)(2)(21)(6)}

我要回帖

更多关于 同城票据网盈利模式 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信