AS4 Connector
Der AS4 Connector versendet und empfängt Geschäftsnachrichten und Empfangsbestätigungen gemäß dem Applicability Statement 4 (AS4).
AS4 erlaubt das B2B (business to business) Web-Services-Messaging auf Basis der ebMS 3.0-Spezifikation.
AS4 beschreibt, wie Geschäftsnachrichten sicher über das HTTP-Protokoll in einem Peer-to-Peer-Netzwerk ausgetauscht werden. AS4 definiert, wie die Verbindung hergestellt, Geschäftsnachrichten validiert, versendet und durch Empfangsbestätigungen bestätigt werden.
Die Urheberschaft einer Geschäftsnachricht wird durch digitale Signaturen und die Datensicherheit durch Verschlüsselung gewährleistet. Der Absender erhält nach dem AS4-Übertragungsstandard eine digitale Empfangsquittung (Message Disposition Notification, MDN), mit welcher der Absender die fristgerechte Zustellung beweisen kann.
Vor dem Versenden wird für jede Geschäftsnachricht ein Umschlag in Form einer SOAP-Struktur erzeugt.
Die Geschäftsnachrichten können in einem XML-Format, EDI-Format (z.B. ASC X12, HL7 oder UN/EDIFACT) oder in jedem anderen strukturierten Format vorliegen.
Siehe AS4 Specification.
Einführung
Der AS4 Connector kann als Input-, Medium- oder Output-Konnektor genutzt werden. Damit können auch zwei INUBIT Process Engines über AS4 kommunizieren, z.B.:
-
AS4 Output Connector zum Senden von AS4-Nachrichten
-
AS4 Input Connector zum Empfangen von AS4-Nachrichten
Kommunikationsmodi
Der AS4 Connector unterstützt sowohl synchrone als auch asynchrone Kommunikation mit einem AS4-Partner.
-
Synchroner Modus: Der Sender wartet auf die Antwortquittung.
-
Asynchroner Modus: Der Sender wartet nicht auf die Antwortquittung, die von einem weiteren AS4 Listener Connector (Callback Listener) empfangen wird.
Die Kommunikation wird über Collaboration Protocol Agreements (CPAs) gesteuert, die in INUBIT als CPA-Dateien im XML-Format im INUBIT-Repository gespeichert sein müssen.
Siehe
AS4-Gateway
Das AS4-Gateway erlaubt die Kommunikation mit den AS4-Gateways der AS4-Partner.
Das INUBIT AS4-Gateway basiert auf dem Jentrata Open Source B2B Gateway.
Das AS4-Gateway wird während der INUBIT-Installation installiert und zusammen mit der Process Engine gestartet. Siehe INUBIT-Software installieren.
AS4-Gateway konfigurieren
Das AS4-Gateway wird in der zum inubit-Lieferumfang gehörenden Datei <inubit-installdir>/inubit/server/ibis_root/conf/as4/as4-gateway.xml
konfiguriert.
Das AS4-Gateway-Logging wird in der zum inubit-Lieferumfang gehörenden Datei <inubit-installdir>/inubit/server/ibis_root/conf/as4/log4j2.properties
konfiguriert.
|
Für den produktiven Einsatz wird empfohlen, eine andere als die standardmäßig installierte H2-Datenbank als AS4-Nachrichtenspeicher zu nutzen. Das Bereinigen der Datenbank liegt in der Verantwortung des Datenbankbenutzers/-Designers. |
Kopieren Sie den zur Datenbank passenden JDBC-Treiber in das Verzeichnis <inubit-installdir>/inubit/server/process_engine/webapps/as4-gateway/WEB-INF/lib
.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<!-- The ActiveMQ server (broker) that is needed for
communication between Process Engine and AS4 gateway
binds locally on this port. May be changed to any other valid port number -->
<entry key="broker.port">61620</entry>
<entry key="broker.url">failover:(tcp://localhost:${broker.port})?initialReconnectDelay=2000&timeout=60000</entry>
<!-- Proxy settings -->
<entry key="http.proxyHost"></entry>
<entry key="http.proxyPort"></entry>
<entry key="http.proxyScheme">http4</entry>
<entry key="http.httpClientOverride"></entry>
<!-- AtiveMQ memory limit configuration -->
<entry key="activemq.memoryLimit">5mb</entry>
<!-- SQL script file name. This script is run during AS4 gateway start up -->
<entry key="sql.script.filename">sql-script.sql</entry>
<!-- JDBC Message Store Database Properties -->
<!-- Select exactly ONE section from the following sections to support your database -->
<!-- H2 -->
<entry key="messagestore.type">H2</entry>
<entry key="messagestore.jdbc.driverClass">org.h2.Driver</entry>
<entry key="messagestore.jdbc.url">jdbc:h2:../../ibis_root/ibis_data/as4/message-store;AUTO_SERVER=TRUE</entry>
<entry key="messagestore.jdbc.username">jentrata</entry>
<entry key="messagestore.jdbc.password">jentrata</entry>
<entry key="messagestore.jdbc.validationQuery">select 1</entry>
<entry key="messagestore.jdbc.connectionProperties">h2.socketConnectTimeout=180000</entry>
<!-- Oracle -->
...
<!-- MySQL -->
...
<!-- SQL Server -->
...
<!-- PostgreSQL -->
...
</properties>
Parameter
Parameter | Bedeutung | ||
---|---|---|---|
|
Legt fest, über welchen Port das AS4-Gateway mit der Process Engine kommunizieren soll. Eine Änderung ist nur erforderlich, wenn der Port 61620 bereits anderweitig benutzt wird. |
||
|
URL des Brokers, mit dem sich der Client verbinden soll |
||
|
Legt die maximale Größe einer Nachricht fest.
Überschreitet die Größe einer Nachricht diesen Wert, wird die Nachricht zurückgewiesen.
Standardmäßig ist
Wenn Sie die Parameter angepasst haben, müssen Sie diese nach einer Patch-Installation erneut anpassen. |
||
|
Benennt optional ein SQL-Skript, das beim Start des AS4- Gateways ausgeführt wird. Das Skript muss im selben Ordner liegen wie die AS4-Gateway-Konfigurationsdatei:
Der Inhalt des SQL-Skripts wird vom Benutzer bereitgestellt. Im Falle einer SQL-Exception bei der Ausführung einer beliebigen Anweisung werden die vorherigen Ausführungen zurückgerollt. Der Umfang des Rollbacks ist abhängig vom AS4-Datenbanktyp. Nach der Ausführung wird das Skript als Sicherungsdatei mit dem aktuellen Zeitstempel umbenannt. |
||
|
Datenbanktyp (ORACLE, MYSQL, POSTGRES, H2) |
||
|
Datenbanktreiberklasse |
||
|
JDBC-URL der Datenbank
|
||
|
Datenbank-Benutzername |
||
|
Datenbank-Passwort |
||
|
Abfrage zum Validieren der Verbindungen aus dem Pool, bevor sie an den Aufrufer zurückgegeben werden |
||
|
Verbindungseigenschaften, die beim Aufbauen einer neuen Verbindung an den JDBC-Treiber gesendet werden |
Der AS4-MessageStore enthält folgende zwei Tabellen:
-
Status-Tabelle
IBIS_AS4_MSG_STATUS
Diese Tabelle enthält den Status der Nachrichten. Folgende Status werden unterschieden:
Status | Bedeutung |
---|---|
RECEIVED |
Eingangsnachricht erhalten |
DELIVER |
Ausgangsnachricht bereit, gesendet zu werden |
DELIVERED |
Ausgangsnachricht gesendet |
FAILED |
Eingangsnachricht nicht akzeptiert, Ausgangsnachricht nicht gesendet |
DONE |
Gesendet und Quittung erhalten |
IGNORED |
Falsche Eingangsnachricht |
ERROR |
SOAP-Fehler, AS4-Fehler |
-
Inhalte-Tabelle
IBIS_AS4_MSG_CONTENT
Diese Tabelle enthält die Inhalte der Nachrichten.
Es existiert keine automatische Bereinigung für die Datenbanktabellen des AS4-MessageStore. Sie müssen das Aufräumen selbst auf der Basis Ihrer fachlichen Anforderungen planen und ausführen.
AS4 Gateway-Proxy konfigurieren
Soll das AS4-Gateway über einen Proxy mit dem (den) AS4-Partner(n) kommunizieren, müssen SIe einen Proxy entsprechend konfigurieren. |
Der AS4-Gateway-Proxy wird in der Datei as4-gateway.xml
im Pfad <inubit-installdir>/inubit/server/ibis_root/conf/as4
konfiguriert.
Parameter
Parameter | Bedeutung |
---|---|
|
Proxy-Hostname |
|
Proxy-Portnummer |
|
Proxy-Schema |
|
Client Override |
Wenn Sie in der Kommunikation zum Proxy ein anderes Protokoll als in der Kommunikation zum Partner einsetzen wollen, so müssen Sie mittels des letzten Parameters (proxyScheme
) das Schema für den Proxy explizit setzen.
Im Falle eines lokalen, per HTTP angesprochenen Proxy ist der Parameter auf den festen Wert http4
zu setzen.
Der Wert entspricht dem verwendeten Endpoint-Schema der Apache Camel HTTP4-Komponente im AS4 Gateway.
Konfigurieren der AS4-Kommunikation
Wie die Kommunikation zwischen zwei AS4-Partnern erfolgt, konfigurieren Sie über XML-Dateien, die die Festlegungen in Form von Collaboration Protocol Agreements (CPAs) enthalten. Diese XML-Dateien werden im INUBIT-Repository hinterlegt. Eine Beispieldatei gehört zum Lieferumfang und ist unter folgendem Pfad im Repository abgelegt:
Global/System/Mapping Templates/AS4/as4-cpa-repository.xml
Kopieren Sie diese Datei in Ihren eigenen Repository-Bereich und passen Sie diese entsprechend an. Damit stellen Sie sicher, dass nur berechtigte Benutzer auf sensible Daten zugreifen können.
Sie können das Partner-Management nutzen, um die CPA-ID (Moduleigenschaft cpaId
) und den CPA-Dateinamen (Moduleigenschaft AS4CPAFilePath
) zu konfigurieren.
Sie können die Sicherheitseinstellungen in den folgenden Abschnitten in der Datei partnermanagement_config.xml
über das Menü Konfiguration > Partnermanagement der INUBIT Workbench konfigurieren:
-
Eingangsnachrichten
Abschnitt
<Protocol name="AS4" plugin="AS4 Connector" inbound="true">
-
Ausgangsnachrichten
Abschnitt
<Protocol name="AS4" plugin="AS4 Connector" outbound="true">
Siehe
Sie können beliebig viele CPA-Dateien anlegen.
Die CPA-ID aller Partnervereinbarungen muss über alle CPA-Dateien Ihrer INUBIT-Installation eindeutig sein. |
Auf der Registerseite CPA-Konfiguration des AS4 Connectors wählen Sie die CPA-Datei und – je nach Connector-Typ – eine oder mehrere der darin enthaltene CPA-IDs mit den Kommunikationsparametern zweier Kommunikationspartner aus.
Wenn Sie mehrere CPAs für einen Listener-Connector auswählen, stellen Sie sicher, dass alle ausgewählten CPAs denselben Alias des privaten Schlüssels ( |
Wenn Sie die Konfiguration einer Partnervereinbarung geändert haben, müssen Sie jeden AS4 Connector, der diese Partnervereinbarung verwendet, nach der Änderung deaktivieren und erneut aktivieren, damit die Änderungen wirksam werden. |
Die angegebene CPA-Datei wird automatisch anhand der AS4-Schemadatei validiert.
Eine Kopie der AS4-Schemadatei (as4-cpa-repository.xsd
) finden Sie im Repository in folgendem Verzeichnis:
/Global/System/Mapping Templates/AS4
Die Sektionen zweier Partner müssen bis auf das Element address
identisch sein.
Das Element address
enthält die Adresse des Partners und hat für einen INUBIT AS4 Connector folgenden Aufbau:
https://<server>:<port>/ibis/as4/{sync|async}
Beispielnachrichten
Beispielnachrichten finden Sie im Repository (as4-cpa-repository.xml
) in folgendem Verzeichnis:
/Global/System/Mapping Templates/AS4
Sicherheitseinstellungen über das Partnermanagement
Verwendung
Zum Konfigurieren der CPA-ID, der CPA-Datei, der Keystore-Datei, der Truststore-Datei sowie der zugehörigen Passwörter über das INUBIT Partnermanagement
Voraussetzungen
-
Sie haben einen Workflow erstellt, der einen AS4 Connector innerhalb eines Partnermanagement-Rahmens.
Beispiel für einen Medium/Output Connector
-
Sie haben den Partnermanagement-Rahmen passend konfiguriert.
-
Sie haben den Workflow mit dem AS4 Connector im Partnermanagement-Rahmen publiziert.
-
Sie haben ein Systemdiagramm mit mindestens einem Kommunikationswolke-Element erstellt.
-
Sie haben im Dialog Partnermanagement-Einstellungen (Kontextmenü Partnermanagement-Einstellungen bearbeiten der Kommunikationswolke) die folgenden Einstellungen vorgenommen:
-
Im Panel Referenzierbare Workflows haben Sie den Partnermanagement-Rahmen, der den AS4 Connector, enthält, als neue Referenz hinzugefügt.
-
Im Abschnitt Partner haben Sie mindestens einen Partner hinzugefügt.
-
Im Abschnitt Referenzierte Workflows haben Sie mindestens den im Panel Referenzierbare Workflows Workflow hinzugefügten mit dem AS4 Connector hinzugefügt.
Siehe
-
So gehen Sie vor
-
Öffnen Sie das Systemdiagramm mit der Kommunikationswolke, die Sie mit dem AS4 Connector verbinden wollen, zum Bearbeiten.
-
Öffnen Sie den Dialog Partnermanagement-Einstellungen über Kontextmenü Partnermanagement-Einstellungen bearbeiten der Kommunikationswolke.
→ Der folgende Dialog erscheint:
-
Im Abschnitt Details (AS4) konfigurieren Sie die zum zugehörigen Parameter passenden Sicherheitseinstellungen.
Um die Details gültig bis, Seriennummer und Betreff anzuzeigen, klicken Sie auf das Icon in der Zeile mit dem Dateinamen des Keystore oder des Truststore.
-
Klicken Sie auf OK, um die Änderungen zu speichern.
-
Publizieren Sie das Systemdiagramm.
CPA-Element Namespace
Die CPA-Datei enthält den XML-Namespace für den AS4 Connector:
<cpaRepository xmlns="https://www.virtimo.de/inubit/as4">
Abschnitt partnerAgreement
Diese Sektion enthält alle Propertys zum Austausch von Nachrichten mit einem oder mehreren Partnern.
-
Allgemeine Propertys für die Partnervereinbarung
-
Unterabschnitt
initiator
Zum Definieren der Propertys des Initiators der Nachricht, siehe CPA-Unterabschnitt Initiator und Responder.
-
Unterabschnitt
responder
Zum Definieren der Propertys des Nachrichtenantworters, siehe CPA-Unterabschnitt Initiator und Responder.
-
Unterabschnitt
businessInfo
Zum Definieren u.a. der auszuführenden Aktionen und Dienste, siehe CPA-Unterabschnitt businessInfo.
-
Unterabschnitt
protocol
Zum Definieren des Nachrichtenaustauschprotokolls, siehe CPA-Unterabschnitt protocol.
-
Unterabschnitt
security
Optional: Zum Definieren der Sicherheitseinstellungen, siehe CPA-Unterabschnitt security.
-
Unterabschnitt
receptionAwareness
Optional: Zum Definieren der Parameter zum erneuten Senden und ob Duplikate erkannt werden sollen, siehe CPA-Unterabschnitt receptionAwareness.
Allgemeine Propertys für die Partnervereinbarung
-
id
Eindeutige ID zum Identifizieren einer Konfiguration für einen Kommunikationspartner innerhalb einer INUBIT-Installation.
Wenn zwei unterschiedliche CPAs dieselbe ID definieren, überschreibt die zuletzt zum Gateway publizierte CPA alle zuvor zum Gateway publizierten CPAs, die dieselbe ID benutzen.
-
agreement
Eindeutige URI, die benutzt wird, um die Kommunikation zwischen zwei Partnern zu konfigurieren
-
mep
Zum Angeben der URI eines Nachrichtenaustauschschemas:
http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/oneWay
-
mepBinding
Zum Angeben der URI der Verbindungsart für das Nachrichtenaustauschschema:
http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/push
CPA-Unterabschnitt protocol
In diesem Abschnitt konfigurieren Sie die SOAP-Endpunktadresse und – optional – die SOAP-Version des entfernten Systems, d.h. der Receiver-Message-Handler, z.B. für Jentrata:
-
address
https://<server>:<port>/jentrata/ebms/inbound
Um Nachrichten zu einem INUBIT AS4 Connector zu senden, muss das Address-Element wie folgt aussehen:
-
Synchroner Modus
https://<server>:<port>/ibis/as4/sync
-
Asynchroner Modus
https://<server>:<port>/ibis/as4/async
-
-
soapVersion
Optional: SOAP-Version, die auf dem entfernten System läuft.
Es werden nur SOAP-1.2-kompatible Nachrichten generiert.
CPA-Unterabschnitt Initiator und Responder
Die Sektionen initiator
und responder
enthalten dieselben Elemente für den Sender und den Empfänger der Nachricht.
-
party
Eindeutige ID des Senders bzw. Empfängers der Nachricht. Sie muss eine gültige URI sein, wenn das Attribut
type
nicht gesetzt ist.-
type
Das optionale Attribut
type
klassifiziert die Semantik der benutzten ID, z.B. ein Katalog mit Kundennummern.Das Attribut
type
darf nicht mit ENTSOG benutzt werden.
-
-
role
Die Rolle des Senders bzw. des Empfängers, z.B. Buyer oder Seller.
Unterabschnitt authorization (darf nicht mit ENTSOG benutzt werden)
Benutzername und Passwort des Senders bzw. Empfängers, um sich beim jeweiligen Partnersystem zu authentifizieren.
-
username
Name des Senders bzw. Empfängers
-
password
Passwort des Senders bzw. Empfängers
-
digest
Gibt an, ob das Passwort Base64-kodiert sein muss oder Klartext sein kann. Mögliche Werte:
-
true
Das Passwort muss Base64-kodiert sein.
-
false
Das Passwort kann Klartext sein.
-
-
created
Gibt an, ob das
WSS UsernameToken
-Element ein Zeitstempel-ElementCreated
haben soll. Mögliche Werte:-
true
Das
WSS UsernameToken
-Element sollte ein Zeitstempel-ElementCreated
haben. -
false
Das
WSS UsernameToken
-Element muss kein Zeitstempel-ElementCreated
haben.
-
CPA-Unterabschnitt businessInfo
Die Elemente service
und action
enthalten Werte, die spezifizieren, wie Nachrichten behandelt werden sollen, die mit dieser CPA-ID gesendet oder empfangen wurden.
Jede Kombination Service-Action darf systemweit in nur für eine CPA-ID verwendet werden. |
-
service
Eindeutige Service-ID
Mit der Moduleigenschaft
AS4Service
können Sie dieses Element über das Variablenmapping setzen. Wenn Sie die ModuleigenschaftAS4Service
gesetzt haben, hat dieser Wert Vorrang vor der Einstellung in der CPA-Datei und das AS4-Gateway verwendet diesen Wert. Anderenfalls verwendet das AS4-Gateway den in der CPA-Repository-Datei konfigurierten Wert. -
action
Eindeutige Action-ID
Mit der Moduleigenschaft
AS4Action
können Sie dieses Element über das Variablenmapping setzen. Wenn Sie die ModuleigenschaftAS4Action
gesetzt haben, hat dieser Wert Vorrang vor der Einstellung in der CPA-Datei und das AS4-Gateway verwendet diesen Wert. Anderenfalls verwendet das AS4-Gateway den in der CPA-Repository-Datei konfigurierten Wert.
CPA-Unterabschnitt security
Die Sektion security
definiert die Einstellungen sowohl für das Senden von Quittungen als auch für das Signieren und Verschlüsseln der Nachricht.
-
Unterabschnitt
sendReceipt
, um zu konfigurieren, wie Quittungen behandelt werden sollen -
Unterabschnitt
x509
, um zu konfigurieren, wie Nachrichten verschlüsselt und signiert werden sollenSiehe Unterabschnitt x509
Unterabschnitt sendReceipt
-
replyPattern
Zum Festlegen, ob die Quittungen asynchron oder synchron über denselben Kommunikationskanal der Nachricht. Mögliche Werte:
-
Response
Synchrone Antwortquittungen werden gesendet.
-
Callback
Asynchrone Callback-Quittungen werden gesendet.
-
-
nonRepudiation
Zum Angeben, ob signierte Anerkennungsquittungen gesendet werden sollen. Mögliche Werte:
-
true
Anerkennungsquittungen werden gesendet.
-
false
Anerkennungsquittungen werden nicht gesendet.
-
Unterabschnitt x509
Die Sektion security
enthält Attribute für das Signieren und Verschlüsseln der Nachricht.
Unterabschnitt encryption
-
certificate
Zum Identifizieren des Alias des öffentlichen Zertifikats des Kommunikationspartners, das zur Verschlüsselung verwendet werden soll. Das öffentliche Zertifikat muss innerhalb des im AS4 Connector angegebenen Truststore unter dem angegebenen Alias verfügbar sein.
-
algorithm
URI des Verschlüsselungsalgorithmus, Standard:
https://www.w3.org/2009/xmlenc11#aes128-gcm
-
keyEncryptionAlgorithm
Zum optionalen Konfigurieren des Algorithmus für die Verschlüsselungsmethode, wenn Sie die von ENTSOG empfohlenen Einstellungen verwenden möchten.
Wenn
keyEncryptionAlgorithm
nicht gesetzt ist, wirdhttps://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p
verwendet. ENTSOG-Empfehlung:https://www.w3.org/2009/xmlenc11#rsa-oaep
-
maskGenerationFunction
Zum optionalen Konfigurieren der Funktion zum Generieren der Maske, wenn Sie die von ENTSOG empfohlenen Einstellungen verwenden möchten.
Wenn
maskGenerationFunction
nicht gesetzt ist, wirdhttps://www.w3.org/2009/xmlenc11#mgf1sha1
verwendet.ENTSOG-Empfehlung:
https://www.w3.org/2009/xmlenc11#mgf1sha256
-
digestGenerationFunction
Zum optionalen Konfigurieren der Funktion zum Generieren des Digests, wenn Sie die von ENTSOG empfohlenen Einstellungen verwenden möchten.
Wenn
digestGenerationFunction
nicht gesetzt ist, wirdhttps://www.w3.org/2000/09/xmldsig#sha1
verwendet.ENTSOG-Empfehlung:
https://www.w3.org/2001/04/xmlenc#sha256
Unterabschnitt encrypt
-
element
Zu verschlüsselndes Element
-
namespace
URL des zum Signieren zu verwendenden Namensraums
-
encryptionModifier
Mögliche Werte:
Content
: verschlüsselt nur den Inhalt des ElementsElement
(Standard): verschlüsselt den Inhalt des Elements und auch das Element-Tag selbst.Wenn das Attribut
encryptionModifier
nicht gesetzt ist oder auf einen anderen Wert alsElement
oderContent
gesetzt ist, wird folgendeEinstellung verwendet:encryptionModifier="Element"
-
-
includeAttachments
Zum Angeben, ob Anhänge auch verschlüsselt werden sollen Mögliche Werte:
-
true
Anhänge werden verschlüsselt (Standard).
-
false
Anhänge werden nicht verschlüsselt.
-
-
useBinarySecurityToken
Zum Setzen des Authentifizierungsmechanismus mögliche Werte:
-
true
Die resultierende SOAP-Nachricht nutzt den Authentifizierungsmechanismus
BinarySecurityToken
. -
false
(Standard)Die resultierende SOAP-Nachricht nutzt den standardmäßigen Authentifizierungsmechanismus
IssuerSerial
.
Unterabschnitt sign
-
element
Zu signierende Elemente, Standard:
<element namespace="http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/ 200704/">Messaging</element> <element namespace="http://www.w3.org/2003/05/soap-envelope">Body</element>
-
namespace
URL des zum Signieren zu verwendenden Namensraums
-
encryptionModifier
Mögliche Werte-
Content
: verschlüsselt nur den Inhalt des ElementsWenn Sie ENTSOG nutzen, müssen Sie das Attribut
encryptionModifier
für das ElementBody
aufContent
setzen. -
Element
(Standard): verschlüsselt den Inhalt des Elements und auch das Element-Tag selbst.Wenn das Attribut
encryptionModifier
nicht gesetzt ist oder auf einen anderen Wert alsElement
oderContent
gesetzt ist, wird folgende Einstellung verwendet:encryptionModifier="Element"
-
-
-
includeAttachments
Zum Angeben, ob Anhänge auch verschlüsselt werden sollen mögliche Werte:
-
true
Anhänge werden verschlüsselt (Standard).
-
false
Anhänge werden nicht verschlüsselt.
-
Unterabschnitt signature
-
signingKeyAlias
Zum Angeben des Alias des privaten Schlüssels, der zum Signieren der Nachrichten verwendet werden soll. Der privaten Schlüssel muss innerhalb des im AS4 Connector angegebenen Truststore unter dem angegebenen Alias verfügbar sein.
-
hashFunction
Zum Angeben des Algorithmus zum Berechnen des Digests, der zum Signieren der Nachricht verwendet werden soll, Standard:
https://www.w3.org/2001/04/xmlenc#sha256
-
algorithm
Algorithmus zum Berechnen des Wertes der digitalen Signatur, Standard:
https://www.w3.org/2001/04/xmldsig-more#rsa-sha256
-
requireSignedElements
Optionaler Abschnitt zum Angeben, welche Elemente einer eingehenden Kundennachricht auf eine gültige Signaturreferenz im Security-Header einer SOAP-Nachricht geprüft werden sollen. Wird keine Referenz gefunden, wird eine Fehlermeldung ausgegeben.
Um die Signaturprüfung zu deaktivieren, entfernen Sie den Abschnitt
requireSignedElements
aus der im AS4 Connector verwendeten CPA-Datei.-
Messaging
Optionales Element zum Validieren der Signatur der Nachrichten.
-
Body
Optionales Element zum Validieren der Signatur des Inhalts einer Nachricht.
-
includeAttachments
Optionales Element, das festlegt, ob auch die Signatur eines Anhangs validiert werden soll.
-
true
Anhänge werden validiert.
-
false
Anhänge werden nicht validiert.
-
-
-
useBinarySecurityToken
Zum Setzen des Authentifizierungsmechanismus mögliche Werte:
-
true
Die resultierende SOAP-Nachricht nutzt den Authentifizierungsmechanismus
BinarySecurityToken
. -
false
(Standard)Die resultierende SOAP-Nachricht nutzt den standardmäßigen Authentifizierungsmechanismus
IssuerSerial
.
-
-
signatureValidationCertificate
Das angegebene Zertifikat muss im für den AS4 Connector verwendeten Truststore verfügbar sein.
Wenn kein
signatureValidationCertificate
angegeben wird, wird die Signatur so lange als gültig betrachtet, wie ein Zertifikat im Truststore zum privaten Schlüssel passt, der zum Signieren der Nachricht verwendet wird.
CPA-Unterabschnitt receptionAwareness
In diesem Abschnitt konfigurieren Sie u.a. ob eine Nachricht erneut gesendet werden soll, wenn beim Senden ein Fehler auftrat. Des Weiteren können Sie konfigurieren, ob Nachrichtenduplikate erkannt werden sollen.
-
retry
Zum Angeben, ob Nachrichten im Fehlerfall erneut gesendet werden. Mögliche Werte:
-
true
Die Nachricht wird erneut gesendet (Standard).
-
false
Die Nachricht wird nicht erneut gesendet.
-
-
Unterabschnitt
retryParameters
Zum Konfigurieren der Wiederholungsparameter.
-
Unterabschnitt
entry
Zum Spezifizieren keines, eines oder mehrerer Wiederholungsparameter.
-
key
Zum Konfigurieren des Parameternamens.
-
value
Zum Konfigurieren des Parameterwertes.
-
Die folgenden Parameter mit den angegebenen Standardwerten, die verwendet werden, wenn sie nicht gesetzt sind, werden unterstützt:
-
maxretries
Maximale Anzahl der Wiederholungen, Standard 5.
-
period
Zeit in Millisekunden zwischen einem aufgetretenen Fehler beim Senden einer Nachricht und dem nächsten Versuch, Standard
30000
. -
sockettimeout
Timeout für die Socket-Verbindung in Millisekunden, Standard
60000
. -
connectiontimeout
Timeout für die Verbindung in Millisekunden, Standard
60000
.Beispiel
... <as4:retryParameters> <as4:entry> <as4:key>maxretries</as4:key> <as4:value>5</as4:value> </as4:entry> <as4:entry> <as4:key>period</as4:key> <as4:value>30000</as4:value> </as4:entry> <as4:entry> <as4:key>sockettimeout</as4:key> <as4:value>60000</as4:value> </as4:entry> <as4:entry> <as4:key>connectiontimeout</as4:key> <as4:value>60000</as4:value> </as4:entry> </as4:retryParameters> ...
-
-
duplicateDetection
Nur für Empfänger: Zum Angeben, ob Nachrichtenduplikate erkannt werden sollen mögliche Werte:
-
true
Duplikate werden erkannt (Standard).
-
false
Duplikate werden nicht erkannt.
-
AS4-Keystore/-Truststore
Die für die gesicherte Kommunikation erforderliche Java-Keystore-Datei müssen Sie in Ihrem Repository-Ordner ablegen und bei der Konfiguration des AS4 Connectors auf der Registerseite auswählen.
Siehe
MessagePropertys als Workflowvariablen verwenden
Verwendung
Um zusätzlich zu den Nutzdaten einer AS4-Nachricht benutzerspezifischer Daten zu übertragen, können Sie dem Header der Nachricht MessageProperties hinzufügen. Dies kann eine Kundennummer oder eine Referenznummer sein. Applikationen oder Workflows können diese Werte nutzen, um Nachrichten effektiv abzufertigen oder zu verknüpfen, ohne die gesamten Nutzdaten analysieren zu müssen.
Wenn eine von Ihrem Kommunikationspartner gesendete Nachricht einen Bereich MessageProperties
enthält, setzt der AS4 Connector für jede Property eine Variable.
Wenn Ihr Kommunikationspartner in einer von Ihnen gesendeten Nachricht Propertys in einem Bereich
MessageProperties
erwartet, können Sie diese mittels des Variablenmappings der Ausgangsnachricht hinzufügen.
MessageProperties aus einer Eingangsnachricht lesen
Verwendung
Zum Setzen von Workflowvariablen aus den MessageProperties der Eingangsnachricht, um diese anschließend zu verarbeiten.
Der AS4 Connector analysiert die Eingangsnachricht.
Für jede Property im Bereich MessageProperties
der Eingangsnachricht setzt der AS4 Connector automatisch eine Variable.
Der AS4 Connector erwartet folgende beispielhafte XML-Struktur:
<eb:UserMessage>
...
<eb:MessageProperties>
<eb:Property name="CustomerID">123</eb:Property>
...
</eb:MessageProperties >
...
</eb:UserMessage>
Die Variablen werden wie folgt benannt: as4.input.messageproperty.<propertyName>
, e.g.:
as4.input.messageproperty.CustomerID
Die im Workflow nachfolgenden Module können auf diese Variablen zugreifen.
MessageProperties in die Ausgangsnachricht schreiben
Verwendung
Zum Hinzufügen des Wertes einer Workflowvariablen als Property zur Ausgangsnachricht, um die Anforderungen Ihres Kommunikationspartners zu erfüllen.
So gehen Sie vor
-
Öffnen Sie den Workflow mit dem AS4 Output Connector zum Bearbeiten.
-
Fügen Sie ggf. vor dem AS4 Connector ein Modul ein und verbinden Sie es mit den AS4 Connector.
-
Definieren Sie am Modul vor dem AS4 Connector das Variablenmapping wie folgt:
-
Quelle
Statischer Wert, z.B.:
123
-
Ziel
Variable:
as4.output.messageproperty.<propertyName>
, z.B.:as4.output.messageproperty.CustomerID
→ Der nachfolgende AS4 Connector fügt der Ausgangsnachricht folgende Struktur hinzu:
<eb:UserMessage> ... <eb:MessageProperties> <eb:Property name="CustomerID"> 123</eb:Property> ... </eb:MessageProperties> ... </eb:UserMessage>
-
-
Publizieren Sie den Workflow, einschließlich der Module.
PartPropertys als Workflowvariablen verwenden
Verwendung
Um das Verarbeiten der Nachrichten zu vereinfachen, können Sie PartProperties
nutzen, um den Inhalt der Nutzdaten näher zu beschreiben.
Dies kann eine Kundennummer oder eine Referenznummer sein.
Applikationen oder Workflows können diese Werte nutzen, um Nachrichten effektiv abzufertigen oder zu verknüpfen, ohne die gesamten Nutzdaten analysieren zu müssen.
-
Wenn ein Kommunikationspartner eine Nachricht sendet, die einen Abschnitt
PartProperties
enthält, setzt der AS4 Connector eine Variable für jede Property. -
Wenn der Kommunikationspartner Nachrichten mit spezifischen Propertys erwartet, können Sie diese über das Variablenmapping in die Ausgangsnachricht schreiben.
PartProperties aus einer Eingangsnachricht lesen
Verwendung
Zum Lesen von PartProperties
aus einer Eingangsnachricht und zum Setzen von Workflowvariablen, um die PartProperties
der Nachricht verarbeiten zu können.
Der AS4 Connector analysiert die Eingangsnachricht.
Für jede Property im Abschnitt PartProperties
setzt der AS4 Connector automatisch eine Variable.
Der AS4 Connector erwartet AS4-Nachrichten mit einer Struktur wie folgt:
<eb:UserMessage>
<eb:PaylodInfo>
<eb:PartInfo>
<eb:PartProperties>
<eb:Property name="MimeType">application/xml</eb:Property>
<eb:Property name="CustomerID">123</eb:Property>
</eb:PartProperties>
</eb:PartInfo>
</eb:PaylodInfo>
</eb:UserMessage>
Die Variablen werden wie folgt benannt:` as4.input.partproperty.any_name`, e.g:
as4.input.partproperty.CustomerID
Die im Workflow nachfolgenden Module können auf diese Variablen zugreifen.
PartProperties in die Ausgangsnachricht schreiben
Verwendung
Zum Hinzufügen des Wertes einer Workflowvariablen als Property zur Ausgangsnachricht, um die Anforderungen Ihres Kommunikationspartners zu erfüllen.
Die Standard-PartProperties CompressionType
, MimeType
und CharacterSet
können Sie nur als Moduleigenschaften des AS4 Connectors setzen.
Wenn Sie eine ENTSOG-konforme Nachricht senden, der Parameter |
So gehen Sie vor
-
Öffnen Sie den Workflow mit dem AS4 Output Connector zum Bearbeiten.
-
Hat der AS4 Connector kein Vorgängermodul, fügen Sie z.B. ein Assign-Modul ein, und verbinden Sie es mit den AS4 Connector.
-
Definieren Sie am Modul vor dem AS4 Connector das Variablenmapping wie folgt:
-
Quelle
Statischer Wert, z.B.:
123
-
Ziel
Variable:
as4.output.partproperty.<propertyName>
, z.B.:as4.output.partproperty.CustomerID
→ Der nachfolgende AS4 Connector fügt der Ausgangsnachricht folgende Struktur hinzu:
<eb:UserMessage> <eb:PaylodInfo> <eb:PartInfo> <eb:PartProperties> <eb:Property name="CustomerID">123</eb:Property> </eb:PartProperties> </eb:PartInfo> </eb:PaylodInfo> </eb:UserMessage>
-
-
Publizieren Sie den Workflow, einschließlich der Module.
Partnervereinbarung dynamisch ermitteln
Verwendung
Nur für einen Output Connector: Zum Auswählen einer Partnervereinbarung abhängig vom Kommunikationspartner, an den die Nachricht gesendet werden soll
Voraussetzung
-
Sie haben eine CPA-Datei erstellt, die mehrere Partnervereinbarungen enthält.
-
Sie haben die CPA-Datei im INUBIT-Repository gespeichert, und sie ist vom AS4 Connector aus erreichbar.
-
Ein Modul vor dem AS4 Connector stellt den Partnernamen, seine CPA-ID und den Namen der CPA-Datei, in der die Partnervereinbarung gespeichert ist, zur Verfügung.
-
Sie haben eine Workflow-Eingabevariable erstellt, die die dynamisch in Abhängigkeit vom Empfänger ermittelte CPA-ID enthält.
-
Sie haben eine Workflow-Eingabevariable erstellt, die den Pfad zur CPA-Datei mit der Partnervereinbarung des gewünschten Partners enthält.
So gehen Sie vor
-
Öffnen Sie im Designer den Workflow mit dem AS4 Connector zum Bearbeiten.
-
Öffnen das Variablenmapping des AS4 Connectors zum Bearbeiten.
-
Erstellen Sie ein Variablenmapping für die Moduleigenschaften
cpaId
undAS4CPAFilePath
:-
Um die Moduleigenschaft
cpaId
zu setzen, erstellen Sie ein Variablenmapping, das die Workflow-Eingabevariable mit der CPA-ID der ModuleigenschaftcpaId
zuweist. -
Um die Moduleigenschaft
AS4CPAFilePath
zu setzen, erstellen Sie ein Variablenmapping, das die Workflow- Eingabevariable mit dem Pfad zur CPA-Datei der ModuleigenschaftAS4CPAFilePath
zuweist. -
Klicken Sie auf OK, um die Änderungen zu speichern.
→ Das Variablenmapping ist dem AS4 Connector zugewiesen.
-
-
Publizieren Sie den Workflow.
Zeitstempel von eingehenden Nachrichten erhalten
Verwendung
-
Zum Bereitstellen des Zeitstempels für den Eingang einer Nachricht als Workflowvariable
as4.message.receive.timestamp
-
Zum Analysieren des Zeitstempels für den Eingang einer Nachricht, um zu entscheiden, wie die Nachricht von den nachfolgenden Modulen im Workflow bearbeitet werden soll
Voraussetzungen
-
Sie haben einen Workflow mit einem AS4 Input Connector zum Empfangen von Nachrichten erstellt.
-
Der Workflow wurde zum Empfangen einer Eingangsnachricht gestartet.
→ In der Ergebnisdatei wird das Eingangsdatum in der Variablen
as4.message.receive.timestamp
angezeigt, wennSie auf das Watchpoint-Icon neben dem AS4 Connector klicken.
AS4 Connector Dialogbeschreibung
Dialog AS4-Konfiguration
AS4 Output/Medium Connector
CPA-Auswahl
-
Datei
Zur Auswahl der Datei mit den Collaboration Protocol Agreements (CPAs) mit den Kommunikationsparametern eines oder mehrerer Kommunikationspartner.
-
CPA-ID
Um das Collaboration Protocol Agreement (CPA) für ein Partnersystem auszuwählen, benutzen Sie eine in der ausgewählten Datei gespeicherte CPA-ID.
-
CPA-Liste aktualisieren
Klicken Sie auf diesen Button, um die in der angegebenen Repositorydatei enthaltenen CPA-IDs neu einzulesen.
AS4-Nachrichtenformat
-
MIME-Typ
Wählen Sie den MIME-Typ der zu transferierenden Daten aus dem Pulldown-Menü oder geben Sie einen anderen ein. Sie können Daten z.B. in verschiedenen EDI-Formaten, im XML-, GZIP- und im Octet-Stream-Format transferieren.
-
Zeichensatzkodierung
Wählen Sie die Zeichensatzkodierung der zu transferierenden Daten aus dem Pulldown-Menü oder geben Sie einen anderen ein. Sie können z.B. Daten in UTF-8, UTF-16 oder ISO_8859_1 transferieren.
-
Kompressionstyp
Wählen Sie den Kompressionstyp der zu transferierenden Daten aus dem Pulldown-Menü. Sie können Daten in GZIP transferieren oder keinen Kompressionstyp wählen.
Diese Nachrichtenformate müssen vom Empfänger unterstützt werden. |
AS4 Input Connector
Verwendung
Sie können den AS4 Input Connector nutzen, um sowohl die von Ihrem Partner gesendeten AS4-Nachrichten als auch asynchrone Quittungen zu empfangen.
CPA-Auswahl
-
Datei
Zur Auswahl der Datei mit den Collaboration Protocol Agreements (CPAs) mit den Kommunikationsparametern zweier Kommunikationspartner.
-
CPA-ID-Auswahl
Um das Collaboration Protocol Agreement (CPA) für ein Partnersystem auszuwählen, aktivieren Sie die Checkbox neben der CPA ID mit der Service-Action-Kombination, die zu ihren Anforderungen passt. Die CPAs müssen in einer XML-Datei im Repository-Ordner des Benutzers konfiguriert werden.
-
Liste der CPAs aktualisieren
Klicken Sie auf diesen Button, um die in der angegebenen Repositorydatei enthaltenen CPA-IDs neu einzulesen.
AS4 Callback Listener Connector
Dieser Connector wird genauso konfiguriert wie der AS4 Input Connector, muss jedoch auf dem sendenden System angelegt werden, um die asynchrone Antwortquittung zu empfangen.
Siehe AS4 Input Connector.
Dialog AS4-Sicherheitseinstellungen
Truststore
-
Datei
Zur Auswahl der zur CPA-ID passenden Truststore-Datei aus dem Repository
-
Truststore-Passwort
Passwort der Truststore-Datei
-
Gültig bis
Truststore ist bis zum angezeigten Datum gültig.
-
Seriennummer
Seriennummer des Truststore wird angezeigt.
-
Betreff
Der Betreff (CN-Tag) des Truststore wird angezeigt.
Um die Zertifikatsdetails zu ermitteln, wird der Alias für den Truststore wird aus dem Element |
Keystore
-
Datei
Zur Auswahl der zur CPA-ID passenden Keystore-Datei aus dem Repository
-
Keystore Passwort
Passwort der Keystore-Datei
-
Alias für den privaten Schlüssel
Alias des privaten Schlüssels, der als
signingKeyAlias
in der ausgewählten CPA-Datei definiert ist. Dieser Alias wird verwendet, um die Zertifikatsdetails zu ermitteln. -
Passwort für den privaten Schlüssel
Passwort des privaten Schlüssels
-
Gültig bis
Keystore ist bis zum angezeigten Datum gültig.
-
Seriennummer
Seriennummer des Keystore wird angezeigt.
-
Betreff
Der Betreff (CN-Tag) des Keystore wird angezeigt.
SSL-Konfiguration
-
Server-URL des Empfängers
Server-URL des Empfängers der Nachricht (nicht änderbar, wird aus der ausgewählten CPA-Datei gelesen)
Siehe:
-
Button SSL
(nur für Medium- und Output-Connector)
Zum Absichern der Kommunikation über SSL, siehe Dialog SSL-Konfiguration.
Siehe: