AS2
Es können Nachrichten via AS2 über TCP/IP gesendet und empfangen werden. Es werden hier die prinzipielle Vorgehensweise und Konfigurationseinstellungen, Installation und Testmöglichkeiten beschrieben. Der Zugriff auf andere AS2-Systeme wird hier nicht beschrieben. Unser AS2-Service ist von Drummond zertifiziert .
Prinzipieller Ablauf

Applicability Statement 2 (AS2) ist ein Standard für den gesicherten Nachrichtentransport über das Internet via HTTP oder HTTPS. AS2 spezifiziert, wie man sich verbindet und Nachrichten validiert, versendet und bestätigt. Es erzeugt einen Umschlag für eine Nachricht, welche dann gesichert über das Internet versandt wird.
Die Urheberschaft einer Nachricht kann durch Signaturen in Form von Zertifikaten und die Datensicherheit durch Verschlüsselung gewährleistet werden. Der Absender erhält aus dem AS2-Protokoll eine digitale Empfangsquittung, in der AS2-Sprache als Message Disposition Notification (MDN) bezeichnet, mit der der Absender die fristgerechte Zustellung beweisen kann. Zusätzlich enthält die MDN die Information, ob die Nachricht entschlüsselt und die Signatur überprüft werden konnte. Hinweis: Um im Control Center MDNs angezeigt zu bekommen, muss die Kommunikation über einen Partner-Kanal erfolgen.
Charakteristischer Unterschied zu anderen Übertragungsstandards ist, dass der Anwender zum Beweis der Revisionssicherheit nicht auf technische Protokolle angewiesen ist, sondern mit der MDN den Beweis in Nachrichtenform besitzt. Zudem fallen bei der Kommunikation via AS2 im Allgemeinen keine weiteren Kosten an und es gilt als sehr schnelles und zuverlässiges Kommunikationsmittel.
AS2 kann auch als Ersatz für X.400 gesehen werden. Bei der Migration von X.400 auf AS2 können wir Sie gegebenenfalls unterstützen. Bitte kontaktieren Sie hierzu unsere Mitarbeiter vom Support oder vom Vertrieb.
AS2-Installation
Nach der Installation sind alle erforderlichen Programmteile verfügbar. Stellen Sie jedoch sicher, dass der AS2-Service entsprechend lizenziert und in der Konfigurationsdatei ./etc/factory.xml freigeschaltet ist (vorhandenen Eintrag auskommentieren und Integration Server neu starten).
<
Call
name
=
"addService"
>
<
Arg
>com.ebd.hub.services.as2.As2Service</
Arg
>
<
Arg
>etc/as2.xml</
Arg
>
</
Call
>
In der mit ausgelieferten Konfigurationsdatei ./etc/as2.xml wird bereits ein HTTP-Server mit dem Namen Main Server vorkonfiguriert. Dieser ist Voraussetzung für den Betrieb von AS2. Der HTTP-Server wird automatisch beim Starten des Integration Servers gestartet.
Folgend ein Auszug aus der Konfigurationsdatei ./etc/as2.xml.
<
Call
name
=
"setContext"
>
<
Arg
>Main Server</
Arg
>
<
Arg
>/partner/*</
Arg
>
<
Arg
>/AS2Retrieve/*</
Arg
>
</
Call
>
Der zu verwendende Kontext des HTTP-Servers wird in dieser Datei bereits mit /partner/* und /AS2Retrieve/* vorgegeben. Durch Verwendung von Wildcards ist es möglich, dass weitere Werte hinzukommen.
Damit ist es einem AS2-Sender möglich, den AS2-Service über die folgende Adresse anzusprechen.
http://<URL or IP of Integration Server>/partner/AS2Retrieve/ |
Die Einträge sind beliebig erweiterbar. Soll ein weiterer HTTP-Server hinzugefügt werden, finden Sie weiterführende Informationen in der Dokumentation zur Admin-Konsole.
Grundsätzlich ist für den AS2-Service keine zusätzliche Installation auf dem DMZ-System erforderlich. In diesem Fall muss auf der Firewall des DMZ-Systems lediglich konfiguriert werden, dass Anfragen eines bestimmten Partners automatisch an eine bestimmte IP und Portnummer des vorher beschriebenen internen HTTP-Server weitergeleitet werden.
AS2-Service testen
Der einfachste Weg um die Verfügbarkeit des AS2-Services zu testen ist ein Browser. Geben Sie in der Adresszeile einfach die folgende URL ein.
http://<URL oder IP des Integration Servers>/partner/AS2Retrieve/ |
Hierauf antwortet der AS2-Service mit einer MDN, die Sie bitte auf dem lokalen System speichern. Der Inhalt dieser MDN sieht dann wie folgt aus.
------=_Part_0_24916054.1236247212828
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
MDN for -
Message-ID: null
From: null
To: null
Received on: n.a.
Status: failed: authentication-failure
Comment: This is not a guarantee that the message has
been completely processed or understood by the receiving
translator
------=_Part_0_24916054.1236247212828
Content-Type: message/disposition-notification
Content-Transfer-Encoding: 7bit
Reporting-UA: Lobster AS2-Server (IS/5.7.19_14147)
Original-Recipient: rfc822; null
Final-Recipient: rfc822; null
Original-Message-ID: null
Received-Content-MIC: 2jmj7l5rSw0yVb/vlWAYkK/YBwk=, sha1
Disposition: automatic-action/MDN-sent-automatically; failed: authentication-failure
Failure: You're unknown to this system
------=_Part_0_24916054.1236247212828--
Erhalten Sie eine Antwort dieser Art, ist der AS2-Service erreichbar und steht zur Verfügung. Den Anmeldefehler in der MDN können Sie hier ignorieren, da wir nur an der Erreichbarkeit interessiert sind.
Abweichender Port
Wird nicht der Standard-HTTP-Port verwendet, können Sie den richtigen folgendermaßen ermitteln. In der Konfigurationsdatei ./etc/as2.xml befindet sich folgender Eintrag.
<
Call
name
=
"setContext"
>
<
Arg
>Main Server</
Arg
>
<
Arg
>/partner/*</
Arg
>
<
Arg
>/AS2Retrieve/*</
Arg
>
</
Call
>
In der Admin-Konsole finden Sie dann für den Namen des HTTP-Servers (hier Main Server) die Ports der Listener.
Anhand dieser beiden Informationen ergeben sich dann z. B. die URLs
http://<host>:8080/partner/AS2Retrieve
https://<host>:8443/partner/AS2Retrieve
Parameter-Austausch mit Partner
Für die Authentifizierung von AS2-Partnern sind verschiedene Kommunikationsparameter notwendig, die zwischen beiden Partnern ausgetauscht werden müssen. Ein Dokument zum Austausch von Kommunikationsparametern könnte folgendes enthalten. Bitte klären und tauschen Sie mit Ihrem Partner zuerst diese Informationen aus, bevor Sie mit der Etablierung der Verbindung beginnen.
Parameter |
Beschreibung |
Optional/Pflicht |
AS2 Identifier |
Über den AS2 Identifier wird genau ein Partner auf dem jeweiligen Empfangssystem angesprochen. Es ist ähnlich wie Ihr Vorname, auf den Sie reagieren. Sie können den Namen frei vergeben. Es empfiehlt sich jedoch Ihren Firmennamen plus ein Präfix zu verwenden, z. B. AS2_EXAMPLECOMPANY. |
P |
AS2 Address URL |
Hier wird die Adresse angegeben, auf die ein HTTP-Listener reagieren soll. Dies kann eine beliebige URL auf einem System oder auch die Standard-URL des Integration Servers sein, z. B. http://as2.example.com/as2. |
P |
Connection IP Address |
Zieladresse, die in der Firewall des Senders freigeschaltet werden muss, um Daten senden zu können. |
P |
Connection Port |
Port, der in der Firewall des Senders freigeschaltet werden muss, um Daten senden zu können. |
P |
Outgoing IP |
IP-Adresse die auf der Seite des Datenempfängers freigeschaltet sein muss, damit Daten empfangen werden können. Hier muss die IP des DMZs oder des internen Systems angegeben werden (abhängig davon, ob ein DMZ-Server verwendet wird oder nicht). |
P |
Certificate |
Im obigen Beispiel wird eine URL dargestellt, unter der sich der Kommunikationspartner die Zertifikate downloaden kann. Natürlich können Zertifikate auch auf anderem Wege ausgetauscht werden. Der Einsatz von Zertifikaten ist optional. |
O |
Encryption Algorithm |
Verschlüsselungsalgorithmus der Nachricht. |
O |
Signing Algorithm |
Verschlüsselungsalgorithmus der Signatur. |
O |
Content Type |
Parameter, der von Empfangspartnern manchmal verlangt wird. Die Einstellung wird im Ausgangsweg vorgenommen. Wir benötigen diesen Parameter nicht. |
O |
MDN Delivery Mode |
Hier kann festgelegt werden, ob eine MDN (Empfangsbestätigung) vom Partner entweder synchron oder asynchron gesendet werden soll. Im asynchronen Fall soll die MDN (irgendwann) nach der Datenübertragung an die angegebene URL gesendet werden. Im synchronen Modus wird die Übertragung der MDN als direkte Antwort auf die Datenübertragung erwartet. Hinweis: Beide Seiten müssen denselben Modus benutzen. |
O |
MDN URL Async Mode |
Bei asynchroner MDN soll nach der Datenübertragung an diese angegebene URL gesendet werden, z. B. http://example.com/as2 |
Versenden und Empfangen
AS2-Partner-Kanal anlegen
Um Daten via AS2 zu versenden oder zu empfangen, benötigen Sie einen Partner, welcher in der Partnerverwaltung erstellt werden muss.
Der dargestellte Partner-Kanal erlaubt es, Daten zu empfangen und zu senden (1). Hierzu wird die Standard-URL des AS2-Services, wie in der Konfigurationsdatei ./etc/as2.xml vorkonfiguriert, verwendet, z. B. http://<URL/IP des Integration Servers>/partner/AS2Retrieve/. Die AS2 Identifier (2) und (3) sind in jedem Fall erforderlich, damit der richtige Partnerkanal angesprochen wird. Egal ob die Daten nur empfangen oder nur gesendet werden.
Der Parameter Partner Adresse (4) entspricht dem Feld AS2 Address (URL) im Abschnitt "Parameter-Austausch mit Partner". Hier geben Sie die URL zum AS2-Service des Empfangspartners an.
Bei Verwendung von Zertifikaten (X.509-Standard), können diese aus den jeweiligen Dropdown-Liste ausgewählt werden (5).
Das Signieren von Daten können Sie mit den anschließenden Feldern aktivieren oder deaktivieren (6). Gleiches gilt für die Verschlüsselung. Welcher Algorithmus verwendet werden soll, ist in den Feldern Signatur-Algorithmus oder Verschlüsselung einzustellen (7). Das Signieren und Verschlüsseln der Daten ist optional.
In dem Feld MDN-Typ und MDN-URL (8) kann festgelegt werden, ob eine MDN (Empfangsbestätigung) vom Partner entweder synchron oder asynchron gesendet werden soll. Bei Asynchron soll die MDN nach der Datenübertragung an die angegebene URL gesendet werden. Bei Synchron wird die Übertragung der MDN als direkte Antwort auf die Datenübertragung erwartet. Die MDNs finden Sie im Control Center im Bereich Comm-Log.
Wurde keinerlei Einstellungen im Feld MDN-Typ und MDN-URL getroffen, so werden die Systemeinstellungen aus der Konfigurationsdatei ./etc/as2.xml übernommen. Die Standardeinstellung ist Synchron. Folgende Stelle in der Konfigurationsdatei kann verwendet werden, um ein asynchron Versenden der MDNs zu aktivieren.
<!-- Set your valid URL here, to enable asynchronous sending (like
http://
<
server
>/partner/AS2Retrieve) -->
<!-- Set name="defaultMDNAsynchronousURL"></
Set
> -->
Daten via AS2 versenden
Das Beispiel zeigt den Antwortweg zum Versenden von Daten via AS2. Hier wird lediglich der Partner zum Senden von Daten aus der Partnerverwaltung ausgewählt. Die restlichen Parameter können wie bei den anderen Typen von Antwortwegen verwendet werden. Soll abweichend von der Einstellung in der Partnerverwaltung eine andere URL verwendet werden, trägt man diese in dem Feld URL ein. Der Parameter Datei beschreibt den Dateinamen, welcher gemäß der AS2-Erweiterung FN mit übertragen wird.
Daten via AS2 empfangen
Sie müssen lediglich einen eventgesteuerten Eingangsagenten des Typs AS2 auswählen und den Partner auf die rechte Seite schieben.
Das Eingabefeld Dateimuster ist ein optionaler Parameter, welcher nicht von allen AS2-Systemen übertragen werden kann. Die Standardeinstellung erlaubt Ihnen Daten mit und ohne Dateinamen zu empfangen.
AS2 mit DMZ
Es gibt zwei Möglichkeiten den AS2-Service über einen DMZ-Server einzurichten. Einmal als HTTP-Weiterleitung vom DMZ-Server nach innen, d. h. ohne einen AS2-Service auf dem DMZ-Server und einmal in der Art und Weise, wie man das beim FTP-Service einrichtet. Das Senden von Daten erfolgt in den überwiegenden Fällen vom internen System.
Weiterleitung vom DMZ-Server
Damit bekommt der Partner eine direkte Rückmeldung, sollte das nachfolgende System (innerer Integration Server) nicht verfügbar sein. Bitte beachten Sie, dass zwischen DMZ-Server und internem Server der Port 80 freigeschaltet sein sollte, falls für den HTTP-Server der Standardport 80 verwendet wird. Abweichungen sind natürlich möglich.
Auf dem DMZ-Server ist folgender Eintrag in der Konfigurationsdatei ./etc forward.properties notwendig.
/partner/AS2Retrieve=http://internerserver/partner/AS2Retrieve
/partner/AS2Retrieve/*=http://internerserver/partner/AS2Retrieve
AS2-Mitteilungen dynamisch über alternativen DMZ versenden
Siehe hierzu den Abschnitt Dynamisch über alternativen DMZ Server versenden.
Checkliste zur AS2-Inbetriebnahme
Lauffähige Lobster-Installation ist vorhanden.
Java(TM) Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files ist vorhanden.
Permanente Internetverbindung, wenn Daten empfangen werden sollen, steht zur Verfügung.
AS2-Service lizenziert und aktiviert (kostenpflichtiges Zusatzmodul). Bitte kontaktieren Sie hierzu unsere Mitarbeiter vom Support oder vom Vertrieb.
AS2-Parameter sind ausgetauscht und konfiguriert.
AS2-Partner ist in der Partnerverwaltung angelegt. Bei Verwendung von Zertifikaten, diese bitte bei dem jeweiligen AS2-Partner importieren.
Profil zur AS2-Verarbeitung wurde angelegt unter Verwendung der konfigurierten Kanäle.