Wiki-Quellcode von Autista

Version 7.1 von MACH ProForms GmbH am 06.08.2021

Zeige letzte Bearbeiter
1 ## Auswahl des Inhalts-Schema
2
3 Ab der Version 4.33.0 wird die Inhaltsnachricht im xPersonenstandsformat an Autista übergeben.
4 Für einen selbstgebauten Assistenten heißt, dies dass je Urkundenart ein Mapping vorgenommen werden muss.
5
6 Damit der Formularserver unabhängig von der Art der Einreichung (siehe unten) weiß welches Mapping-Schema bei der Übergabe an Autista verwendet werden soll, benötigt er ein Feld namens "mappingSchemaFilter".
7
8 Über das Feld "mappingSchemaFilter" wird definiert, welche Mapping-Schema für die Inhaltsnachricht verwendet werden soll.
9
10 Dabei kommen im Verlagsassistent die folgenden Werte zum Einsatz
11
12 - portal2StA.Geburt.081030#@#1.7.5 für Geburtsurkunden
13 - portal2StA.Ehe.082030#@#1.7.5 für Eheurkunden
14 - portal2StA.LP.083030#@#1.7.5 für Lebenspartnerschaftsurkunden
15 - portal2StA.Sterbefall.084030#@#1.7.5 für Sterbefallurkunden
16
17 Sollten Sie die Schema-Dateien unter einem anderen Namen und Version hochgeladen haben, so sind die Werte von oben entsprechend zu ersetzen. Als Trennzeichen zwischen Schema-Namen und Schema-Version ist immer #@# zu verwenden.
18
19 Das Feld "mappingSchemaFilter" wird aus einer Konfigurationsliste gezogen, welche von uns (Form-Solutions) gepflegt wird!
20 Falls eigenständige Anpassungen an der Liste vorgenommen werden und sich daraus Fehler ergeben, sind die daraus entstehenden Kosten selbst zu tragen!
21 Damit die richtigen Daten aus der Konfigurationsliste gezogen werden, benötigen wir von Ihnen folgende Informationen:
22 - Mandantennummer
23 - Mandantenbezeichnung
24 - die eingesetzte Versionsnummer von Autista und xPersonenstand
25 - Standesamtsnummer
26
27 ## Konfiguration der Autista Push-Variante auf Seiten des Form-Solutions Formularservers
28
29 Das Autista Push System steht ab Version 4.22.0 des Formularservers zur Verfügung.
30
31 Bei Verwendung der Push-Variante werden die Inhaltsdaten, beim Einreichen des Assistenten, an einen Webservice verschickt.
32 Für einen erfolgreichen Versand ist es notwendig, dass die Inhaltsdaten zunächst in ein XML (nach xSta Standard) gemappt werden.
33 Anschließend wird dieses XML als Inhalt einer Webservice-Nachricht (nach XTA Standard) an die Autista-Webservice-Schnittstelle des Empfängers verschickt.
34
35 Die Dokumentation zur Konfiguration sowie Veröffentlichung des Assistenten finden Sie [hier](https://wiki.form-solutions.de/wiki/docwiki/view/Main/09_Schnittstellen/01_Fachschnittstellen/02_Autista/)
36
37 ___
38
39 ## Konfiguration der Autista Pull-Variante auf Seiten des Form-Solutions Formularservers
40
41 Das Autista Pull System steht ab Version 4.22.0 des Formularservers zur Verfügung.
42
43 ### 1) Konfiguration des Apache Reverse Proxy
44
45 Der Apache Reverse Proxy muss folgendermaßen konfiguriert werden (siehe vhost-ofs.conf, im Unterverzeichnis customerArea/httpd.conf.d):
46
47 ### 1.1) Konfiguration der ProxyPass Einträge
48
49 Falls die folgenden ProxyPass Einträge nicht vorhanden sind, so müssen diese hinzugefügt werden (falls auf dem System bereits Autista in der Version 1 eingesetzt wurde, so sollte diese Einträge bereits vorhanden sein):
50
51 ```
52 ProxyPass /autista-webservice http://servername:8080/autista-webservice
53 ProxyPassReverse /autista-webservice http://servername:8080/autista-webservice
54 ```
55
56 Der Servername muss durch Ihre konkrete Domain ersetzt werden.
57
58 ### 1.2) Konfiguration der Zertifikatsweiterleitung
59
60 Für die korrekte Weiterleitung von Client Zertifikaten an den Wildfly Applikationsserver müssen die nachfolgenden Einträge hinzugefügt werden:
61 Diese Einstellungen sollten im `<IfModule ssl_module>` Block stehen, am besten direkt nach den Server-Zertifikatseinstellungen ("SSLCertificate*File")
62
63 ```
64 ## pass SSL client certificates to wildfly (required for Autista Webservice)
65 <Location /autista-webservice >
66 SSLVerifyClient optional_no_ca
67
68 RequestHeader set SSL_CLIENT_CERT ""
69 RequestHeader set SSL_CLIENT_VERIFY ""
70 RequestHeader set SSL_CLIENT_S_DN ""
71 RequestHeader set SSL_CLIENT_I_DN ""
72 RequestHeader set SSL_SERVER_S_DN_OU ""
73 RequestHeader set SSL_CLIENT_CERT "%{SSL_CLIENT_CERT}s"
74 RequestHeader set SSL_CLIENT_VERIFY "%{SSL_CLIENT_VERIFY}s"
75 RequestHeader set SSL_CLIENT_S_DN "%{SSL_CLIENT_S_DN}s"
76 RequestHeader set SSL_CLIENT_I_DN "%{SSL_CLIENT_I_DN}s"
77 RequestHeader set SSL_SERVER_S_DN_OU "%{SSL_SERVER_S_DN_OU}s"
78
79 ProxyPass http://wildfly:8080/autista-webservice
80 ProxyPassReverse http://wildfly:8080/autista-webservice
81 </Location>
82 ```
83
84 ### 2) Konfiguration der Mandanten (Kundenbereich)
85
86 Die Konfiguration per DB-Eintrag ist mit der im Folgenden beschriebenen Funktionalität obsolet.
87
88
89 #### 2.1) Konfiguration des Clients
90
91 Damit die Ausfülldaten über den Autista Webservice abgeholt werden können, muss für jedes abholende Autista-System (Autista-Backend) das verwendete Client-Zertifikat oder alternativ die Remote-IP je Mandant hinterlegt werden. Diese Konfiguration kann unter "Einstellungen/Server-Administration/API-Keys" durch die Verwendung eines API-Keys durchgeführt werden. Wird ein und dasselbe Client-Zertifikat oder Remote-IP bei mehreren Mandanten hinterlegt, so kann das zugehörige Autista-System die Ausfülldaten für all diese Mandanten abholen.
92
93 ![[API Key Anlegen|@ApiKeyAnlegen_Stammdaten.jpg]]
94
95 #### 2.2) Einrichten mit Client-Zertifikat
96
97 Es ist möglich ein Zertifikat per Upload-Komponente in der Konfiguration des API-Keys hochzuladen.
98
99 #### 2.2) Konfiguration des Clients mit Remote-IP
100
101 Sollte es mit der zertifikatsbasierten Abholung Probleme geben, gibt es alternativ noch die Möglichkeit die Abholung via Remote-IP abzusichern. Die Remote-IP kann wie unter dem Punkt 2.1 beschrieben bei einem API-Key hinterlegt werden. Die entsprechende Remote-IP-Adresse können Sie aus dem Access-Log des Formularservers ermitteln.
102
103
104 #### 2.2) Konfiguration von Standesamtzuweisungen
105
106 Welche Standesämter zu einem Mandanten gehören, wird in der Mandantenkonfiguration hinterlegt. Diese Konfiguration enthält eine Menge von Modulkonfigurationen und eine davon (de.formsolutions.administrationcenter.organization.OrganizationAutistaConfiguration) enthält die Standesamtnummern eines Mandanten.
107 Diese befindet sich in der Datenbank `administrationCenter` und hier in der Collection `organizationConfiguration`.
108 Diese Modulkonfiguration hat ein Attribut `civilRegistryOfficeIds`, welches eine Liste von Standesamtnummern enthält.
109
110 Ein Beispieleintrag in der Mandantenkonfiguration für den Mandanten "12345678-1234" würde wie folgt aussehen:
111
112 ```
113 {
114 "_id" : "12345678-1234",
115 "_class" : "de.formsolutions.administrationcenter.organization.OrganizationConfiguration",
116 "moduleConfigurations" : [
117 ... GEKÜRZTER_EINTRAG ...
118 {
119 "civilRegistryOfficeIds" : [
120 "05362020"
121 ],
122 "_class" : "de.formsolutions.administrationcenter.organization.OrganizationAutistaConfiguration"
123 }
124
125 ]
126 }
127 ```
128
129 Beispiele für das Anlegen der Struktur
130
131 ```
132 use administrationCenter
133 ```
134
135 Sofern für den Mandanten bereits eine Modulkonfiguration wie z.B. Payment vorliegt können Sie den Eintrag wie folgt hinzufügen:
136
137 ```
138 db.organizationConfiguration.update({"_id" : "organizationid"}, {$push: {"moduleConfigurations" : {"civilRegistryOfficeIds" : ["standesamtsnummer"], "_class" : "de.formsolutions.administrationcenter.organization.OrganizationAutistaConfiguration"}}})
139 ```
140
141 Sollte noch keine Modulkonfiguration für den Mandanten vorhanden sein, bitte wie folgt vorgehen:
142
143 ```
144 db.organizationConfiguration.insert({
145 "_id" : "organiazationID",
146 "_class" : "de.formsolutions.administrationcenter.organization.OrganizationConfiguration",
147 "moduleConfigurations" : [
148 {
149 "civilRegistryOfficeIds" : [
150 "standesamtsnummer"
151 ],
152 "_class" : "de.formsolutions.administrationcenter.organization.OrganizationAutistaConfiguration"
153 }
154
155 ]
156 })
157 ```
158
159 In beiden Fällen sind die Werte für `_id` und `civilRegistryOfficeIds`durch die entsprechenden Werte Kundennummer und Standesamtsnummer zu ersetzen.