aboutsummaryrefslogtreecommitdiff
path: root/id/server
diff options
context:
space:
mode:
authorThomas Lenz <tlenz@iaik.tugraz.at>2018-07-10 16:53:03 +0200
committerThomas Lenz <tlenz@iaik.tugraz.at>2018-07-10 16:53:03 +0200
commit3535ae9500b29d0b2d0f317ea7f47a6c25c6f70e (patch)
tree199550720498b8e8394125440dd44ffe5b302ed8 /id/server
parent56ae5a8050fa116061eb00be9057abefd0428521 (diff)
downloadmoa-id-spss-3535ae9500b29d0b2d0f317ea7f47a6c25c6f70e.tar.gz
moa-id-spss-3535ae9500b29d0b2d0f317ea7f47a6c25c6f70e.tar.bz2
moa-id-spss-3535ae9500b29d0b2d0f317ea7f47a6c25c6f70e.zip
some small updates and handbook update
Diffstat (limited to 'id/server')
-rw-r--r--id/server/data/deploy/conf/moa-id/moa-id.properties36
-rw-r--r--id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml3
-rw-r--r--id/server/doc/handbook/additional/additional.html25
-rw-r--r--id/server/doc/handbook/config/config.html414
-rw-r--r--id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAIDEventConstants.java8
-rw-r--r--id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAReversionLogger.java6
-rw-r--r--id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/EidasCentralAuthConstants.java2
-rw-r--r--id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/config/EidasCentralAuthRequestBuilderConfiguration.java12
-rw-r--r--id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/CreateAuthnRequestTask.java10
-rw-r--r--id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/ReceiveAuthnResponseTask.java39
10 files changed, 171 insertions, 384 deletions
diff --git a/id/server/data/deploy/conf/moa-id/moa-id.properties b/id/server/data/deploy/conf/moa-id/moa-id.properties
index fa6bccef0..e8cdcf74d 100644
--- a/id/server/data/deploy/conf/moa-id/moa-id.properties
+++ b/id/server/data/deploy/conf/moa-id/moa-id.properties
@@ -27,22 +27,11 @@ configuration.monitoring.test.identitylink.url=$PATH_TO_CONFIG$/conf/moa-id/moni
#MOA-ID 3.x Advanced Logging
configuration.advancedlogging.active=false
-##Webservice Client Configuration
-#MOA-SP webservice
-#service.moasp.acceptedServerCertificates=
-#service.moasp.clientKeyStore=
-#service.moasp.clientKeyStorePassword=
-
#Online mandates webservice (MIS)
service.onlinemandates.acceptedServerCertificates=
service.onlinemandates.clientKeyStore=keys/....
service.onlinemandates.clientKeyStorePassword=
-#Foreign Identities (SZRGW)
-service.foreignidentities.acceptedServerCertificates=
-service.foreignidentities.clientKeyStore=keys/....
-service.foreignidentities.clientKeyStorePassword=
-
##Protocol configuration##
#PVP2
protocols.pvp2.idp.ks.file=file:$PATH_TO_CONFIG$/conf/moa-id/keys/moa_idp[password].p12
@@ -61,6 +50,31 @@ protocols.oauth20.jwt.ks.password=password
protocols.oauth20.jwt.ks.key.name=oauth
protocols.oauth20.jwt.ks.key.password=password
+
+
+######## central eIDAS-node connector module ##########
+modules.eidascentralauth.keystore.path=file:$PATH_TO_CONFIG$/conf/moa-id/keys/moa_idp[password].p12
+modules.eidascentralauth.keystore.password=password
+modules.eidascentralauth.metadata.sign.alias=pvp_metadata
+modules.eidascentralauth.metadata.sign.password=password
+modules.eidascentralauth.request.sign.alias=pvp_assertion
+modules.eidascentralauth.request.sign.password=password
+modules.eidascentralauth.response.encryption.alias=pvp_assertion
+modules.eidascentralauth.response.encryption.password=password
+
+modules.eidascentralauth.node.trustprofileID=centralnode_metadata
+
+
+#modules.eidascentralauth.required.additional.attributes.0=urn:oid:1.2.40.0.10.2.1.1.261.36,false
+#modules.eidascentralauth.required.additional.attributes.1=urn:oid:1.2.40.0.10.2.1.1.261.104,false
+#modules.eidascentralauth.required.additional.attributes.2=urn:oid:1.2.40.0.10.2.1.1.261.38,false
+
+##########################################################
+
+
+
+
+
##Database configuration##
configuration.database.byteBasedValues=false
diff --git a/id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml b/id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml
index 31fc8a16c..18952eaf7 100644
--- a/id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml
+++ b/id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml
@@ -64,6 +64,9 @@
<cfg:Id>PVP_metadata</cfg:Id>
<cfg:TrustAnchorsLocation>trustProfiles/PVP_metadata</cfg:TrustAnchorsLocation>
</cfg:TrustProfile>
+ <cfg:Id>centralnode_metadata</cfg:Id>
+ <cfg:TrustAnchorsLocation>trustProfiles/centralnode_metadata</cfg:TrustAnchorsLocation>
+ </cfg:TrustProfile>
</cfg:PathValidation>
<cfg:RevocationChecking>
<cfg:EnableChecking>true</cfg:EnableChecking>
diff --git a/id/server/doc/handbook/additional/additional.html b/id/server/doc/handbook/additional/additional.html
index 9e3cdf11e..557f3d528 100644
--- a/id/server/doc/handbook/additional/additional.html
+++ b/id/server/doc/handbook/additional/additional.html
@@ -610,6 +610,31 @@
<td valign="top">&nbsp;</td>
<td valign="top">Personenbindung f&uuml;r Authentifizierung &uuml;ber eIDAS Node erstellt</td>
</tr>
+ <tr>
+ <td valign="top">6200</td>
+ <td valign="top">&nbsp;</td>
+ <td valign="top">Anmeldung via nationalen zentralen eIDAS Knoten gestartet</td>
+ </tr>
+ <tr>
+ <td valign="top">6201</td>
+ <td valign="top">RequestID</td>
+ <td valign="top">Weiterleitung an zentralen eIDAS Knoten mit RequestID</td>
+ </tr>
+ <tr>
+ <td valign="top">6202</td>
+ <td valign="top">ResponseID</td>
+ <td valign="top">Antwort von zentralem eIDAS Knoten mit ResponseID erhalten</td>
+ </tr>
+ <tr>
+ <td valign="top">6203</td>
+ <td valign="top">&nbsp;</td>
+ <td valign="top">Antwort von zentralem eIDAS Knoten enth&auml;lt einen Fehler</td>
+ </tr>
+ <tr>
+ <td valign="top">6204</td>
+ <td valign="top">&nbsp;</td>
+ <td valign="top">Antwort von zentralem eIDAS Knoten vollst&auml;ndig und g&uuml;ltig</td>
+ </tr>
</table>
<p>&nbsp;</p>
<p>Einzelne Events werden um einen Transaktionsparameter erg&auml;nzt, welcher in der Spalte Wert beschrieben ist. <br>
diff --git a/id/server/doc/handbook/config/config.html b/id/server/doc/handbook/config/config.html
index 30624d3b0..26925709e 100644
--- a/id/server/doc/handbook/config/config.html
+++ b/id/server/doc/handbook/config/config.html
@@ -59,7 +59,7 @@
<ol>
<li><a href="#basisconfig_moa_id_auth_param_services_moasp">MOA-SP</a></li>
<li><a href="#basisconfig_moa_id_auth_param_services_mandates">Online-Vollmachen</a></li>
- <li><a href="#">Foreign Identities</a></li>
+ <li><a href="#">Zentraler eIDAS Knoten</a></li>
</ol>
</li>
<li><a href="#basisconfig_moa_id_auth_param_protocol">Protokolle</a>
@@ -77,7 +77,6 @@
</li>
<li> <a href="#basisconfig_moa_id_auth_param_testing">Testing</a></li>
<li><a href="#basisconfig_moa_id_auth_szrclient">SZR Client f&uuml;r STORK &lt;-&gt; PVP Gateway Betrieb</a></li>
- <li><a href="#basisconfig_moaid_stork2">STORK 2.0</a></li>
</ol>
</li>
</ol>
@@ -98,14 +97,13 @@
<li><a href="#konfigurationsparameter_allgemein_moasp">MOA-SP</a></li>
<li><a href="#konfigurationsparameter_allgemein_services">Externe Services</a></li>
<li><a href="#konfigurationsparameter_allgemein_sso">Single-Sign On (SSO)</a></li>
- <li><a href="#konfigurationsparameter_allgemein_stork">Secure idenTity acrOss boRders linKed (STORK)</a></li>
<li><a href="#konfigurationsparameter_allgemein_protocol">Protokolle</a>
-<ol>
- <li><a href="#konfigurationsparameter_allgemein_protocol_allowed">Protkolle aktivieren</a></li>
- <li><a href="#konfigurationsparameter_allgemein_protocol_legacy">Legacy Modus</a></li>
- <li><a href="#konfigurationsparameter_allgemein_protocol_saml1">SAML1 Konfiguration</a></li>
- <li><a href="#konfigurationsparameter_allgemein_protocol_pvp21">PVP2.1 Konfiguration </a></li>
- </ol>
+ <ol>
+ <li><a href="#konfigurationsparameter_allgemein_protocol_allowed">Protkolle aktivieren</a></li>
+ <li><a href="#konfigurationsparameter_allgemein_protocol_legacy">Legacy Modus</a></li>
+ <li><a href="#konfigurationsparameter_allgemein_protocol_saml1">SAML1 Konfiguration</a></li>
+ <li><a href="#konfigurationsparameter_allgemein_protocol_pvp21">PVP2.1 Konfiguration </a></li>
+ </ol>
</li>
<li><a href="#konfigurationsparameter_allgemein_sltransform">Security-Layer Transformationen</a></li>
<li><a href="#general_revision">Revisionssicherheit</a></li>
@@ -122,9 +120,9 @@
<li><a href="#konfigurationsparameter_oa_bku">BKU Konfiguration</a></li>
<li><a href="#konfigurationsparameter_oa_testcredentials">Test Credentials</a></li>
<li><a href="#konfigurationsparameter_oa_mandates">Vollmachten</a></li>
- <li><a href="#konfigurationsparameter_oa_szr-gw-service">SZR-Gateway Service</a></li>
+ <li><a href="#konfigurationsparameter_oa_szr-gw-service">Zentraler eIDAS Connector</a></li>
<li><a href="#konfigurationsparameter_oa_sso">Single Sign-On (SSO)</a></li>
- <li><a href="#konfigurationsparameter_oa_stork">Secure idenTity acrOss boRders linKed (STORK)</a></li>
+ <li><a href="#konfigurationsparameter_oa_stork">Authentifizierung via eIDAS</a></li>
<li><a href="#konfigurationsparameter_oa_protocol">Authentifizierungsprotokolle</a>
<ol>
<li><a href="#konfigurationsparameter_oa_protocol_saml1">SAML 1</a></li>
@@ -504,8 +502,8 @@ https://&lt;host&gt;:&lt;port&gt;/moa-id-auth/MonitoringServlet</pre>
</tr>
</table>
<p>&nbsp;</p>
-<h6><a name="basisconfig_moa_id_auth_param_services_foreign" id="uebersicht_bekanntmachung8"></a>2.2.2.2.3 Foreign Identities</h6>
-<p>MOA-ID-Auth bietet die M&ouml;glichkeit der Nutzung von ausl&auml;ndischen Karten oder die Anmeldung ausl&auml;ndischer Personen mittels STORK. Hierf&uuml;r ist eine Verbindung zum Stammzahlenregister-Gateway n&ouml;tig, das einen entsprechenden Zugang zum Stammzahlenregister bereitstellt. F&uuml;r diesen Zugriff muss das Client-Zertifikat f&uuml;r die SSL-Verbindung zum Gateway angegeben werden. Voraussetzung daf&uuml;r ist ein Zertifikat von A-Trust bzw. A-CERT mit Verwaltungseigenschaft oder Dienstleistereigenschaft. Wenn ihr MOA-ID-Auth Zertifikat diese Voraussetzung erf&uuml;llt, k&ouml;nnen Sie dieses hier angeben.</p>
+<h6><a name="basisconfig_moa_id_auth_param_services_foreign" id="uebersicht_bekanntmachung8"></a>2.2.2.2.3 Zentraler eIDAS Knoten</h6>
+<p>MOA-ID-Auth bietet die M&ouml;glichkeit die Anmeldung ausl&auml;ndischer Personen mittels eIDAS. Hierf&uuml;r ist eine Verbindung zum &ouml;sterreichischen zentralen eIDAS Knoten notwendig. F&uuml;r diesen Zugriff muss der Zugriff auf den zentralen eIDAS Knoten wie unten angegeben konfiguriert werden. Der Zugriff auf den zentralen eIDAS Knoten erfolgt via PVP2 S-Profil wobei das Signaturzertifikat f&uuml;r die PVP2 Metadaten beim Betreiber des zentralen eIDAS Knoten registriert werden muss.</p>
<table class="configtable">
<tr>
<th>Name</th>
@@ -513,19 +511,55 @@ https://&lt;host&gt;:&lt;port&gt;/moa-id-auth/MonitoringServlet</pre>
<th>Beschreibung</th>
</tr>
<tr>
- <td>service.foreignidentities.clientKeyStore</td>
+ <td>modules.eidascentralauth.keystore.path</td>
<td>keys/szrgw.p12</td>
- <td>Dateiname des PKCS#12 Keystores, relativ zur MOA-ID Konfigurationsdatei. Diesem Keystore wird der private Schl&uuml;ssel f&uuml;r die TLS-Client-Authentisierung entnommen.</td>
+ <td>Dateiname des Java Keystore oder PKCS12 Keystore zur Signierung von PVP 2.1 spezifischen Inhalten. (PVP 2.1 Metadaten, PVP 2.1 Assertion)</td>
</tr>
<tr>
- <td>service.foreignidentities.clientKeyStorePassword</td>
+ <td>modules.eidascentralauth.keystore.password</td>
<td>pass1234</td>
<td>Passwort zum Keystore</td>
</tr>
<tr>
- <td>service.foreignidentities.acceptedServerCertificates</td>
- <td>certs/szrgw-server/</td>
- <td>Hier kann ein Verzeichnisname (relativ zur MOA-ID Konfigurationsdatei) angegeben werden, in dem die akzeptierten Zertifikate der TLS-Verbindung hinterlegt sind. In diesem Verzeichnis werden nur Serverzertifikate abgelegt. Fehlt dieser Parameter wird lediglich &uuml;berpr&uuml;ft ob ein Zertifikatspfad zu den im Element &lt;TrustedCACertificates&gt; (siehe <a href="#konfigurationsparameter_allgemein_certvalidation">Kapitel 3.1.4</a>) angegebenen Zertifikaten erstellt werden kann.</td>
+ <td>modules.eidascentralauth.metadata.sign.alias</td>
+ <td>&nbsp;</td>
+ <td>Name des Schl&uuml;ssels der zur Signierung der PVP 2.1 Metadaten des eIDAS Authentifizierungsmoduls</td>
+ </tr>
+ <tr>
+ <td>modules.eidascentralauth.metadata.sign.password</td>
+ <td>&nbsp;</td>
+ <td>Passwort des Schl&uuml;ssels der zur Signierung der PVP 2.1 Metadaten des eIDAS Authentifizierungsmoduls</td>
+ </tr>
+ <tr>
+ <td>modules.eidascentralauth.request.sign.alias</td>
+ <td>&nbsp;</td>
+ <td>Name des Schl&uuml;ssels mit dem der PVP 2.1 Authn. Request durch MOA-ID-Auth unterschieben wird</td>
+ </tr>
+ <tr>
+ <td>modules.eidascentralauth.request.sign.password</td>
+ <td>&nbsp;</td>
+ <td>Passwort des Schl&uuml;ssels mit dem der PVP 2.1 Authn. Request durch MOA-ID-Auth unterschieben wird</td>
+ </tr>
+ <tr>
+ <td>modules.eidascentralauth.response.encryption.alias</td>
+ <td>&nbsp;</td>
+ <td>Name des Schl&uuml;ssels mit dem die PVP 2.1 Assertion f&uuml;r MOA-ID-Auth verschl&uuml;sselt werden soll</td>
+ </tr>
+ <tr>
+ <td>modules.eidascentralauth.response.encryption.password</td>
+ <td>&nbsp;</td>
+ <td>Passwort des Schl&uuml;ssels mit dem PVP 2.1 Assertion f&uuml;r MOA-ID-Auth verschl&uuml;sselt werden soll</td>
+ </tr>
+ <tr>
+ <td>modules.eidascentralauth.node.trustprofileID</td>
+ <td>&nbsp;</td>
+ <td>MOA-SP TrustProfil welches die vertrauensw&uuml;rdigen Zertifikate zur Validierung der Metadaten des zentralen eIDAS Knoten beinhaltet</td>
+ </tr>
+ <tr>
+ <td>modules.eidascentralauth.required.additional.attributes.x</td>
+ <td>&nbsp;</td>
+ <td><p><strong>Optional:</strong> zus&auml;tzliche Attribute welche vom zentralen eIDAS Knoten angefordert werden</p>
+ <p>Attribute werden entspechend PVP2 Attribute-Profil angegeben. Beispiele f&uuml;r die Konfiguration finden Sie in der Beispielkonfiguration</p></td>
</tr>
</table>
<p>&nbsp;</p>
@@ -911,38 +945,6 @@ https://&lt;host&gt;:&lt;port&gt;/moa-id-auth/MonitoringServlet</pre>
</table>
<p>&nbsp;</p>
<p><strong>Hinweis:</strong> Detaillierte Informationen zu den einzelnen PVP spezifischen Konfigurationsparametern finden Sie in der entsprechenden PVP Spezifikation.</p>
- <h5><a name="basisconfig_moaid_stork2" id="uebersicht_bekanntmachung17"></a>2.2.2.6 STORK 2</h5>
- <p>Dieses Abschnitt beschreibt Konfigurationswerte welche nur f&uuml;r den <strong>Testbetrieb von STORK 2</strong> erforderlich sind.</p>
- <table class="configtable">
- <tr>
- <th>Name</th>
- <th>Beispielwert</th>
- <th>Beschreibung</th>
- </tr>
- <tr>
- <td>stork.fakeIdL.active</td>
- <td>true / false</td>
- <td><p>Im Produktivbetrieb ist eine Anmeldung nur f&uuml;r jene L&auml;nder mittels STORK 2 m&ouml;glich welche in der <em>Gleichwertigkeitsverordnung</em> aufgelistet sind. Um einen Testbetrieb mit weiteren L&auml;ndern zu erm&ouml;glichen bietet das Modul MOA-ID-Auth die M&ouml;glichkeit zur Ausstellung eines Fake-Identititlink, welcher im Testbetrieb f&uuml;r die Anmeldung an einer &ouml;sterreichischen Test Online Applikation verwendet werden kann.</p>
- <p><strong>Hinweis:</strong> Diese Funktion ist standardm&auml;&szlig;ig <strong>deaktiviert</strong>. Eine Aktivierung ist nur im Testbetrieb f&uuml;r STORK 2 empfohlen.</p></td>
- </tr>
- <tr>
- <td>stork.fakeIdL.countries</td>
- <td>DE,CH</td>
- <td>K&uuml;rzel jener L&auml;nder f&uuml;r welche ein Fake-Identitilink ausgestellt werden soll.</td>
- </tr>
- <tr>
- <td>stork.fakeIdL.keygroup</td>
- <td>IDL_signing</td>
- <td>MOA-SS Schl&uuml;sselgruppe, welche f&uuml;r die Signatur des Fake-Identitilinks verwendet werden soll.</td>
- </tr>
- <tr>
- <td>stork.documentservice.url</td>
- <td>http://testvidp.buergerkarte.at/<br>
- DocumentService/DocumentService?wsdl</td>
- <td>URL zum STORK 2 Dokumentenservice</td>
- </tr>
- </table>
- <p>&nbsp;</p>
<h3><a name="uebersicht_logging" id="uebersicht_logging"></a>2.3 Konfiguration des Loggings</h3>
<p>Die Module MOA-ID-Auth und MOA-ID-Configuration verwendet als Framework f&uuml;r Logging-Information die Open Source Software <code>log4j</code>. Die Konfiguration der Logging-Information erfolgt nicht direkt durch die einzelnen Module, sondern &uuml;ber eine eigene Konfigurationsdatei, die der <span class="term">Java Virtual Machine</span> durch eine <span class="term">System Property </span> mitgeteilt wird. Der Name der <span class="term">System Property </span> lautet <code>log4j.configuration</code>; als Wert der <span class="term">System Property </span> ist eine URL anzugeben, die auf die <code>log4j</code>-Konfigurationsdatei verweist, z.B. </p>
<pre>log4j.configuration=file:/C:/Programme/apache/tomcat-8.x.x/conf/moa-id/log4j.properties</pre>
@@ -953,99 +955,8 @@ https://&lt;host&gt;:&lt;port&gt;/moa-id-auth/MonitoringServlet</pre>
<p>Weitere Informationen zur Konfiguration des Loggings erhalten Sie in <a href="../install/install.html#webservice_basisinstallation_logging">Abschnitt 2.1.3</a> des Installationshandbuchs.
</p>
<p></p>
-<h3><a name="uebersicht_samlengine" id="uebersicht_samlengine"></a>2.4 Konfiguration des SamlEngines</h3>
-<p>F&uuml;r die Untest&uuml;tzung des STORK2 Protokols verwendet MOA-ID eine zus&auml;tzliche Bibliothek, die &uuml;ber gesonderte Dateien konfiguriert wird. Diese Dateien sind unter einem Verzeichnis gespeichert, das sich &uuml;blicherweise im MOA-ID-Auth Konfigurationsverzeichnis befindet. Der Name der <span class="term">System Property </span> lautet <code>eu.stork.samlengine.config.location</code>; als Wert der <span class="term">System Property </span> ist das Verzeichnis anzugeben, wo die entsprechende SamlEngine Konfigurationsdateien gespeichert werden, z.B. </p>
-<pre>eu.stork.samlengine.config.location=file:/C:/Programme/apache/tomcat-8.x.x/conf/moa-id/conf/moa-id/stork</pre>
-<p>Dieses Verzeichnis muss mindestens folgende Dateien enthalten:</p>
-<table class="configtable">
- <tr>
- <th>Datei</th>
- <th>Beschreibung</th>
- </tr>
- <tr>
- <td>SamlEngine.xml</td>
- <td>Die Hauptdatei, in welcher die Konfigurationen von verschiedenen Instanzen des SamlEngines angegeben werden.</td>
- </tr>
- <tr>
- <td>StorkSamlEngine_<span class="term">XXX</span>.xml</td>
- <td>Enth&auml;lt allgemeine Konfigurationsparametern einer spezifischen Instanz des SamlEngines.</td>
- </tr> <tr>
- <td>SignModule_<span class="term">XXX</span>.xml</td>
- <td>Enth&auml;lt Konfigurationsparametern f&uuml;r Trust- und Keystore einer spezifischen Instanz des SamlEngines.</td>
- </tr>
-</table>
-<p></p>
-<p>In der Hauptkonfigurations-Datei (<span class="term">SamlEngine.xml</span>) verweist auf alle Konfigurationsdateien f&uuml;r sie SamlEngine, welche f&uuml;r unterschiedliche Anwendungsszenarien verwendet werden k&ouml;nnen. Die Beispielkonfiguration dieser Datei sieht wie folgendes:
-</p>
-<pre>
-&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
-&lt;instances&gt;
- &lt;!-- Configuration name--&gt;
- &lt;instance name=&quot;<span class="strongerterm">VIDP</span>&quot;&gt;
- &lt;!-- Configurations parameters StorkSamlEngine --&gt;
- &lt;configuration name=&quot;SamlEngineConf&quot;&gt;
- &lt;parameter name=&quot;fileConfiguration&quot; value=&quot;StorkSamlEngine_<span class="strongerterm">VIDP</span>.xml&quot; /&gt;
- &lt;/configuration&gt;
-
- &lt;!-- Settings module signature--&gt;
- &lt;configuration name=&quot;SignatureConf&quot;&gt;
- &lt;!-- Specific signature module --&gt;
- &lt;parameter name=&quot;class&quot; value=&quot;eu.stork.peps.auth.engine.core.impl.SignSW&quot; /&gt;
- &lt;!-- Settings specific module --&gt;
- &lt;parameter name=&quot;fileConfiguration&quot; value=&quot;SignModule_<span class="strongerterm">VIDP</span>.xml&quot; /&gt;
- &lt;/configuration&gt;
- &lt;/instance&gt;
-&lt;/instances&gt;
-</pre>
-<p>In diesem Beispiel ist nur eine Instanz <em>VIDP</em> definiert deren spezifischen Parametern in zwei Konfigurationsdateien aufgeteilt werden.</p>
-<p>Die Datei <span class="strongerterm">StorkSamlEngine_VIDP.xml</span> enth&auml;lt STORK-spezifische Parameter, die im Normalbetrieb nicht ge&auml;ndert werden m&uuml;ssen. Die zweite Datei, <span class="strongerterm">SignModule_VIDP.xml</span>, definiert den von der SamlEngine verwendeten Trust- und Keystore. Die Beispielkonfiguration dieser Datei sieht wie folgendes:</p>
-<pre>
-&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
-&lt;!DOCTYPE properties SYSTEM &quot;http://java.sun.com/dtd/properties.dtd&quot;&gt;
-
-&lt;properties&gt;
- &lt;comment&gt;SWModule sign with JKS.&lt;/comment&gt;
- &lt;entry key=&quot;keystorePath&quot;&gt;C:/Programme/apache/tomcat-4.1.30/conf/moa-id/keys/storkDemoKeys.jks&lt;/entry&gt;
- &lt;entry key=&quot;keyStorePassword&quot;&gt;local-demo&lt;/entry&gt;
- &lt;entry key=&quot;keyPassword&quot;&gt;<span class="strongerterm">XXX</span>&lt;/entry&gt;
- &lt;entry key=&quot;issuer&quot;&gt;C=AT, L=Graz, OU=Institute for Applied Information Processing and Communications&lt;/entry&gt;
- &lt;entry key=&quot;serialNumber&quot;&gt;123AA2CDB1123&lt;/entry&gt;
- &lt;entry key=&quot;keystoreType&quot;&gt;JKS&lt;/entry&gt;
-&lt;/properties&gt;
-</pre>
-<p>Diese Parameter m&uuml;ssen bei der Installation angepasst werden, um die Zugriff an Keystore und die Schl&uuml;ssel zu erm&ouml;glichen. Die einzelne Parameter werden in folgender Tabelle erl&auml;utert:</p>
-<table class="configtable">
- <tr>
- <th>Name</th>
- <th>Beschreibung</th>
- </tr>
- <tr>
- <td>keystorePath</td>
- <td>Keystore mit Schl&uuml;ssel und Zertifikaten welche f&uuml;r das Signieren und Verschl&uuml;sseln von STORK Nachrichten verwendet werden sollen. </td>
- </tr>
- <tr>
- <td>keyStorePassword</td>
- <td>Passwort des Keystores. Keystore soll den Schl&uuml;ssel f&uuml;r das Signieren von Nachrichten enthalten, ebenso wie die vertrauensw&uuml;rdige Zertifikate von anderen Parteien, wie z.B. ausl&auml;ndische PEPSes. </td>
- </tr>
- <tr>
- <td>keyPassword</td>
- <td>Password des Schl&uuml;ssels, der f&uuml;r das Signieren der STORK Nachrichten verwendet werden soll.</td>
- </tr>
- <tr>
- <td>issuer</td>
- <td>Issuer des Keypairs, der f&uuml;r das Signieren der STORK Nachrichten verwendet werden soll.</td>
- </tr>
- <tr>
- <td>serialNumber</td>
- <td>Nummer des Keypairs, der f&uuml;r das Signieren der STORK Nachrichten verwendet werden soll.</td>
- </tr>
- <tr>
- <td>keystoreType</td>
- <td>Typ und Format des Keystores. <span class="term">JKS</span> steht f&uuml;r <span class="term">Java Key Store</span>.</td>
- </tr>
-</table>
-<h2><a name="konfigurationsparameter"></a>3 Konfiguration MOA-ID-Auth</h2>
- <p>Dieser Abschnitt beschreibt die Konfiguration des Modules MOA-ID-Auth mithilfe der durch das Modul MOA-ID-Configuration zur Verf&uuml;gung gestellten Web-Oberfl&auml;che. Hierzu muss das Konfigurationstool (Module MOA-ID-Konfiguration) bereits installiert und konfiguriert sein (siehe <a href="#uebersicht_zentraledatei_aktualisierung">Kapitel 2.1</a>). Nach erfolgreichem Login am Konfigurationstool kann das Modul MOA-ID-Auth &uuml;ber die Web-Oberfl&auml;che konfiguriert werden.</p>
+<h3><a name="uebersicht_samlengine" id="uebersicht_samlengine"></a>3 Konfiguration MOA-ID-Auth</h3>
+<p>Dieser Abschnitt beschreibt die Konfiguration des Modules MOA-ID-Auth mithilfe der durch das Modul MOA-ID-Configuration zur Verf&uuml;gung gestellten Web-Oberfl&auml;che. Hierzu muss das Konfigurationstool (Module MOA-ID-Konfiguration) bereits installiert und konfiguriert sein (siehe <a href="#uebersicht_zentraledatei_aktualisierung">Kapitel 2.1</a>). Nach erfolgreichem Login am Konfigurationstool kann das Modul MOA-ID-Auth &uuml;ber die Web-Oberfl&auml;che konfiguriert werden.</p>
<p>Die Konfiguration von MOA-ID-Auth ist in zwei Teilbereiche unterteilet. Diese behandeln die Allgemeine Konfiguration der MOA-ID-Auth Instanz und die Konfiguration von Online-Applikationen (Service Providern) welche dieser MOA-ID-Auth Instanz zugeordnet sind.</p>
<h3><a name="konfigurationsparameter_allgemein" id="konfigurationsparameter_allgemein"></a>3.1
Allgemeine Konfiguration</h3>
@@ -1212,9 +1123,9 @@ https://&lt;host&gt;:&lt;port&gt;/moa-id-auth/MonitoringServlet</pre>
<p>Hiermit werden die URLs zum Online-Vollmachten Service und zum SZR-Gateway konfiguriert. Die Konfiguration der f&uuml;r den Zugriff ben&ouml;tigen Client-Zertifikate wurden bereits im Abschnitt <a href="#basisconfig_moa_id_auth_param_services">2.2.2.2</a> behandelt.</p>
<table class="configtable">
<tr>
- <th>Name</th>
- <th>Beispielwert</th>
- <th>Beschreibung</th>
+ <th width="10%">Name</th>
+ <th width="23%">Beispielwert</th>
+ <th width="67%">Beschreibung</th>
</tr>
<tr>
<td><span id="wwlbl_loadGeneralConfig_moaconfig_mandateURL">Online-Vollmachten Service (CSV)</span></td>
@@ -1229,16 +1140,15 @@ https://&lt;host&gt;:&lt;port&gt;/moa-id-auth/MonitoringServlet</pre>
<p><strong>Hinweis:</strong> Erfolgt in der Online Applikation keine konkrete Auswahl wird Standardm&auml;&szlig;ig <strong>das erste eingetragen Service</strong> verwendet.</p></td>
</tr>
<tr>
- <td>SZR-Gateway Service (CSV)</td>
- <td>https://szrgw.egiz.gv.at:8443/szr-gateway_2.0/services/IdentityLinkCreation</td>
- <td><p>URL(s) zum Stammzahlen-Register Gateway</p>
- <p><strong>Hinweis:</strong> Der SZR-Gateway Service welcher in der MOA-ID 1.5.1 Konfiguration verwendet wurde ist nicht mehr kompatibel zu MOA-ID 2.0. Das aktualisierte Test SZR-Gateway Service f&uuml;r MOA-ID 2.x steht unter folgender URL zur Verf&uuml;gung. <em>https://szrgw.egiz.gv.at:8443/szr-gateway_2.0/services/IdentityLinkCreation</em></p>
+ <td>Zentraler nationaler eIDAS Connector (CSV)</td>
+ <td>https://vidp.gv.at.at/ms_connector/pvp/metadata</td>
+ <td><p>URL(s) zum zentralen nationalen eIDAS Connector</p>
<ul>
- <li>Produktivsystem: <a href="https://vollmachten.stammzahlenregister.gv.at/mis/MandateIssueRequest">https://szrgw.egiz.gv.at/services_2.0/IdentityLinkCreation</a></li>
- <li>Testsystem: <a href="https://vollmachten.egiz.gv.at/mis-test/MandateIssueRequest">https://szrgw.egiz.gv.at:8443/services_2.0/IdentityLinkCreation</a></li>
+ <li>Produktivsystem: </li>
+ <li>Testsystem: <a href="https://vollmachten.egiz.gv.at/mis-test/MandateIssueRequest">https://vidp.gv.at.at/ms_connector/pvp/metadata</a></li>
</ul>
- <p><strong>Hinweis:</strong> Die URLs auf die unterschiedlichen Instanzen des SZR-Gateway Services k&ouml;nnen auch als Comma Separatet Value (CSV) eingetragen werden. Bei CSV werden die einzelnen URLs durch Beistrich (',') getrennt. Sind mehrere URLs hinterlegt kann das zu verwendeten Service je Online Applikation konfiguriert werden (siehe <a href="#konfigurationsparameter_oa_mandates">Kapitel 3.2.4</a>).<br>
- (z.B.: <a href="https://vollmachten.stammzahlenregister.gv.at/mis/MandateIssueRequest">https://szrgw.egiz.gv.at/services_2.0/IdentityLinkCreation</a>,<a href="https://vollmachten.egiz.gv.at/mis-test/MandateIssueRequest">https://szrgw.egiz.gv.at:8443/services_2.0/IdentityLinkCreation</a>)</p>
+ <p><strong>Hinweis:</strong> Die URLs auf die unterschiedlichen Instanzen des zentralen eIDAS Connectos k&ouml;nnen auch als Comma Separatet Value (CSV) eingetragen werden. Bei CSV werden die einzelnen URLs durch Beistrich (',') getrennt. Sind mehrere URLs hinterlegt kann das zu verwendeten Service je Online Applikation konfiguriert werden (siehe <a href="#konfigurationsparameter_oa_mandates">Kapitel 3.2.4</a>).<br>
+ (z.B.: <a href="https://vollmachten.egiz.gv.at/mis-test/MandateIssueRequest">https://vidp.gv.at.at/ms_connector/pvp/metadata</a><a href="https://vollmachten.stammzahlenregister.gv.at/mis/MandateIssueRequest"></a>,<a href="https://vollmachten.egiz.gv.at/mis-test/MandateIssueRequest">https://eid.gv.at/ms_connector/pvp/metadata</a>)</p>
<p><strong>Hinweis:</strong> Erfolgt in der Online Applikation keine konkrete Auswahl wird Standardm&auml;&szlig;ig <strong>das erste eingetragen Service</strong> verwendet.</p></td>
</tr>
<tr>
@@ -1308,166 +1218,6 @@ https://&lt;host&gt;:&lt;port&gt;/moa-id-auth/MonitoringServlet</pre>
<p><em>Ich Max Mustermann, geboren am 01.01.1978 stimme am 05.02.2014 um 10:35 einer Anmeldung mittels Single Sign-On zu.</em></p></td>
</tr>
</table>
-<h4><a name="konfigurationsparameter_allgemein_stork" id="konfigurationsparameter_allgemein_bku8"></a>3.1.8 Secure idenTity acrOss boRders linKed (STORK)</h4>
-<p>Hierbei werden allgemeine Parameter f&uuml;r STORK Protokoll konfiguriert.</p>
-<table class="configtable">
- <tr>
- <th>Name</th>
- <th>Beispielwerte</th>
- <th>Beschreibung</th>
- </tr>
- <tr>
- <td>Standard QAA-Level</td>
- <td>4</td>
- <td>QAA <span class="term">(Attribute Quality Authentication Assurance)</span> stellt Mindestanforderung von QAA fest. </td>
- </tr>
- <tr>
- <td>Country Code</td>
- <td>ES</td>
- <td>Der zweistelligen Code vom unterst&uuml;tzten PEPS-Staat.</td>
- </tr>
- <tr>
- <td>PEPS URL</td>
- <td>https://prespanishpeps.redsara.es/PEPS/ColleagueRequest</td>
- <td>Die Adresse von PEPS eines unterst&uuml;tzten PEPS-Staat.</td>
- </tr>
- <tr>
- <td>Attributname</td>
- <td>eIdentifier</td>
- <td>Der Name des unterst&uuml;tzten Attributes. Die als <span class="term">zwingend</span> markierte Attribute m&uuml;ssen im Response von dem gegenstehendem PEPS enthalten sein. Jedes Attribut wird gesondert eingetragen. <br/>Die Liste von vorhandenen und unterst&uuml;tzen Attributes ist in Konfigurationsdatei von SamlEngine <span class="term">(StorkSamlEngine_XXX.xml)</span> vorhanden. </td>
- </tr>
-</table>
-<p>&nbsp;</p>
-<p>Folgende PEPS URLs stehen aktuell zur Verf&uuml;gung:</p>
-<table class="configtable">
- <tr>
- <th>L&auml;ndercode</th>
- <th>TestInstanz</th>
- <th>URL</th>
- </tr>
- <tr>
- <td>AT </td>
- <td align="center">X</td>
- <td><a href="https://testvidp.buergerkarte.at/moa-id-auth/stork2/SendPEPSAuthnRequest">https://testvidp.buergerkarte.at/moa-id-auth/stork2/SendPEPSAuthnRequest</a></td>
- </tr>
- <tr>
- <td>EE </td>
- <td align="center">X</td>
- <td><a href="https://testpeps.sk.ee/PEPS/ColleagueRequest">https://testpeps.sk.ee/PEPS/ColleagueRequest</a></td>
- </tr>
- <tr>
- <td>EE </td>
- <td align="center">&nbsp;</td>
- <td><a href="https://peps.sk.ee/PEPS/ColleagueRequest">https://peps.sk.ee/PEPS/ColleagueRequest</a></td>
- </tr>
- <tr>
- <td>ES </td>
- <td align="center">X</td>
- <td><a href="https://prespanishpeps.redsara.es/PEPS/ColleagueRequest">https://prespanishpeps.redsara.es/PEPS/ColleagueRequest</a></td>
- </tr>
- <tr>
- <td>IS </td>
- <td align="center">X</td>
- <td><a href="https://storktest.advania.is/PEPS/ColleagueRequest">https://storktest.advania.is/PEPS/ColleagueRequest</a></td>
- </tr>
- <tr>
- <td>IS </td>
- <td align="center">&nbsp;</td>
- <td><a href="https://peps.island.is/PEPS/ColleagueRequest">https://peps.island.is/PEPS/ColleagueRequest</a></td>
- </tr>
- <tr>
- <td>LT </td>
- <td align="center">X</td>
- <td><a href="https://testpeps.eid.lt/PEPS/ColleagueRequest">https://testpeps.eid.lt/PEPS/ColleagueRequest</a></td>
- </tr>
- <tr>
- <td>PT</td>
- <td align="center">X</td>
- <td><a href="https://eu-id.teste.cartaodecidadao.gov.pt/PEPS/ColleagueRequest">https://eu-id.teste.cartaodecidadao.gov.pt/PEPS/ColleagueRequest</a></td>
- </tr>
- <tr>
- <td>SI</td>
- <td align="center">X</td>
- <td><a href="https://peps-test.mju.gov.si/PEPS/ColleagueRequest">https://peps-test.mju.gov.si/PEPS/ColleagueRequest</a></td>
- </tr>
-</table>
-<p>&nbsp;</p>
-<p>Folgende Attribute m&uuml;ssen jedoch mindestens angefordert werden, wobei die erforderlichen Attribute je nach Anmeldeart unterschiedlich sind. Eine Liste mit weiteren m&ouml;glichen Attribute finden Sie im Kapitel <a href="./../protocol/protocol.html#allgemeines_attribute">Protokolle</a> oder in der <a href="#referenzierte_spezifikation">STORK Spezifikation</a>.</p>
-<table class="configtable">
- <tr>
- <th>Name</th>
- <th>nat&uuml;rliche Person</th>
- <th>Anmeldung in Vertretung</th>
- <th>Beschreibung</th>
- </tr>
- <tr>
- <td>eIdentifier</td>
- <td align="center">X</td>
- <td align="center">X</td>
- <td>Eindeutiger Identifier der Person f&uuml;r die die Anmeldung erfolgt.</td>
- </tr>
- <tr>
- <td><p>givenName</p></td>
- <td align="center">X</td>
- <td align="center">X</td>
- <td>Vorname der Person f&uuml;r die die Anmeldung erfolgt.</td>
- </tr>
- <tr>
- <td><p>surname</p></td>
- <td align="center"><br>
- X</td>
- <td align="center">X</td>
- <td><p>Familienname der Person f&uuml;r die die Anmeldung erfolgt.</p></td>
- </tr>
- <tr>
- <td>dateOfBirth</td>
- <td align="center">X</td>
- <td align="center">X</td>
- <td>Geburtsdatum der Person f&uuml;r die die Anmeldung erfolgt.</td>
- </tr>
- <tr>
- <td>gender</td>
- <td align="center">X</td>
- <td align="center">X</td>
- <td>Geschlecht der Person f&uuml;r die die Anmeldung erfolgt.</td>
- </tr>
- <tr>
- <td>signedDoc</td>
- <td align="center">X</td>
- <td align="center">X</td>
- <td>Ein Dokument welches durch die Person, f&uuml;r die die Anmeldung erfolgt, signiert wurde.</td>
- </tr>
- <tr>
- <td>fiscalNumber</td>
- <td align="center">X</td>
- <td align="center">X</td>
- <td>Ein eindeutiger nationaler Identifier der Person.</td>
- </tr>
- <tr>
- <td>canonicalResidenceAddress</td>
- <td align="center">&nbsp;</td>
- <td align="center">X</td>
- <td>Adresse der Person f&uuml;r welche die Anmeldung erfolgt</td>
- </tr>
- <tr>
- <td>mandateContent</td>
- <td align="center">&nbsp;</td>
- <td align="center">X</td>
- <td>Elektronische Vollmacht, welche die Vertretungsverh&auml;ltnisse widerspiegelt.</td>
- </tr>
- <tr>
- <td>representative</td>
- <td align="center">&nbsp;</td>
- <td align="center">X</td>
- <td>Nat&uuml;rliche Person welche eine juristische oder nat&uuml;rliche Person im Rahmen einer Anmeldung mittels Vollmacht vertritt.</td>
- </tr>
- <tr>
- <td>represented</td>
- <td align="center">&nbsp;</td>
- <td align="center">X</td>
- <td>Juristische oder nat&uuml;rliche Person welche im Rahmen einer Anmeldung mittels Vollmacht vertreten wird.</td>
- </tr>
-</table>
<p></p>
<h4><a name="konfigurationsparameter_allgemein_protocol" id="konfigurationsparameter_allgemein_bku9"></a>3.1.9 Protokolle</h4>
<p>Hierbei handelt es ich um allgemeine Einstellungen zu den vom Modul MOA-ID-Auth unterst&uuml;tzen Authentifizierungsprotokollen.</p>
@@ -1826,8 +1576,8 @@ Soll die B&uuml;rgerkartenauswahl weiterhin, wie in MOA-ID 1.5.1 im Kontext der
</table>
<p>&nbsp;</p>
<p><strong>Hinweis:</strong> Werden f&uuml;r die Online-Applikation eigene Templates f&uuml;r die B&uuml;rgerkartenauswahl oder die zus&auml;tzliche Anmeldeabfrage im SSO Fall (siehe <a href="#konfigurationsparameter_oa_bku">Abschnitt 3.2.2</a>) verwendet, stehen alle Konfigurationsparameter die Einfluss auf die BKU-Auswahl haben nicht zur Verf&uuml;gung. Die Funktionalit&auml;t der entsprechenden Parameter hat jedoch weiterhin Einfluss auf den Anmeldevorgang.</p>
-<h4><a name="konfigurationsparameter_oa_szr-gw-service" id="uebersicht_zentraledatei_aktualisierung12"></a>3.2.5 SZR-Gateway Service</h4>
-<p>Dieser Abschnitt behandelt online-applikationsspezifische Einstellungen zum Stammzahlenregistergateway der &ouml;sterreichischen Datenschutzbeh&ouml;rde.</p>
+<h4><a name="konfigurationsparameter_oa_szr-gw-service" id="uebersicht_zentraledatei_aktualisierung12"></a>3.2.5 Zentraler nationaler eIDAS Connector</h4>
+<p>Dieser Abschnitt behandelt online-applikationsspezifische Einstellungen zum Ankn&uuml;pfung an den zentralen nationalen eIDAS Connector</p>
<table class="configtable">
<tr>
<th width="17%">Name</th>
@@ -1837,11 +1587,11 @@ Soll die B&uuml;rgerkartenauswahl weiterhin, wie in MOA-ID 1.5.1 im Kontext der
<th width="64%">Beschreibung</th>
</tr>
<tr>
- <td>SZR-Gateway Service URL</td>
+ <td> URL</td>
<td>&nbsp;</td>
<td align="center">&nbsp;</td>
<td align="center">&nbsp;</td>
- <td><p>Definiert das Stammzahlenregister-Gateway Service welches von dieser Online-Applikation verwendet werden soll. Hierf&uuml;r stehen all jene Auswahlm&ouml;glichkeiten zur Verf&uuml;gung welche in der Allgemeinen Konfiguration (siehe <a href="#konfigurationsparameter_allgemein_services">Kapitel 3.1.7</a>) festgelegt wurden. </p>
+ <td><p>Definiert dan zentralen nationalen eIDAS Connector welcher von dieser Online-Applikation verwendet werden soll. Hierf&uuml;r stehen all jene Auswahlm&ouml;glichkeiten zur Verf&uuml;gung welche in der Allgemeinen Konfiguration (siehe <a href="#konfigurationsparameter_allgemein_services">Kapitel 3.1.7</a>) festgelegt wurden. </p>
<p><strong>Hinweis:</strong> Wird keine spezifische Auswahl getroffen wird automatisch <strong>das Erste in der allgemeinen Konfiguration eingetragene Service</strong> verwendet.</p></td>
</tr>
</table>
@@ -1873,8 +1623,8 @@ Soll die B&uuml;rgerkartenauswahl weiterhin, wie in MOA-ID 1.5.1 im Kontext der
<p><strong>Hinweis:</strong> Diese Abfrage ist standardm&auml;&szlig;ig aktiviert und kann nur durch einen Benutzer mit der Role <em>admin</em> deaktiviert werden.</p></td>
</tr>
</table>
-<h4><a name="konfigurationsparameter_oa_stork" id="uebersicht_zentraledatei_aktualisierung23"></a>3.2.7 Secure idenTity acrOss boRders linKed (STORK)</h4>
-<p>Dieser Abschnitt behandelt Online-Applikationsspezifische Einstellungen zu STORK.</p>
+<h4><a name="konfigurationsparameter_oa_stork" id="uebersicht_zentraledatei_aktualisierung23"></a>3.2.7 Authentifizierung mittels eIDAS</h4>
+<p>Dieser Abschnitt behandelt Online-Applikationsspezifische Einstellungen zur Authentifizierung mittels eIDAS.</p>
<table class="configtable">
<tr>
<th>Name</th>
@@ -1883,30 +1633,16 @@ Soll die B&uuml;rgerkartenauswahl weiterhin, wie in MOA-ID 1.5.1 im Kontext der
<th>Beschreibung</th>
</tr>
<tr>
- <td>STORK verwenden</td>
+ <td>eIDAS verwenden</td>
<td>ja</td>
<td align="center">X</td>
- <td>Definiert ob die Online-Applikation eine Anmeldung mittels STORK unterst&uuml;tzt. Wird STORK unterst&uuml;tzt wird in w&auml;hrend der BKU-Auswahl die Option <em>Home Country Selection </em> f&uuml;r eine Anmeldung mittels STORK dargestellt.</td>
+ <td>Definiert ob die Online-Applikation eine Anmeldung mittels eIDAS unterst&uuml;tzt. Wird eIDAS unterst&uuml;tzt wird in w&auml;hrend der BKU-Auswahl die Option <em>eIDAS LogIn </em> f&uuml;r eine Anmeldung mittels eIDAS dargestellt.</td>
</tr>
<tr>
<td><p>QAA-Level</p></td>
- <td>4</td>
+ <td>high</td>
<td align="center">X</td>
- <td>Von der Online-Applikation geforderter mindest QAA-Level der Authentifizierung</td>
- </tr>
- <tr>
- <td>aktivierte Ziell&auml;nder</td>
- <td>&nbsp;</td>
- <td align="center">X</td>
- <td><p>Hier k&ouml;nnen jene STORK L&auml;nder konfiguriert werden f&uuml;r welche diese Online-Applikation eine Anmeldung mittels STORK unterst&uuml;tzt.</p>
- <p><strong>Hinweis:</strong> Die zur Auswahl stehenden L&auml;nder werden aus den <a href="#konfigurationsparameter_allgemein_stork">PEPS Konfigurationen</a> generiert, welche im allgemeinen Konfigurationsbereich hinterlegt wurden.</p></td>
- </tr>
- <tr>
- <td><p>angeforderte Attribute</p></td>
- <td>&nbsp;</td>
- <td align="center"> X</td>
- <td align="center"><p>STORK Attribute welche die Online-Applikation anfordert</p>
- <p>Bei den Attributen kann jedoch nur aus dem Set der in der allgemeinen Konfiguration hinterlegten STORK Attributen (siehe <a href="#konfigurationsparameter_allgemein_stork">Kapitel 3.1.8</a>) gew&auml;hlt werden, wobei Attribute die in der allgemeinen Konfiguration als <span class="term">zwingend</span> markiert sind immer mitgeliefert werden.</p></td>
+ <td>Von der Online-Applikation geforderter mindest LoA-Level der Authentifizierung</td>
</tr>
</table>
<p>&nbsp;</p>
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAIDEventConstants.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAIDEventConstants.java
index 2c1e47009..05d344fb6 100644
--- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAIDEventConstants.java
+++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAIDEventConstants.java
@@ -85,7 +85,13 @@ public interface MOAIDEventConstants extends EventConstants {
public static final int AUTHPROCESS_PEPS_RECEIVED = 6102;
public static final int AUTHPROCESS_PEPS_RECEIVED_ERROR = 6103;
public static final int AUTHPROCESS_PEPS_IDL_RECEIVED = 6104;
-
+
+ public static final int AUTHPROCESS_EIDAS_AT_CONNECTOR_SELECTED = 6200;
+ public static final int AUTHPROCESS_EIDAS_AT_CONNECTOR_REQUESTED = 6201;
+ public static final int AUTHPROCESS_EIDAS_AT_CONNECTOR_RECEIVED = 6202;
+ public static final int AUTHPROCESS_EIDAS_AT_CONNECTOR_RECEIVED_ERROR = 6203;
+ public static final int AUTHPROCESS_EIDAS_AT_CONNECTOR_MDS_VALID = 6204;
+
//person information
public static final int PERSONAL_INFORMATION_PROF_REPRESENTATIVE_BPK = 5000;
public static final int PERSONAL_INFORMATION_PROF_REPRESENTATIVE = 5001;
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAReversionLogger.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAReversionLogger.java
index 9894ffbe9..1c1cc4168 100644
--- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAReversionLogger.java
+++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/MOAReversionLogger.java
@@ -95,6 +95,12 @@ public class MOAReversionLogger implements IRevisionLogger {
MOAIDEventConstants.AUTHPROCESS_PEPS_RECEIVED,
MOAIDEventConstants.AUTHPROCESS_PEPS_RECEIVED_ERROR,
MOAIDEventConstants.AUTHPROCESS_PEPS_IDL_RECEIVED,
+
+ MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_MDS_VALID,
+ MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_RECEIVED,
+ MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_RECEIVED_ERROR,
+ MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_REQUESTED,
+ MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_SELECTED,
MOAIDEventConstants.AUTHPROCESS_FOREIGN_FOUND,
MOAIDEventConstants.AUTHPROCESS_FOREIGN_SZRGW_RECEIVED,
diff --git a/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/EidasCentralAuthConstants.java b/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/EidasCentralAuthConstants.java
index 55864f3c9..0f4f81122 100644
--- a/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/EidasCentralAuthConstants.java
+++ b/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/EidasCentralAuthConstants.java
@@ -55,7 +55,7 @@ public class EidasCentralAuthConstants {
public static final String CONFIG_PROPS_SIGN_SIGNING_ALIAS_PASSWORD = CONFIG_PROPS_PREFIX + "request.sign.alias";
public static final String CONFIG_PROPS_ENCRYPTION_KEY_PASSWORD = CONFIG_PROPS_PREFIX + "response.encryption.password";
public static final String CONFIG_PROPS_ENCRYPTION_ALIAS_PASSWORD = CONFIG_PROPS_PREFIX + "response.encryption.alias";
- public static final String CONFIG_PROPS_REQUIRED_PVP_ATTRIBUTES_LIST = CONFIG_PROPS_PREFIX + "required.additinal.attributes";
+ public static final String CONFIG_PROPS_REQUIRED_PVP_ATTRIBUTES_LIST = CONFIG_PROPS_PREFIX + "required.additional.attributes";
public static final String CONFIG_PROPS_NODE_ENTITYID = CONFIG_PROPS_PREFIX + "node.entityId";
public static final String CONFIG_PROPS_NODE_METADATAURL = CONFIG_PROPS_PREFIX + "node.metadataUrl";
public static final String CONFIG_PROPS_NODE_TRUSTPROFILEID = CONFIG_PROPS_PREFIX + "node.trustprofileID";
diff --git a/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/config/EidasCentralAuthRequestBuilderConfiguration.java b/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/config/EidasCentralAuthRequestBuilderConfiguration.java
index ebbe08588..8376f3aad 100644
--- a/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/config/EidasCentralAuthRequestBuilderConfiguration.java
+++ b/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/config/EidasCentralAuthRequestBuilderConfiguration.java
@@ -48,6 +48,7 @@ public class EidasCentralAuthRequestBuilderConfiguration implements IPVPAuthnReq
private String scopeRequesterId;
private String providerName;
private List<EAAFRequestedAttribute> requestedAttributes;
+ private String reqId;
/* (non-Javadoc)
@@ -186,7 +187,7 @@ public class EidasCentralAuthRequestBuilderConfiguration implements IPVPAuthnReq
*/
@Override
public String getRequestID() {
- return null;
+ return this.reqId;
}
/* (non-Javadoc)
@@ -256,6 +257,15 @@ public class EidasCentralAuthRequestBuilderConfiguration implements IPVPAuthnReq
this.requestedAttributes = requestedAttributes;
}
+ /**
+ * Set a RequestId for this Authn. Request
+ *
+ * @param reqId
+ */
+ public void setRequestId(String reqId) {
+ this.reqId = reqId;
+ }
+
diff --git a/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/CreateAuthnRequestTask.java b/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/CreateAuthnRequestTask.java
index 08ae845cb..e312299f8 100644
--- a/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/CreateAuthnRequestTask.java
+++ b/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/CreateAuthnRequestTask.java
@@ -29,6 +29,7 @@ import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import org.opensaml.common.impl.SecureRandomIdentifierGenerator;
import org.opensaml.saml2.core.Attribute;
import org.opensaml.saml2.metadata.EntityDescriptor;
import org.opensaml.saml2.metadata.provider.MetadataProviderException;
@@ -45,6 +46,7 @@ import at.gv.egiz.eaaf.modules.pvp2.api.reqattr.EAAFRequestedAttribute;
import at.gv.egiz.eaaf.modules.pvp2.impl.builder.PVPAttributeBuilder;
import at.gv.egiz.eaaf.modules.pvp2.impl.utils.SAML2Utils;
import at.gv.egiz.eaaf.modules.pvp2.sp.impl.PVPAuthnRequestBuilder;
+import at.gv.egovernment.moa.id.advancedlogging.MOAIDEventConstants;
import at.gv.egovernment.moa.id.auth.modules.eIDAScentralAuth.EidasCentralAuthConstants;
import at.gv.egovernment.moa.id.auth.modules.eIDAScentralAuth.config.EidasCentralAuthRequestBuilderConfiguration;
import at.gv.egovernment.moa.id.auth.modules.eIDAScentralAuth.utils.EidasCentralAuthCredentialProvider;
@@ -76,6 +78,8 @@ public class CreateAuthnRequestTask extends AbstractAuthServletTask {
public void execute(ExecutionContext executionContext, HttpServletRequest request, HttpServletResponse response)
throws TaskExecutionException {
try{
+ revisionsLogger.logEvent(pendingReq, MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_SELECTED);
+
//check if eIDAS authentication is enabled for this SP
if (!Boolean.parseBoolean(pendingReq.getServiceProviderConfiguration().getConfigurationValue(MOAIDConfigurationConstants.SERVICE_AUTH_STORK_ENABLED, String.valueOf(false)))) {
Logger.info("eIDAS authentication is NOT enabled for OA: " + pendingReq.getServiceProviderConfiguration().getUniqueIdentifier());
@@ -114,6 +118,8 @@ public class CreateAuthnRequestTask extends AbstractAuthServletTask {
//setup AuthnRequestBuilder configuration
EidasCentralAuthRequestBuilderConfiguration authnReqConfig = new EidasCentralAuthRequestBuilderConfiguration();
+ SecureRandomIdentifierGenerator gen = new SecureRandomIdentifierGenerator();
+ authnReqConfig.setRequestId(gen.generateIdentifier());
authnReqConfig.setIdpEntity(entityDesc);
authnReqConfig.setPassive(false);
authnReqConfig.setSignCred(credential.getIDPAssertionSigningCredential());
@@ -130,6 +136,10 @@ public class CreateAuthnRequestTask extends AbstractAuthServletTask {
//build and transmit AuthnRequest
authnReqBuilder.buildAuthnRequest(pendingReq, authnReqConfig , response);
+ revisionsLogger.logEvent(pendingReq,
+ MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_REQUESTED,
+ authnReqConfig.getRequestID());
+
} catch (MOAIDException e) {
throw new TaskExecutionException(pendingReq, e.getMessage(), e);
diff --git a/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/ReceiveAuthnResponseTask.java b/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/ReceiveAuthnResponseTask.java
index f9686029f..214a23f88 100644
--- a/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/ReceiveAuthnResponseTask.java
+++ b/id/server/modules/moa-id-module-AT_eIDAS_connector/src/main/java/at/gv/egovernment/moa/id/auth/modules/eIDAScentralAuth/tasks/ReceiveAuthnResponseTask.java
@@ -59,7 +59,6 @@ import at.gv.egovernment.moa.id.auth.exception.BuildException;
import at.gv.egovernment.moa.id.auth.modules.eIDAScentralAuth.EidasCentralAuthConstants;
import at.gv.egovernment.moa.id.auth.modules.eIDAScentralAuth.utils.EidasCentralAuthCredentialProvider;
import at.gv.egovernment.moa.id.auth.modules.eIDAScentralAuth.utils.EidasCentralAuthMetadataProvider;
-import at.gv.egovernment.moa.id.commons.MOAIDAuthConstants;
import at.gv.egovernment.moa.id.commons.api.IOAAuthParameters;
import at.gv.egovernment.moa.id.commons.api.exceptions.ConfigurationException;
import at.gv.egovernment.moa.id.protocols.pvp2x.verification.SAMLVerificationEngineSP;
@@ -112,7 +111,7 @@ public class ReceiveAuthnResponseTask extends AbstractAuthServletTask {
msg = (InboundMessage) decoder.decode(
request, response, metadataProvider, true,
comperator);
-
+
if (MiscUtil.isEmpty(msg.getEntityID())) {
throw new InvalidProtocolRequestException("sp.pvp2.04",
new Object[] {EidasCentralAuthConstants.MODULE_NAME_FOR_LOGGING},
@@ -126,9 +125,7 @@ public class ReceiveAuthnResponseTask extends AbstractAuthServletTask {
msg.setVerified(true);
}
-
- revisionsLogger.logEvent(pendingReq, MOAIDEventConstants.AUTHPROTOCOL_PVP_REQUEST_AUTHRESPONSE);
-
+
//validate assertion
PVPSProfileResponse processedMsg = preProcessAuthResponse((PVPSProfileResponse) msg);
@@ -153,7 +150,7 @@ public class ReceiveAuthnResponseTask extends AbstractAuthServletTask {
requestStoreage.storePendingRequest(pendingReq);
//write log entries
- revisionsLogger.logEvent(pendingReq, MOAIDEventConstants.AUTHPROCESS_INTERFEDERATION_REVEIVED);
+ revisionsLogger.logEvent(pendingReq, MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_MDS_VALID);
Logger.info("Receive a valid assertion from IDP " + msg.getEntityID());
} catch (MessageDecodingException | SecurityException e) {
@@ -208,32 +205,7 @@ public class ReceiveAuthnResponseTask extends AbstractAuthServletTask {
}
}
-
- /**
- * @param executionContext
- * @param idpConfig
- * @param message
- * @param objects
- * @throws TaskExecutionException
- * @throws Throwable
- */
- private void handleAuthnResponseValidationProblem(ExecutionContext executionContext, IOAAuthParameters idpConfig, Throwable e) throws TaskExecutionException {
-
- if (idpConfig != null && idpConfig.isPerformLocalAuthenticationOnInterfederationError()) {
- Logger.info("Switch to local authentication on this IDP ... ");
-
- executionContext.put(MOAIDAuthConstants.PROCESSCONTEXT_REQUIRELOCALAUTHENTICATION, true);
- executionContext.put(MOAIDAuthConstants.PROCESSCONTEXT_PERFORM_BKUSELECTION, true);
- executionContext.remove(MOAIDAuthConstants.PROCESSCONTEXT_PERFORM_INTERFEDERATION_AUTH);
-
- } else {
- throw new TaskExecutionException(pendingReq, "PVP response validation FAILED.", e);
-
- }
-
- }
-
/**
* PreProcess AuthResponse and Assertion
* @param msg
@@ -257,11 +229,16 @@ public class ReceiveAuthnResponseTask extends AbstractAuthServletTask {
EidasCentralAuthConstants.MODULE_NAME_FOR_LOGGING);
msg.setSAMLMessage(SAML2Utils.asDOMDocument(samlResp).getDocumentElement());
+ revisionsLogger.logEvent(pendingReq,
+ MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_RECEIVED,
+ samlResp.getID());
return msg;
} else {
Logger.info("Receive StatusCode " + samlResp.getStatus().getStatusCode().getValue()
+ " from 'ms-specific eIDAS node'.");
+ revisionsLogger.logEvent(pendingReq,
+ MOAIDEventConstants.AUTHPROCESS_EIDAS_AT_CONNECTOR_RECEIVED_ERROR);
throw new AuthnResponseValidationException("sp.pvp2.05",
new Object[]{EidasCentralAuthConstants.MODULE_NAME_FOR_LOGGING, samlResp.getIssuer().getValue(), samlResp.getStatus().getStatusCode().getValue()});