AS4 Connector
The AS4 Component adds AS4 send and receive capabilities to MuleSoft.
Remarks
The AS4 Connector adds AS4 send and receive capabilities to Mule Project. Using a simple application-like design, the connector allows you to easily incorporate secure EDI (EDI-INT) exchange into your current e-Business process architecture.
Sending AS4 Messages
Outgoing AS4 messages are managed with the Send connector. In order to use the connector, you must specify AS4FromId, AS4ToId, and a URL. Optionally set the SigningCert and RecipientCert to enable signing and encryption. Optionally specify a SignerCert to verify the signature on the response.
Additional properties such as EDIFileName, EDIType, Profile, and more, may also be set.
HTTP/2 is supported on Windows 8.1/Server 2012 R2 or later. If HTTP/2 is used on a version of Windows prior to these versions the connector throws an exception.
Note: HTTP/2 is currently only supported on Windows.
The AS4 Send connector is a Solicit-Response connector and the resulting Mule event will contain the receipt returned by the server if RequireReceipt is True (default).
AS4 Send Example
To get started, add a File Read connector to your flow and configure it to read a target EDI file. Behind the File Read connector, add an AS4 Send module. There is no need to transform the output of the File Read connector before passing it to the AS4 Send module.
All that is left is to configure the connection settings and certificates. The connector will handle sending the AS4 message and receiving a synchronous receipt. The MessageId and ReceiptContent is available in the output attributes.MessageId and attributes.ReceiptContent fields respectively.
Receiving AS4 Messages
The AS4 Receive connector will establish a connection to a server and request messages to download from the specified MPC. If SendReceipt is True (default) the connector will automatically generate a receipt and send it with the next request.
To decrypt the incoming files, set the DecryptionCert property. The SignerCert property specifies the public certificate to use when verifying the signature of received files. Receipts will be signed using the certificate specified by SigningCert.
The connector works by polling the server for files available to download. The polling settings can be found in the "General" tab of the Mule properties page for the connector. During each polling interval the connector will attempt to download all files present in a MPC. Each file will generate a Mule event.
AS4 Receive Example
Add an AS4 Receive source connector to your flow and configure the connection settings and certificates. That is all that is required to get started. The connector will handle connecting to the server and requesting files to download from the specified MPC. One Mule event is generated for each file downloaded.
Behind the AS4 Receive connector you can add a File Write connector to write each file to disk. You will need to dynamically set the Path property on the File Write connector to accomplish this. Click the Mule expression indicator on the Path property and set the value to:
'C:\\temp\\' ++ attributes.ReceivedFileName
The received filename will then be used as the same filename on disk. The content of each file will be present in the payload of the Mule Message. That is all that is required to write an incoming file to disk. Additional properties about the EDI data are also available in the attributes collection.
Receiver Property List
The following is the full list of the properties of the receiver Connector with short descriptions. Click on the links for further details.
AgreementRef | The agreement reference. |
AS4FromId | The Id of the party. This value is required. |
AS4FromIdType | The optional type of the Id. If specified this value should be the domain to which the Id belongs. |
AS4FromRole | This field specifies the role of the party. This may be any value agreed upon by the trading partners. |
AS4ToId | The Id of the party. This value is required. |
AS4ToIdType | The optional type of the Id. If specified this value should be the domain to which the Id belongs. |
AS4ToRole | This field specifies the role of the party. This may be any value agreed upon by the trading partners. |
ConversationId | The Conversation Id of the message. |
DecryptionCert | The certificate with private key used to decrypt. |
EDIProperties | A collection of file properties. |
EDISchemaLocation | The EDISchemaLocation , EDISchemaNamespace , and EDISchemaVersion optionally define the schema that applies to this particular file. This may be used by the receiving party to properly interpret the file data. |
EDISchemaNamespace | The namespace of the schema. This property is optional. Refer to EDISchemaLocation for details. |
EDISchemaVersion | The version of the schema. This property is optional. Refer to EDISchemaLocation for details. |
EDIType | The Content-Type of the EDI message. |
Firewall | A set of properties related to firewall access. |
HTTPProxy | A set of properties related to proxy access. |
LogDirectory | The path to a directory for logging. |
LogFile | The file to write logging information to at runtime. |
LogMode | What information gets logged during component execution. |
LogType | How information gets logged during component execution. |
MessageId | The unique Id of the message. |
MessageProperties | A collection of message properties. |
MPC | The MPC (Message Partition Channel) from which to receive files. |
Other | Defines a set of configuration settings to be used by the component. |
Profile | The AS4 profile. |
ReceiptContent | The content of the receipt. |
ReceiptRefToMessageId | The Message Id to which this receipt applies. |
ReceivedFileName | The name of the file received by the AS4 component. |
RuntimeLicense | Specifies the component runtime license key. |
SendReceipt | Whether to send a receipt. |
Service | The service which acts on the message. |
ServiceAction | The action within a service that acts on the message. |
ServiceType | The type of service. |
SignatureAlgorithm | Signature algorithm to be used in the message. |
SignerCert | The public signing certificate of the partner. |
SigningCert | The certificate used to sign the outgoing AS4 message. |
SSLAcceptServerCert | For sending HTTPS requests, a server certificate to unconditionally accept. |
SSLCert | The certificate to use for client authentication during the SSL handshake. |
TempPath | A temporary local directory where data can be stored before the component processes it. |
Timeout | A timeout for the component. |
TokenPassword | The password used in UsernameToken authentication. |
TokenUser | The user used in UsernameToken authentication. |
URL | The URL to which the request is made. |
Sender Property List
The following is the full list of the properties of the sender Connector with short descriptions. Click on the links for further details.
AgreementRef | The agreement reference. |
AS4FromId | The Id of the party. This value is required. |
AS4FromIdType | The optional type of the Id. If specified this value should be the domain to which the Id belongs. |
AS4FromRole | This field specifies the role of the party. This may be any value agreed upon by the trading partners. |
AS4ToId | The Id of the party. This value is required. |
AS4ToIdType | The optional type of the Id. If specified this value should be the domain to which the Id belongs. |
AS4ToRole | This field specifies the role of the party. This may be any value agreed upon by the trading partners. |
CompressionFormat | The compression format (if any) to use. |
ConversationId | The Conversation Id of the message. |
EDIFileName | The file name to be used in outbound request. |
EDIProperties | A collection of file properties. |
EDIType | The Content-Type of the EDI message. |
EncryptionAlgorithm | The algorithm, if any, used to encrypt the EDI data. |
ErrorCode | TBD. |
ErrorMessage | TBD. |
Firewall | A set of properties related to firewall access. |
HTTPPassword | A password if authentication is to be used. |
HTTPProxy | A set of properties related to proxy access. |
HTTPUser | A user name if authentication is to be used. |
LogDirectory | The path to a directory for logging. |
LogFile | The file to write logging information to at runtime. |
LogMode | What information gets logged during component execution. |
LogType | How information gets logged during component execution. |
MessageId | The unique Id of the message. |
MessageProperties | A collection of message properties. |
Other | Defines a set of configuration settings to be used by the component. |
Profile | The AS4 profile. |
ReceiptContent | The content of the receipt. |
ReceiptRefToMessageId | The Message Id to which this receipt applies. |
RecipientCert | The public certificate used to encrypt files when sending. |
RefToMessageId | Specifies the RefToMessageId in the message. |
RequireReceipt | Whether to require a receipt. |
RuntimeLicense | Specifies the component runtime license key. |
Service | The service which acts on the message. |
ServiceAction | The action within a service that acts on the message. |
ServiceType | The type of service. |
SignatureAlgorithm | Signature algorithm to be used in the message. |
SignerCert | The public signing certificate of the partner. |
SigningCert | The certificate used to sign the outgoing AS4 message. |
SSLAcceptServerCert | For sending HTTPS requests, a server certificate to unconditionally accept. |
SSLCert | The certificate to use for client authentication during the SSL handshake. |
Timeout | A timeout for the component. |
URL | The URL to which the request is made. |
Config Settings
The following is a list of config settings for the Connector with short descriptions. Click on the links for further details.
AgreementRefPMode | AgreementRef PMode of message. |
AgreementRefType | The type of AgreementRef. |
AllowWarnings | Whether warnings are interpreted as fatal errors. |
AttachXMLFiles | Whether to send XML files as attachments or within the SOAP body. |
CloseStreamAfterProcessing | Whether to close the input or output stream after processing. |
CompressXMLPayloads | Whether to compress XML data. |
ContentTransferEncoding | The content encoding of the payload data. |
DetectDuplicates | Whether to detect duplicate messages when receiving. |
EBPrefix | Specifies the prefix to use for messaging. |
EDIDataPartId[i] | Specified the part Id at the given index. |
EncryptionSecurityTokenFormat | The format to use for the security token when encryption. |
ErrorOnNegativeMDN | Whether an exception should be raised when a negative MDN is received. |
FilenameProperty | Defines a part property to hold the filename. |
ForceSigningCert | Whether to force only the SigningCert to be used for signing. |
FromId[i] | The Id of the party specified by AS4From. |
FromIdCount | The number of Ids for the party specified by AS4From. |
FromIdType[i] | The Id type of the party specified by AS4From. |
IdRight | A custom Id for the right side of the MessageId. |
KeyEncryptionAlgorithm | The algorithm used to encrypt the key. |
LogLevel | The level of information to log. |
LogOptions | The information to be written to log files. |
MaxDownloads | The maximum number of downloads to perform in each polling interval. |
MessageType | Indicates the type of message received. |
NormalizeIssuerSubject | Whether to normalize the certificate subject within the X509Data element. |
OAEPMGF1HashAlgorithm | The MGF1 hash algorithm used when encrypting a key. |
OAEPParams | The hex encoded OAEP parameters to be used when encrypting a key. |
OAEPRSAHashAlgorithm | The RSA hash algorithm used when encrypting a key. |
ReceiptURL | The URL to which receipts are sent. |
ReferenceHashAlgorithm | The hash algorithm used to has the data specified in the reference of a signature. |
RequireEncryption | Whether encryption is required when processing received messages. |
RequireSignature | Whether a signature is required when processing received messages. |
ResponseFile | A file from which to read the response. |
SignerCACert | The CA certificates that issued the signer certificate. |
SigningSecurityTokenFormat | The format to use for the security token when signing. |
TempPath | Where temporary files are optionally written. |
ToId[i] | The Id of the party specified by AS4To. |
ToIdCount | The number of Ids for the party specified by AS4To. |
ToIdType[i] | The Id type of the party specified by AS4To. |
TokenPasswordType | The password type used in UsernameToken authentication. |
TransformReceipt | Whether to canonicalize the received receipt. |
ReuseSSLSession | Determines if the SSL session is reused. |
SSLCipherStrength | The minimum cipher strength used for bulk encryption. |
SSLEnabledCipherSuites | The cipher suite to be used in an SSL negotiation. |
SSLEnabledProtocols | Used to enable/disable the supported security protocols. |
SSLIncludeCertChain | Whether the entire certificate chain is included in the SSLServerAuthentication event. |
SSLSecurityFlags | Flags that control certificate verification. |
TLS12SignatureAlgorithms | Defines the allowed TLS 1.2 signature algorithms when UseInternalSecurityAPI is True. |
TLS12SupportedGroups | The supported groups for ECC. |
TLS13KeyShareGroups | The groups for which to pregenerate key shares. |
TLS13SignatureAlgorithms | The allowed certificate signature algorithms. |
TLS13SupportedGroups | The supported groups for (EC)DHE key exchange. |
AbsoluteTimeout | Determines whether timeouts are inactivity timeouts or absolute timeouts. |
LocalHost | The name of the local host or user-assigned IP interface through which connections are initiated or accepted. |
TcpNoDelay | Whether or not to delay when sending packets. |
UseInternalSecurityAPI | Tells the component whether or not to use the system security libraries or an internal implementation. |
AgreementRef Property (AS4 Connector)
The agreement reference.
Data Type
StringDefault Value
""Remarks
This property holds a value identifying the agreement between the two parties. The agreement is made outside the scope of the request and response and governs details about the interaction including reply mode, signing and encryption options, etc.
The value of this property should be set to a mutually agreed upon identifier. Both parties will use this value know what the expected requirements are for a particular request or response.
The format of this value is typically a URI, such as "http://mycompany.com/agreement_01" but can be any unique string that both parties are configured to accept. Another common format is the concatenation of the AS4From and AS4To values.
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:CollaborationInfo/eb:AgreementRef" Note: This property is not available at design time in the receiver, but will be detected from the incoming AS4 message and made available as a message context property.
AS4FromId Property (AS4 Connector)
The Id of the party. This value is required.
Data Type
StringDefault Value
""Remarks
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PartyInfo/eb:From/eb:PartyId"
AS4FromIdType Property (AS4 Connector)
The optional type of the Id. If specified this value should be the domain to which the Id belongs.
Data Type
StringDefault Value
""Remarks
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PartyInfo/eb:From/eb:PartyId@type"
AS4FromRole Property (AS4 Connector)
This field specifies the role of the party. This may be any value agreed upon by the trading partners.
Data Type
StringDefault Value
"http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/initiator"Remarks
This field specifies the role of the party. This may be any value agreed upon by the trading partners.
In AS4From this specified the role of the party sending the document. The default value is "http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/initiator".
In AS4To this specifies the role of the party receiving the document. The default value is "http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/responder".
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PartyInfo/eb:From/eb:Role"
AS4ToId Property (AS4 Connector)
The Id of the party. This value is required.
Data Type
StringDefault Value
""Remarks
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PartyInfo/eb:From/eb:PartyId"
AS4ToIdType Property (AS4 Connector)
The optional type of the Id. If specified this value should be the domain to which the Id belongs.
Data Type
StringDefault Value
""Remarks
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PartyInfo/eb:From/eb:PartyId@type"
AS4ToRole Property (AS4 Connector)
This field specifies the role of the party. This may be any value agreed upon by the trading partners.
Data Type
StringDefault Value
"http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/responder"Remarks
This field specifies the role of the party. This may be any value agreed upon by the trading partners.
In AS4From this specified the role of the party sending the document. The default value is "http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/initiator".
In AS4To this specifies the role of the party receiving the document. The default value is "http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/responder".
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PartyInfo/eb:From/eb:Role"
CompressionFormat Property (AS4 Connector)
The compression format (if any) to use.
Data Type
EnumerationPossible Values
Automatic (0)None (1)
GZIP (2)
Default Value
0Remarks
This setting specifies the compression format to be applied to message. When Profile is set to Standard the default value is None. When Profile is set to ENTSOG the default value is GZIP.
By default the connector will determine the value to use based on the Profile.
Possible values are:
- Automatic
- None
- GZIP
This property is not available in the Receiver.
ConversationId Property (AS4 Connector)
The Conversation Id of the message.
Data Type
StringDefault Value
""Remarks
This property specifies an Id that may be used to identify a set of related messages. This is required and if a value is not specified one will automatically be created.
Note: When Profile is set to ebpfENTSOG this value will always be empty.
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:CollaborationInfo/eb:ConversationId"
DecryptionCert Property (AS4 Connector)
The certificate with private key used to decrypt.
Data Type
CertificateRemarks
This property specifies the certificate with private key used to decrypt received data.
This property is not available in the Sender.
EDIFileName Property (AS4 Connector)
The file name to be used in outbound request.
Data Type
StringDefault Value
"#[attributes.fileName]"Remarks
If set, the value specified will be used when creating the outbound request's Content-Disposition MIME header of the EDI payload.
This property is not available in the Receiver.
EDIProperties Property (AS4 Connector)
A collection of file properties.
Data Type
StringDefault Value
""Remarks
This property holds file level properties.
The properties are specified one per line. The syntax is a follows:
PropertyName=PropertyValue
For instance, the value below includes two properties.
Prop1=Value1
Prop2=Value2
EDISchemaLocation Property (AS4 Connector)
The EDISchemaLocation , EDISchemaNamespace , and EDISchemaVersion optionally define the schema that applies to this particular file. This may be used by the receiving party to properly interpret the file data.
Data Type
StringDefault Value
""Remarks
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PayloadInfo/eb:PartInfo/eb:Schema@location"
This property is not available in the Sender.
EDISchemaNamespace Property (AS4 Connector)
The namespace of the schema. This property is optional. Refer to EDISchemaLocation for details.
Data Type
StringDefault Value
""Remarks
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PayloadInfo/eb:PartInfo/eb:Schema@namespace"
This property is not available in the Sender.
EDISchemaVersion Property (AS4 Connector)
The version of the schema. This property is optional. Refer to EDISchemaLocation for details.
Data Type
StringDefault Value
""Remarks
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:PayloadInfo/eb:PartInfo/eb:Schema@namespace"
This property is not available in the Sender.
EDIType Property (AS4 Connector)
The Content-Type of the EDI message.
Data Type
StringDefault Value
"application/edi-x12"Remarks
The Content-Type of the EDI message. Sample values are "application/edi-x12", "application/edifact" or "application/xml".
EncryptionAlgorithm Property (AS4 Connector)
The algorithm, if any, used to encrypt the EDI data.
Data Type
StringDefault Value
"AESGCM128"Remarks
If RecipientCert is specified the data will be encrypted. This property specifies the encryption algorithm used.
The connector supports "3DES", or industry-standard 168-bit Triple-DES encryption.
The connector supports "AES" encryption with a default keysize of 128 bits. You may also set "AESCBC192" or "AESCBC256" for 192- and 256-bit keysizes.
Possible values are:
- 3DES
- DES
- AESCBC128
- AESCBC192
- AESCBC256
- AESGCM128 (default)
- AESGCM192
- AESGCM256
This property is not available in the Receiver.
ErrorCode Property (AS4 Connector)
TBD.
Data Type
IntegerDefault Value
0Remarks
TBD
TBD
This property is not available in the Receiver.
ErrorMessage Property (AS4 Connector)
TBD.
Data Type
StringDefault Value
""Remarks
TBD
TBD
This property is not available in the Receiver.
Firewall Property (AS4 Connector)
A set of properties related to firewall access.
Data Type
FirewallRemarks
This is a Firewall type property which contains fields describing the firewall through which the connector will attempt to connect.
HTTPPassword Property (AS4 Connector)
A password if authentication is to be used.
Data Type
PasswordDefault Value
""Remarks
This property holds the password used for HTTP authentication.
This property is not available in the Receiver.
HTTPProxy Property (AS4 Connector)
A set of properties related to proxy access.
Data Type
ProxyRemarks
This is a Proxy type property which contains fields describing the proxy through which the connector will attempt to connect.
HTTPUser Property (AS4 Connector)
A user name if authentication is to be used.
Data Type
StringDefault Value
""Remarks
This property holds the user used for HTTP authentication.
This property is not available in the Receiver.
LogDirectory Property (AS4 Connector)
The path to a directory for logging.
Data Type
StringDefault Value
""Remarks
The directory in which log files are created. The connector will create log files that detail each transmission.
The verbosity of the logs is controlled by LogLevel.
LogFile Property (AS4 Connector)
The file to write logging information to at runtime.
Data Type
StringDefault Value
""Remarks
To write logging information to a file instead of using the connector's logging API, set this property to a valid file on disk and set the LogType property to "File".
If LogDirectory is specified, log files will be written in the specified directory and LogFile will contain the path. A diagnostic log will be written with filename LogFile + ".log".
Since this log file is dynamically generated, this property can be read after the connector has processed the message to determine the exact name of the log file.
To write logging information to a file instead of using the connector's logging API, set this property to a valid file on disk and set the LogType property to "File".
LogMode Property (AS4 Connector)
What information gets logged during component execution.
Data Type
EnumerationPossible Values
Verbose (0)Info (1)
Warning (2)
Error (3)
Fatal (4)
Default Value
3Remarks
This property controls what information the connector logs. The possible values have the following affect on the connector's behavior:
Verbose | The connector will report all information regarding the transport. |
Info | The connector will report all major operations, as well as all warnings and errors. |
Warning | The connector will report any conditions that could result in unpredictable behavior as well as errors. |
Error | The connector will report all errors that prevent normal operations from completing. |
Fatal | The connector will report only serious errors that cause the connector to completely stop functioning. |
LogType Property (AS4 Connector)
How information gets logged during component execution.
Data Type
EnumerationPossible Values
None (0)Console (1)
File (2)
Default Value
1Remarks
This property controls where the connector will log the information. The possible values have the following affect on the connector's behavior:
None | The connector will not report any logging information. |
Console | The connector will report all logging information to the console. |
File | The connector will report all logging information to a file. The desired file must be specified in the LogFile when this type has been selected. |
MessageId Property (AS4 Connector)
The unique Id of the message.
Data Type
StringDefault Value
""Remarks
This property provided the MessageId of the message. This is returned for informational purposes.
MessageProperties Property (AS4 Connector)
A collection of message properties.
Data Type
StringDefault Value
""Remarks
This property holds message level properties.
The properties are specified one per line. The property type is optional. The syntax is a follows:
[PropertyType]PropertyName=PropertyValue
PropertyName=PropertyValue
For instance, the value below includes two properties, the first property does not include a type.
Prop1=Value1
[string]Prop2=Value2
MPC Property (AS4 Connector)
The MPC (Message Partition Channel) from which to receive files.
Data Type
StringDefault Value
""Remarks
This property specifies the MPC from which files will be received. This property must be set.
This property is not available in the Sender.
Other Property (AS4 Connector)
Defines a set of configuration settings to be used by the component.
Data Type
StringDefault Value
""Remarks
The connector accepts one or more configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the connector, access to these internal properties is provided through the Other property.
The Other property may be set to one or more configuration settings (name/value pairs). Set one setting per line.
For example:
configname1=value1
configname2=value2
Profile Property (AS4 Connector)
The AS4 profile.
Data Type
EnumerationPossible Values
Standard (0)ENTSOG (1)
ESENS (2)
Default Value
0Remarks
This property specifies the AS4 profile to use. Different profiles may have different requirements and default options. Setting this property to the correct value ensures that the right options are selected in order to conform to the profile. Possible values are:
0 (ebfStandard - default) | The AS4 Profile of ebMS 3.0 Version 1.0 OASIS Standard |
1 (ebfENTSOG) | The ENTSOG AS4 Profile |
2 (ebpfEDelivery) | The eDelivery AS4 Profile |
When Profile is set to ebpfENTSOG the following settings are automatically applied:
Property | Value |
CompressionFormat | ebcfGZIP |
EncryptionAlgorithm | "AES128GCM" |
ConversationId | Remains empty |
SignatureAlgorithm | "SHA256" |
OAEPRSAHashAlgorithm | "SHA256" |
OAEPMGF1HashAlgorithm | "SHA256" |
When Profile is set to ebpfEDelivery the following settings are automatically applied:
Property | Value |
CompressionFormat | ebcfGZIP |
EncryptionAlgorithm | "AES128GCM" |
RequireEncryption | True |
RequireSignature | True |
SignatureAlgorithm | "SHA256" |
OAEPRSAHashAlgorithm | "SHA256" |
OAEPMGF1HashAlgorithm | "SHA256" |
EncryptionSecurityTokenFormat | 1 (Binary) |
SigningSecurityTokenFormat | 1 (Binary) |
ReceiptContent Property (AS4 Connector)
The content of the receipt.
Data Type
StringDefault Value
""Remarks
This is the raw XML of the receipt.
When using the Send connector this is populated from the response received from the server.
When using the Receive connector this is informational only and is populated with the receipt that was sent by the connector.
ReceiptRefToMessageId Property (AS4 Connector)
The Message Id to which this receipt applies.
Data Type
StringDefault Value
""Remarks
This is the original Message Id from the initial transmission of the file.
When using the Send connector this is populated from the response received from the server.
When using the Receive connector this is informational only and is populated with the receipt that was sent by the connector.
ReceivedFileName Property (AS4 Connector)
The name of the file received by the AS4 component.
Data Type
StringDefault Value
""Remarks
If a file name is included in the AS4 request's message headers, it will be written to this context property.
Note: this value is also placed in the File.ReceivedFileName and the FTP.ReceivedFileName context properties. This is to ensure compatibility with other connectors that poll those context properties to fill out macros such as %SourceFileName%.
This property is not available in the Sender.
RecipientCert Property (AS4 Connector)
The public certificate used to encrypt files when sending.
Data Type
CertificateRemarks
This property specifies the recipient's public certificate. This certificate is used to encrypt data being sent to the recipient.
This property is not available in the Receiver.
RefToMessageId Property (AS4 Connector)
Specifies the RefToMessageId in the message.
Data Type
StringDefault Value
""Remarks
This property specifies the RefToMessageId value in the message being sent.
This property is only applicable when Profile is set to pfESENS. The e-SENS profile supports the Two-Way/Push-and-Push MEP (Message Exchange Pattern), where sending a file can be in reference to a previously received file. In this case RefToMessageId specifies the Id of the previously received message to which this send is in reference.
This property is not available in the Receiver.
RequireReceipt Property (AS4 Connector)
Whether to require a receipt.
Data Type
BooleanDefault Value
trueRemarks
This property indicates whether a receipt is expected when sending files.
This property is not available in the Receiver.
RuntimeLicense Property (AS4 Connector)
Specifies the component runtime license key.
Data Type
StringDefault Value
""Remarks
You can use the RuntimeLicense property to set the runtime key for the connector license.
SendReceipt Property (AS4 Connector)
Whether to send a receipt.
Data Type
BooleanDefault Value
trueRemarks
This property indicates whether a receipt should be sent after downloading files.
The connector will make multiple requests to download all outstanding files from the server. The receipt for the previous message will be bundled with the request for the next message.
This property is not available in the Sender.
Service Property (AS4 Connector)
The service which acts on the message.
Data Type
StringDefault Value
"http://docs.oasis-open.org/ebxml-msg/as4/200902/service"Remarks
This property specifies the service which acts on the message. This should only be changed from the default value if there is a specific reason to do so.
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:CollaborationInfo/eb:Service"
ServiceAction Property (AS4 Connector)
The action within a service that acts on the message.
Data Type
StringDefault Value
"http://docs.oasis-open.org/ebxml-msg/as4/200902/action"Remarks
This property defines the action within a service that acts upon a message. This should only be changed from the default value if there is a specific reason to do so.
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:CollaborationInfo/eb:Action".
ServiceType Property (AS4 Connector)
The type of service.
Data Type
StringDefault Value
""Remarks
This optionally specifies the type of the service. The semantics of this value should be agreed upon by both parties ahead of time. It may be used to tell the other party how to interpret the Service value.
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:CollaborationInfo/eb:Service@type"
SignatureAlgorithm Property (AS4 Connector)
Signature algorithm to be used in the message.
Data Type
StringDefault Value
"sha256"Remarks
Signature Algorithm can be set to indicate the preferred signing algorithm. Possible values are:
- sha1
- md5
- sha-256 (or sha256) (default)
- sha-384 (or sha384)
- sha-512 (or sha512)
- sha-224 (or sha224)
The default value is "sha-256".
SignerCert Property (AS4 Connector)
The public signing certificate of the partner.
Data Type
CertificateRemarks
This property specifies the public certificate of the partner that was used to sign the message. The connector will verify the signature with the public certificate specified here.
This property is used to set a Public Key Certificate.
Ordinarily, the system will attempt to locate the public key in trusted certificate stores in the system registry. If a match is found, the certificate is trusted, and the process proceeds without error. If the certificate is not trusted, the connector will report an error.
You may explicitly set a public key, either to accept a key that is not installed on the system, or to ensure that a specific key is presented. Public key certificates may be loaded from the machine registry or from file.
This property specifies the public certificate of the partner that was used to sign the message. The connector will verify the signature with the public certificate specified here.
This property is used to set a Public Key Certificate.
Ordinarily, the system will attempt to locate the public key in trusted certificate stores in the system registry. If a match is found, the certificate is trusted, and the process proceeds without error. If the certificate is not trusted, the connector will report an error.
You may explicitly set a public key, either to accept a key that is not installed on the system, or to ensure that a specific key is presented. Public key certificates may be loaded from the machine registry or from file.
SigningCert Property (AS4 Connector)
The certificate used to sign the outgoing AS4 message.
Data Type
CertificateRemarks
This property specifies a certificate with private key used to sign the outgoing request and receipts.
This field is used to set a Private Key Certificate.
Private key certificates may be loaded from the registry, from files in PKCS#12 format, or from a PEM file format.
SSLAcceptServerCert Property (AS4 Connector)
For sending HTTPS requests, a server certificate to unconditionally accept.
Data Type
CertificateRemarks
In the Send Connector, this property is used when communicating with trading partners via HTTPS to the URL specified in URL.
In the Receive Connector, this property is used when an asynchronous MDN is requested by your trading partner to the URL specified in MDNDeliveryOption.
When an HTTPS request is issued by the connector, a new secure connection is created with the trading partner. By default, the connector will reject self-signed certificates and any other server certificates not signed by a trusted Certificate Authority (CA).
This property is used to set a Public Key Certificate.
Ordinarily, the system will attempt to locate the public key in trusted certificate stores in the system registry. If a match is found, the certificate is trusted, and the process proceeds without error. If the certificate is not trusted, the connector will report an error.
You may explicitly set a public key, either to accept a key that is not installed on the system, or to ensure that a specific key is presented. Public key certificates may be loaded from the machine registry or from file.
Note: You may also set the Accept Any field to Yes without opening the certificate selection dialog to force the connector to unilaterally authenticate any server during the security handshake. It is strongly recommended that you use this only for testing purposes. Set the LogMode to Info to cause the connector to report the server's credentials to Location.
SSLCert Property (AS4 Connector)
The certificate to use for client authentication during the SSL handshake.
Data Type
CertificateRemarks
This property is used to assign a specific certificate for SSL client authentication.
This field is used to set a Private Key Certificate.
Private key certificates may be loaded from the registry, from files in PKCS#12 format, or from a PEM file format.
TempPath Property (AS4 Connector)
A temporary local directory where data can be stored before the component processes it.
Data Type
StringDefault Value
""Remarks
This property indicates a temporary directory where the connector can store any data before the connector processes it. If TempPath is empty, the connector will receive all data to memory. If set, the connector will generate and write all inbound data to a temporary file in the specified directory.
Once the file is submitted, the connector will handle closing the file stream and deleting the temporary file. However, if the connector is shut down during a transfer some temporary files may be left in the directory. To ensure optimal performance, server administrators should check the directory regularly and remove old or extraneous files. Note: by default, this property is empty and the connector will use memory streams to store all inbound data before submitting it. It is recommended that you use a temporary directory when downloading large batches or batches containing large files to alleviate potential increased memory requirements.
This property is not available in the Sender.
Timeout Property (AS4 Connector)
A timeout for the component.
Data Type
IntegerDefault Value
60Remarks
If the Timeout property is set to 0, all operations will run uninterrupted until successful completion, or an error condition is encountered.
If Timeout is set to a positive value, the connector will wait for the operation to complete before returning control.
If Timeout expires, and the operation is not yet complete, the connector fails with an error.
Please note that by default, all timeouts are inactivity timeouts, i.e. the timeout period is extended by Timeout seconds when data is successfully sent or received.
Optionally, the behavior of the connector may be changed to absolute timeouts, i.e. the connector will wait for a maximum of Timeout seconds since the beginning of the operation, without extending the timeout period during communications.
This behavior is controlled by the AbsoluteTimeout configuration setting.
The default value for the Timeout property is 60 (seconds).
TokenPassword Property (AS4 Connector)
The password used in UsernameToken authentication.
Data Type
PasswordDefault Value
""Remarks
This property specifies the password used in UsernameToken authentication.
This property is not available in the Sender.
TokenUser Property (AS4 Connector)
The user used in UsernameToken authentication.
Data Type
StringDefault Value
""Remarks
This property specifies the user used in UsernameToken authentication. If this is specified UsernameToken authentication will be included in the request.
This property is not available in the Sender.
URL Property (AS4 Connector)
The URL to which the request is made.
Data Type
StringDefault Value
""Remarks
This property specifies the URL to which the request is made. SSL will be used if and only if the URL scheme is "https".
Certificate Type
The digital certificate being used.
Remarks
This type describes the current digital certificate. The certificate may be a public or private key. The fields are used to identify or select certificates.
Fields
Store String |
The name of the certificate store for the client certificate. The StoreType field specifies the type of the certificate store specified by Store. If the store is password protected, specify the password in StorePassword. Store is used in conjunction with the Subject field in order to specify client certificates. If Store has a value, and Subject is set, a search for a certificate is initiated. Please refer to the Subject field for details. Designations of certificate stores are platform-dependent. The following are designations of the most common User and Machine certificate stores in Windows:
In Java, the certificate store normally is a file containing certificates and optional private keys. When the certificate store type is PFXFile, this property must be set to the name of the file. When the type is PFXBlob, the property must be set to the binary contents of a PFX file (i.e. PKCS12 certificate store). If the provider is OpenSSL, the certificate store is a file containing a certificate and a private key. This property must be set to the name of the file. |
||||||||||||||||||||||||||||||||||||||||||||||||
StorePassword String |
If the certificate store is of a type that requires a password, this property is used to specify that password in order to open the certificate store. |
||||||||||||||||||||||||||||||||||||||||||||||||
StoreType CertStoreTypes |
The type of certificate store for this certificate. The connector supports both public and private keys in a variety of formats. When the cstAuto value is used the connector will automatically determine the type. This field can take one of the following values:
|
||||||||||||||||||||||||||||||||||||||||||||||||
Subject String |
The subject of the certificate used for client authentication. When this property is set, a search is performed in the current certificate store certificate with matching subject. If an exact match is not found, the store is searched for subjects containing the value of the property. When setting the property to a partial subject, CN= should be omitted. For example, the following code would find the certificate with subject CN=Test Certificate, OU=People, C=US Example (Searching with partial subject)
If a match is not found, the property is set to an empty string, and no certificate is selected. The special value "*" picks a random certificate in the certificate store. If a matching certificate is found, Subject is set to the full subject of the matching certificate. |
||||||||||||||||||||||||||||||||||||||||||||||||
Thumbprint String |
The thumbprint of the certificate. This field is used to specify the thumbprint of the certificate. When there are multiple certificates in the store that have the same subject, the thumbprint will be used to distinguish between them. |
Firewall Type
The firewall the component will connect through.
Remarks
When connecting through a firewall, this type is used to specify different properties of the firewall such as the firewall Host and the FirewallType.
Fields
AutoDetect Boolean |
Tells the connector whether or not to automatically detect and use firewall system settings, if available. |
||||||||
FirewallType FirewallTypes |
Determines the type of firewall to connect through. The applicable values are the following:
|
||||||||
Host String |
Name or IP address of firewall (optional). If a Host is given, requested connections will be authenticated through the specified firewall when connecting. If the Host field is set to a Domain Name, a DNS request is initiated. Upon successful termination of the request, the Host field is set to the corresponding address. If the search is not successful, an error is returned. |
||||||||
Password String |
A password if authentication is to be used when connecting through the firewall. If Host is specified, the User and Password fields are used to connect and authenticate to the given firewall. If the authentication fails, a trappable error is fired. |
||||||||
Port Integer |
The TCP port for the firewall Host. See the description of the Host field for details. Note that the Port is set automatically when FirewallType is set to a valid value. See the description of the FirewallType field for details. |
||||||||
User String |
A user name if authentication is to be used connecting through a firewall. If the Host is specified, the User and Password fields are used to connect and authenticate to the given Firewall. If the authentication fails, a trappable error is fired. |
Proxy Type
The proxy the component will connect to.
Remarks
When connecting through a proxy, this type is used to specify different properties of the proxy such as the Server and the AuthScheme.
Fields
AuthScheme ProxyAuthSchemes |
Use the AuthScheme field to tell the connector which type of authorization to perform when connecting to the proxy. This is only used when the User and Password fields are set. AuthScheme should be set to authNone (3) when no authentication is expected. By default, AuthScheme is authBasic (0), and if the User and Password fields are set, the component will attempt basic authentication. If AuthScheme is set to authDigest (1), digest authentication will be attempted instead. If AuthScheme is set to authProprietary (2), then the authorization token will not be generated by the connector. Look at the configuration file for the connector being used to find more information about manually setting this token. If AuthScheme is set to authNtlm (4), NTLM authentication will be used. This option is only available in the SSL package. For security reasons, setting this property will clear the values of User and Password. |
||||||||
AutoDetect Boolean |
Tells the connector whether or not to automatically detect and use proxy system settings, if available. |
||||||||
Password String |
A password if authentication is to be used for the proxy. If AuthScheme is set to Basic Authentication, the User and Password are Base64 encoded and the proxy authentication token will be generated in the form "Basic [encoded-user-password]". If AuthScheme is set to Digest Authentication, the User and Password fields are used to respond to the Digest Authentication challenge from the server. If AuthScheme is set to NTLM Authentication, the User and Password fields are used to authenticate through NTLM negotiation. |
||||||||
Port Integer |
The TCP port for the proxy Server (default 80). See the description of the Server field for details. |
||||||||
Server String |
If a proxy Server is given, then the HTTP request is sent to the proxy instead of the server otherwise specified. If the Server field is set to a Domain Name, a DNS request is initiated and upon successful termination of the request, the Server field is set to the corresponding address. If the search is not successful, an error is returned. |
||||||||
SSL ProxySSLTypes |
Determines when to use SSL for the connection to the proxy. The applicable values are the following:
|
||||||||
User String |
A user name, if authentication is to be used for the proxy. If AuthScheme is set to Basic Authentication, the User and Password are Base64 encoded and the proxy authentication token will be generated in the form "Basic [encoded-user-password]". If AuthScheme is set to Digest Authentication, the User and Password fields are used to respond to the Digest Authentication challenge from the server. If AuthScheme is set to NTLM Authentication, the User and Password fields are used to authenticate through NTLM negotiation. |
Config Settings (AS4 Connector)
The connector accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the connector, access to these internal properties is provided through the Other property.AS4 Config Settings | ||||||||||||||||||||||||
AgreementRefPMode:
AgreementRef PMode of message.This optional setting allows for the association of a message with a particular P-Mode. If specified
it should be the PMode.ID parameter.
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:CollaborationInfo/eb:AgreementRef/@pmode" |
||||||||||||||||||||||||
AgreementRefType:
The type of AgreementRef.This optional setting indicates how parties should interpret the value of AgreementRef. The semantics
of this value should be decided upon between the parties.
This value corresponds to the ebMS element "eb:Messaging/eb:UserMessage/eb:CollaborationInfo/eb:AgreementRef/@type" |
||||||||||||||||||||||||
AllowWarnings: Whether warnings are interpreted as fatal errors.When set to False (default) any ebMS level error returned by the other party will be considered an error and cause an exception. When set to True the severity of the ebMS error will be inspected. If the severity is "warning" it will not cause an exception. In this case Errors will still be populated with the error details. | ||||||||||||||||||||||||
AttachXMLFiles:
Whether to send XML files as attachments or within the SOAP body.This setting specifies whether XML files are included as attachments or within the SOAP body.
This setting is only applicable when the first file specified in EDIData is of type "text/xml" or "application/xml". In addition this is only applicable when Profile is set to Standard. If set to True (default), the file will be sent as an attachment. This allows the filename to be preserved and the file is sent as a separate MIME part. If set to False and the criteria above are met then the file will be sent within the SOAP body. In this case the filename cannot be preserved normally. The default value is True. |
||||||||||||||||||||||||
CloseStreamAfterProcessing: Whether to close the input or output stream after processing.This setting specifies whether the input or output stream will be closed after processing. This may be set to False to leave the stream open for further operations. The default value is True and the stream will be by the connector. | ||||||||||||||||||||||||
CompressXMLPayloads:
Whether to compress XML data.When CompressionFormat is set to GZIP all EDIData parts will be compressed. To exclude XML payloads
with EDIType values of "text/xml" or "application/xml" from being compressed set this value
to False. By default this is True and all attachments will be compressed.
Note: When Profile is set to Standard the first EDIData part will be included in the SOAP body if the EDIType is "text/xml" or "application/xml". In that case since the data is included in the SOAP body it will not be compressed. When Profile is set to ENTSOG all EDIData parts are compressed. |
||||||||||||||||||||||||
ContentTransferEncoding:
The content encoding of the payload data.This setting can be used to specify the content encoding of the payload data of the AS4 message. This is
set to binary (4) by default. Possible values for the this field are:
|
||||||||||||||||||||||||
DetectDuplicates:
Whether to detect duplicate messages when receiving.Whether to detect duplicate messages. If set to True LogDirectory must be set. When a file is received
the connector will store a file containing the MessageId of the received file. When additional files are
received the connector will scan the LogDirectory to see if a file with the same MessageId has already
been received. If a duplicate is detected an entry is added to the .log file and Log fires.
The default value depends on the Profile. For the Standard profile the default value is False. When Profile is set to ENTSOG this value is set to True. |
||||||||||||||||||||||||
EBPrefix: Specifies the prefix to use for messaging.This setting specified the prefix to use for messaging. The default value is "eb3" and will result in values such as: eb3:Messaging It may be desirable to set this to another value such as "eb" so client and server sides both use the same prefix. | ||||||||||||||||||||||||
EDIDataPartId[i]:
Specified the part Id at the given index.This setting may be used to specify the value for each EDIData part that is present in the message.
By default the connector will generate a unique value. For instance:
<eb3:PartInfo href="cid:_de48eece-d1d8-4823-8a63-d3a8d14dc1a8@nsoftware">In some cases it may be desired or necessary to specify a user-defined value. For instance: <eb3:PartInfo href="cid:mypart@myhost">After adding the part to EDIData the Id may be specified by setting: AS4Component.Config("EDIDataPartId[0]=mypart@myhost");This setting is also populated with the parsed Ids after receiving a message. |
||||||||||||||||||||||||
EncryptionSecurityTokenFormat:
The format to use for the security token when encryption.This setting specifies the security token format that is included in the message when encrypting.
This setting should only be set if there is a specific reason to do so. This specifies the reference
type in the SecurityTokenReference element applicable to the encrypted data. Possible values
are:
The default value is 0 (X509) and should not be changed unless there is a specific reason to do so. Note: The default value when Profile is set to eDelivery is 1 (Binary). |
||||||||||||||||||||||||
ErrorOnNegativeMDN:
Whether an exception should be raised when a negative MDN is received.By default this setting is true a negative MDN raises an exception. When set to false, all MDNs will be processed without throwing an error. The contents of a negative MDN will be available in the Mule message payload and the result of parsing will be available in the attributes collection later in the Mule flow. E.g.
#[attributes.ErrorCode]
#[attributes.ErrorMessage]
Note: In the majority of cases the default behavior of the connector is sufficient. The location specified by LogDirectory will contain the MDN contents whether it is positive or negative. In the few situations when direct disk access may not be desirable, this setting allows granular control over the result of parsing and passes the MDN contents to the application to redirect it elsewhere. This setting applies only to the send connectors. |
||||||||||||||||||||||||
FilenameProperty:
Defines a part property to hold the filename.This setting specifies the PropertyName that will hold the name of the file. This may be used
to preserve filenames. Both the client and server must agree on the name of the property that will be
used to hold the filename.
This is helpful in the case where Profile is set to ebpfStandard and the first file being sent is of type "text/xml" or "application/xml". In that case the file content is included in the SOAP body and there is no standard mechanism for preserving the filename. When set the connector will automatically populate the property when sending files and will read the filename from this property when receiving files. By default this is not specified. Note: The filenames will always be preserved within the MIME header attributes whenever possible regardless of whether this setting is specified. |
||||||||||||||||||||||||
ForceSigningCert:
Whether to force only the SigningCert to be used for signing.When set to False the connector will first check SigningCert for a certificate to use
for signing operations. If SigningCert is not specified it will use the certificate specified in Certificate.
If set to True (default) the connector will only attempt to use the certificate specified by SigningCert. If SigningCert is not specified signing will not be attempted. |
||||||||||||||||||||||||
FromId[i]: The Id of the party specified by AS4From.This setting sets the Id of the party specified by AS4From at the index specified here. This is only used when multiple Ids are set. See FromIdCount for more details. | ||||||||||||||||||||||||
FromIdCount:
The number of Ids for the party specified by AS4From.Multiple Ids may be specified for the AS4From party. This setting defines the total number of Ids.
This is used in conjunction with FromId and FromIdType. For instance:
component.Config("FromIdCount=2");
component.Config("FromId[0]=id1");
component.Config("FromIdType[0]=mytype");
component.Config("FromId[1]=id2");
When receiving a message with multiple Ids, query these settings to read the values. By default this value is unspecified and only a single Id is used as specified in the Id field of AS4From. |
||||||||||||||||||||||||
FromIdType[i]: The Id type of the party specified by AS4From.This setting sets the Id type of the party specified by AS4From at the index specified here. This is only used when multiple Ids are set. See FromIdCount for more details. | ||||||||||||||||||||||||
IdRight: A custom Id for the right side of the MessageId.This setting may be used to specify a custom value for the right side of the MessageId that is generated by the connector. By default the connector will automatically generate message Ids in the format: 2a1546bd-d623-4e7f-bb8d-ddecfb4de51c@nsoftware This setting provides a way to replace the "nsoftware" value after the "@" symbol with another value. | ||||||||||||||||||||||||
KeyEncryptionAlgorithm:
The algorithm used to encrypt the key.This setting specifies the algorithm used to encrypt the key for this message. In most cases
this should not be changed. Only change this value if there is a specific reason to do so.
Possible values are:
|
||||||||||||||||||||||||
LogLevel:
The level of information to log.This setting specifies the level of detail that is logged to the Log event and to any log files on disk.
Possible value are:
|
||||||||||||||||||||||||
LogOptions:
The information to be written to log files.When LogDirectory is set, several pieces of information are written to log files in the specified directory. Set
LogOptions to one or more of the following values to control what information is written to file. When specifying
multiple values, include them in the same string (i.e. "LogOptions=Incoming, Outgoing, Log"). The default value is All.
Possible values are:
|
||||||||||||||||||||||||
MaxDownloads:
The maximum number of downloads to perform in each polling interval.If specified, this defines the maximum number of requests to make when downloading files in each polling interval.
By default this value is not specified and there is no limit. The connector will download all files until the MPC
is empty. To restrict the number of requests to make set this value.
Note: Each request may result in multiple files being downloaded, this only limits the number of download attempts, not the number of files downloaded. This is only applicable to the Receive connector. |
||||||||||||||||||||||||
MessageType:
Indicates the type of message received.This property may be used to determine what type of message was received in a request. Requests may be used
for multiple functions. For instance a request may contain a pull request and a receipt. This setting may
be used as a bitmask to determine which combination of types are present. To inspect the message perform
a binary 'AND' with one or more of the following values:
int requestType = Int32.Parse(AS4Server.Config("MessageType"));
if((requestType & 1) != 0)
//The request contains a pull request
|
||||||||||||||||||||||||
NormalizeIssuerSubject:
Whether to normalize the certificate subject within the X509Data element.If set to True (default) the connector will normalize the X509IssuerName element within the request to
conform to RFC 2253. If set to False the connector will use a standard format used by other components
within the toolkit, which may not be compatible with all other AS4 software.
The default value is True to maximize interoperability with other AS4 software. |
||||||||||||||||||||||||
OAEPMGF1HashAlgorithm:
The MGF1 hash algorithm used when encrypting a key.When encryption is enabled, this algorithm specifies the MGF1 hash algorithm used for the encryption key by RSA OAEP.
Possible values are:
Note: If Profile is set to ENTSOG the MGF1HashAlgorithm will be set to "SHA256" by default. |
||||||||||||||||||||||||
OAEPParams: The hex encoded OAEP parameters to be used when encrypting a key.This setting is optional and should only be specified if OAEP parameters need to be explicitly set. The value specified should be a hex string. By default this setting is unspecified. | ||||||||||||||||||||||||
OAEPRSAHashAlgorithm:
The RSA hash algorithm used when encrypting a key.When encryption is enabled, this algorithm specifies the RSA hash algorithm used for the encryption key.
This may differ from the hash algorithm used to sign the AS4 message content. Possible values are:
|
||||||||||||||||||||||||
ReceiptURL:
The URL to which receipts are sent.This property specifies the URL to which receipts are sent if different than URL. This property
should only be set if receipts must be sent to an alternate URL.
This setting is only applicable to the Receive connector |
||||||||||||||||||||||||
ReferenceHashAlgorithm:
The hash algorithm used to has the data specified in the reference of a signature.When signing the content being signed is referred to by a reference in the Signature element. This setting
specifies the hash algorithm used when computing the reference digest. Possible values are:
|
||||||||||||||||||||||||
RequireEncryption: Whether encryption is required when processing received messages.This setting may be set to True to require that received messages are encrypted. When True if a message is received that is not encrypted the connector will throw an exception. The default value is False. | ||||||||||||||||||||||||
RequireSignature: Whether a signature is required when processing received messages.This setting may be set to True to require that received messages are signed. When True if a message is received that is not signed the connector will throw an exception. The default value is False. | ||||||||||||||||||||||||
ResponseFile: A file from which to read the response.This setting specifies a file from which the response is read. This may be useful in cases where the response is not received directly by the connector. For instance it may be useful in debugging. If ResponseHeaders is not specified they will be read from file. | ||||||||||||||||||||||||
SignerCACert:
The CA certificates that issued the signer certificate.This setting may be set prior to signature verification when receiving messages that are signed using a certificate
specified in the message itself as a BinarySecurityToken.
If this setting is specified, the connector will verify the chain of the signer certificate against the CA
list set in this setting. To specify one or more CA certificate prior to signature verification set
this to the base64 encoded public certificate of each CA certificate. Each additional certificate can be
added by prepending the data with a + character. If the value begins with a + the connector
will add the following value to an internal store of CA certificates. For instance:
If the chain validation fails during signature verification the connector throws an exception. If this setting is not specified no chain validation is performed. |
||||||||||||||||||||||||
SigningSecurityTokenFormat:
The format to use for the security token when signing.This setting specifies the security token format that is included in the message when signing.
This setting should only be set if there is a specific reason to do so. This specifies the reference
type in the SecurityTokenReference element applicable to the signed data. Possible values
are:
The default value is 0 (X509) and should not be changed unless there is a specific reason to do so. Note: The default value when Profile is set to eDelivery is 1 (Binary). |
||||||||||||||||||||||||
TempPath: Where temporary files are optionally written.When processing large files an excessive amount of memory may be used, leading to out-of-memory exceptions. To reduce the amount of memory used, partially encoded files can be written to a temporary directory. Set this to a folder on disk where temporary files may be written. | ||||||||||||||||||||||||
ToId[i]: The Id of the party specified by AS4To.This setting sets the Id of the party specified by AS4To at the index specified here. This is only used when multiple Ids are set. See ToIdCount for more details. | ||||||||||||||||||||||||
ToIdCount:
The number of Ids for the party specified by AS4To.Multiple Ids may be specified for the AS4To party. This setting defines the total number of Ids.
This is used in conjunction with ToId and ToIdType. For instance:
component.Config("ToIdCount=2");
component.Config("ToId[0]=id1");
component.Config("ToIdType[0]=mytype");
component.Config("ToId[1]=id2");
When receiving a message with multiple Ids, query these settings to read the values. By default this value is unspecified and only a single Id is used as specified in the Id field of AS4To. |
||||||||||||||||||||||||
ToIdType[i]: The Id type of the party specified by AS4To.This setting sets the Id type of the party specified by AS4To at the index specified here. This is only used when multiple Ids are set. See ToIdCount for more details. | ||||||||||||||||||||||||
TokenPasswordType:
The password type used in UsernameToken authentication.This setting specifies the type of password specified when TokenUser and TokenPassword are set.
TokenPassword should normally be set to the plaintext password that both the client and server know.
The connector will automatically use SHA-1 to create a hash of the password when TokenPasswordType is set to
Digest (default). The hashed password is sent in the request, along with a creation date and nonce.
The server will validate these values when receiving the request. Possible values are:
This setting is only applicable to the Receive connector |
||||||||||||||||||||||||
TransformReceipt:
Whether to canonicalize the received receipt.When a receipt is received this setting controls whether the value in Content is transformed.
When set to True (default) the connector will perform canonicalize the receipt when it is received. This may be helpful if the value of Content is to be used in a later process where a valid XML document is required. When set to true (false by default), the component will transform the receipt content made available in the component using Exclusive XML Canonicalization. If False the connector will not alter the received receipt. The value of Content will not itself be a well formed XML document. |
||||||||||||||||||||||||
SSL Config Settings | ||||||||||||||||||||||||
ReuseSSLSession:
Determines if the SSL session is reused.
If set to true, the connector will reuse the context if and only if the following criteria are met:
|
||||||||||||||||||||||||
SSLCipherStrength:
The minimum cipher strength used for bulk encryption.
This minimum cipher strength largely dependent on the security modules installed
on the system. If the cipher strength specified is not supported,
an error will be returned when connections are initiated.
Please note that this setting contains the minimum cipher strength requested from the security library. Use this setting with caution. Requesting a lower cipher strength than necessary could potentially cause serious security vulnerabilities in your application. |
||||||||||||||||||||||||
SSLEnabledCipherSuites:
The cipher suite to be used in an SSL negotiation.The enabled cipher suites to be used in SSL negotiation.
By default, the enabled cipher suites will include all available ciphers ("*"). The special value "*" means that the connector will pick all of the supported cipher suites. If SSLEnabledCipherSuites is set to any other value, only the specified cipher suites will be considered. Multiple cipher suites are separated by semicolons. Example values when UseInternalSecurityAPI is False (default):
// The "Other" property could contain ONE of the following lines:
SSLEnabledCipherSuites=*
SSLEnabledCipherSuites=TLS_DHE_DSS_WITH_AES_128_CBC_SHA
SSLEnabledCipherSuites=TLS_DHE_DSS_WITH_AES_128_CBC_SHA;TLS_DH_ANON_WITH_AES_128_CBC_SHA
Possible values when UseInternalSecurityAPI is True include:
If SSLEnabledProtocols is configured to use TLS 1.3 the following values are supported:
SSLEnabledCipherSuites is used together with SSLCipherStrength. |
||||||||||||||||||||||||
SSLEnabledProtocols:
Used to enable/disable the supported security protocols.Used to enable/disable the supported security protocols.
Not all supported protocols are enabled by default (the value of this setting is 4032). If you want more granular control over the enabled protocols, you can set this property to the binary 'OR' of one or more of the following values:
Note: TLS 1.1 and TLS1.2 support are only available starting with Windows 7. Note: Enabling TLS 1.3 will automatically set UseInternalSecurityAPI to True. |
||||||||||||||||||||||||
SSLIncludeCertChain:
Whether the entire certificate chain is included in the SSLServerAuthentication event.This setting specifies whether the transport log contains the full certificate chain. By default this value is False and only the leaf certificate will be present.
If set to True all certificates returned by the server will be present in the transport log. This includes the leaf certificate, any intermediate certificate, and the root certificate. Note: When UseInternalSecurityAPI is set to True this value is automatically set to True. This is needed for proper validation when using the internal provider. |
||||||||||||||||||||||||
SSLSecurityFlags:
Flags that control certificate verification.The following flags are defined (specified in hexadecimal
notation). They can be or-ed together to exclude multiple
conditions:
|
||||||||||||||||||||||||
TLS12SignatureAlgorithms:
Defines the allowed TLS 1.2 signature algorithms when UseInternalSecurityAPI is True.This setting specifies the allowed server certificate signature algorithms when UseInternalSecurityAPI is
True and SSLEnabledProtocols is set to allow TLS 1.2.
When specified the connector will verify that the server certificate signature algorithm is among the values specified in this setting. If the server certificate signature algorithm is unsupported the connector will fail with an error. The format of this value is a comma separated list of hash-signature combinations. For instance:
In order to not restrict the server's certificate signature algorithm, specify an empty string as the value for this setting, which will cause the signature_algorithms TLS 1.2 extension to not be sent. |
||||||||||||||||||||||||
TLS12SupportedGroups:
The supported groups for ECC.This setting specifies a comma separated list of named groups used in TLS 1.2 for ECC.
The default value is ecdhe_secp256r1,ecdhe_secp384r1,ecdhe_secp521r1. When using TLS 1.2 and UseInternalSecurityAPI is set to True, the values refer to the supported groups for ECC. The following values are supported:
|
||||||||||||||||||||||||
TLS13KeyShareGroups:
The groups for which to pregenerate key shares.This setting specifies a comma separated list of named groups used in TLS 1.3 for key exchange.
The groups specified here will have key share data pregenerated locally before establishing a connection.
This can prevent an additional round trip during the handshake if the group is supported by the server.
The default value is set to balance common supported groups and the computational resources required to generate key shares. As a result only some groups are included by default in this setting. Note: All supported groups can always be used during the handshake even if not listed here, but if a group is used which is not present in this list it will incur an additional round trip and time to generate the key share for that group. In most cases this setting does not need to be modified. This should only be modified if there is a specific reason to do so. The default value is ecdhe_x25519,ecdhe_secp256r1,ecdhe_secp384r1,ffdhe_2048,ffdhe_3072 The values are ordered from most preferred to least preferred. The following values are supported:
|
||||||||||||||||||||||||
TLS13SignatureAlgorithms:
The allowed certificate signature algorithms.This setting holds a comma separated list of allowed signature algorithms. Possible values are:
|
||||||||||||||||||||||||
TLS13SupportedGroups:
The supported groups for (EC)DHE key exchange.This setting specifies a comma separated list of named groups used in TLS 1.3 for key exchange.
This setting should only be modified if there is a specific reason to do so.
The default value is ecdhe_x25519,ecdhe_x448,ecdhe_secp256r1,ecdhe_secp384r1,ecdhe_secp521r1,ffdhe_2048,ffdhe_3072,ffdhe_4096,ffdhe_6144,ffdhe_8192 The values are ordered from most preferred to least preferred. The following values are supported:
|
||||||||||||||||||||||||
General Config Settings | ||||||||||||||||||||||||
AbsoluteTimeout: Determines whether timeouts are inactivity timeouts or absolute timeouts.If AbsoluteTimeout is set to True, any method which does not complete within Timeout seconds will be aborted. By default, AbsoluteTimeout is False, and the timeout is an inactivity timeout. | ||||||||||||||||||||||||
LocalHost:
The name of the local host or user-assigned IP interface through which connections are initiated or accepted.The LocalHost configuration contains the name of the local host as obtained by the Gethostname() system call, or if the user has assigned an IP address, the value of that address.
In multihomed hosts (machines with more than one IP interface) setting LocalHost to the value of an interface will make the connector initiate connections (or accept in the case of server connectors) only through that interface. If the connector is connected, the LocalHost configuration shows the IP address of the interface through which the connection is made in internet dotted format (aaa.bbb.ccc.ddd). In most cases, this is the address of the local host, except for multihomed hosts (machines with more than one IP interface). |
||||||||||||||||||||||||
TcpNoDelay:
Whether or not to delay when sending packets.
When true, the socket will send all data that is ready to send at once. When
false, the socket will send smaller buffered packets of data at small intervals.
This is known as the Nagle algorithm.
By default, this config is set to false. |
||||||||||||||||||||||||
UseInternalSecurityAPI: Tells the connector whether or not to use the system security libraries or an internal implementation. By default the connector will use the system security libraries to perform cryptographic functions where applicable. Setting this to True tells the connector to use the internal implementation instead of using the system's security API. |