...
Case 6 – One eSchKG/e-LP/e-LEF application with one signing outbox
Assumption
...
- One eSchKG/e-LP/e-LEF application (message type = 10301) has to be connected to the sedex network.
- The application uses a single signing outbox to sign PDF files by the MH.
- One nativeApp -> Native Mode.
Prerequisite
- One physically sedex participant (=sedex ID) is needed for the sedex adapter (T7-4-1 in the example configuration).
- A PKCS#12 file with the X.509 signing certificate (.p12 file)
- Open eGov BatchSigner or LocalSigner “signature.properties” file
Note |
---|
The signing process: The application adds the file “document.pdf” inside the signing-outbox directory. MH takes this file and adds a signature to it. The new file with the signature will be added to the outbox directory with the new filename “document-sig.pdf”. If this step is successfully executed the original file “document.pdf” will be moved to the processed directory. |
...
Example configuration
Code Block | ||
---|---|---|
| ||
/mh_examples/case6/ . +-- application ¦ +-- inbox ¦ +-- outbox ¦ +-- processed ¦ +-- signing-outbox +-- log ¦ +-- mh ¦ +-- sedex +-- mh ¦ +-- install-dir ¦ ¦ +-- bin ¦ ¦ +-- conf ¦ ¦ ¦ +-- certificate.p12 ¦ ¦ ¦ +-- config.xml ¦ ¦ ¦ +-- config.xsd ¦ ¦ ¦ +-- log4j.properties ¦ ¦ ¦ +-- recipientIdResolver.groovy ¦ ¦ ¦ +-- signature.properties ¦ ¦ +-- lib ¦ +-- working-dir ¦ +-- corrupted ¦ +-- db ¦ +-- sent ¦ +-- tmp ¦ ¦ +-- preparing ¦ ¦ +-- receiving ¦ +-- unknown +-- sedex +-- inbox +-- outbox +-- receipts +-- sent |
...
Code Block | ||||
---|---|---|---|---|
| ||||
typeOfSignature = signature visibleSignature = true location = Bern reason = Genehmigt contact = info@glue.ch backgroundImage = leftPos = 100 topPos = 100 boxWidth = 80 boxHeight = 40 signOn = 0 enableTimestamping = false tsaurl = http://tsa.swisssign.net, http://tsa-t01.admin.ch/rfc3161 tsauser = tsapassword = |
Case 7– One eSchKG/e-LP/e-LEF application with two signing outboxes
Assumption
- One eSchKG/e-LP/e-LEF application (message type = 10301) has to be connected to the sedex network.
- The application uses two signing outboxes to sign PDF files by the MH.
- One nativeApp -> Native Mode.
Prerequisite
- One physically sedex participant (=sedex ID) is needed for the sedex adapter (T7-4-1 in the example configuration).
- Two PKCS#12 files with the X.509 signing certificates (.p12 files)
- Two Open eGov BatchSigner or LocalSigner “signature.properties” file
Note |
---|
|
Example configuration
Code Block | ||
---|---|---|
| ||
/mh_examples/case7/
.
+-- application
¦ +-- inbox
¦ +-- outbox
¦ +-- signing-outbox1
¦ +-- signing-outbox2
+-- log
¦ +-- mh
¦ +-- sedex
+-- mh
¦ +-- install-dir
¦ ¦ +-- bin
¦ ¦ +-- conf
¦ ¦ ¦ +-- certificate1.p12
¦ ¦ ¦ +-- certificate2.p12
¦ ¦ ¦ +-- config.xml
¦ ¦ ¦ +-- config.xsd
¦ ¦ ¦ +-- log4j.properties
¦ ¦ ¦ +-- recipientIdResolver.groovy
¦ ¦ ¦ +-- signature1.properties
¦ ¦ ¦ +-- signature2.properties
¦ ¦ +-- lib
¦ +-- working-dir
¦ +-- corrupted
¦ +-- db
¦ +-- sent
¦ +-- tmp
¦ ¦ +-- preparing
¦ ¦ +-- receiving
¦ +-- unknown
+-- sedex
+-- inbox
+-- outbox
+-- receipts
+-- sent |
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
xmlns="http://msghandler.suis.admin.ch/xmlns/config"
version="3.0">
<sedexAdapter>
<participantId>T7-4-1</participantId>
<inboxDir>/mh_examples/case7/sedex/inbox</inboxDir>
<outboxDir>/mh_examples/case7/sedex/outbox</outboxDir>
<receiptDir>/mh_examples/case7/sedex/receipts</receiptDir>
<sentDir>/mh_examples/case7/sedex/sent</sentDir>
</sedexAdapter>
<messageHandler>
<!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein:
corrupted, tmp, unkown, etc. -->
<workingDir dirPath="/mh_examples/case7/mh/working-dir"/>
<!-- Wo starten relative Pfade -->
<baseDir dirPath="/mh_examples/case7/application"/>
<!-- wie oft wird die sedex inbox geprft -->
<sedexInboxDirCheck cron="0/30 * * * * ?" />
<!-- wie oft wird das sedex receipts directoty geprft -->
<sedexReceiptDirCheck cron="0/30 * * * * ?" />
<!-- jede *outbox kann Wert berschreiben -->
<defaultOutboxCheck cron="0/30 * * * * ?" />
<webserviceInterface host="localhost" port="18080"/>
<statusDatabase dirPath="/mh_examples/case7/mh/working-dir/db"
dataHoldTimeInDays="2" resend="true"/>
<protocol createPerMessageProtocols="false"/>
</messageHandler>
<nativeApp participantId="T7-4-1" > <!-- die lokale sedexId -->
<outbox dirPath="outbox" msgType="10301">
<recipientIdResolver filePath="/mh_examples/case7/mh/install-dir/conf/recipientIdResolver.groovy" method="resolve" />
<signingOutbox dirPath="signing-outbox1" signingProfilePath="/mh_examples/case7/mh/install-dir/conf/signature1.properties">
<certificate filePath="/mh_examples/case7/mh/install-dir/conf/certificate1.p12" password="secret"/>
</signingOutbox>
<signingOutbox dirPath="signing-outbox2" signingProfilePath="/mh_examples/case7/mh/install-dir/conf/signature2.properties">
<certificate filePath="/mh_examples/case7/mh/install-dir/conf/certificate2.p12" password="secret"/>
</signingOutbox>
</outbox>
<inbox dirPath="inbox" msgTypes="10301"/>
</nativeApp>
</config> |
recipientIdResolver.groovy: same as in case 1
signature1.properties and signature2.properties: See case 6