<html> <head> <title>MOA ID-Administration</title> <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" /> <meta content="heinz.rosenkranz@brz.gv.at" name="author"/> <style type="text/css"> body { font-family:"Verdana", "Arial"; font-size:10pt; color:#505060; } td { font-family:"Verdana", "Arial"; font-size:10pt; color:#505060; } th { font-family:"Verdana", "Arial"; font-size:10pt; font-weight:bold; color:#d8d8d8; background:#505050} li { font-family:"Verdana", "Arial"; font-size:10pt; color:#505060; margin-top:3px } ul { font-family:"Verdana", "Arial"; font-size:10pt; color:#505060; margin-top:3px } tt { font-size:9pt; color:#505060; } #titel { font-family:"Verdana", "Arial"; font-size:18pt; color:#505060; } #subtitel { font-family:"Verdana", "Arial"; font-size:12pt; color:#505060; font-weight:bold; } #slogan { font-family:"Verdana", "Arial"; font-size:8pt; color:#808090; text-align:justify; width:160px } #block { font-family:"Verdana", "Arial"; font-size:10pt; color:#505060; text-align:justify } #klein { font-family:"Verdana", "Arial"; font-size:9pt; color:#505060; margin-top:3px } #info { font-family:"Verdana", "Arial"; font-size:8pt; color:#505060; padding:3px; border:solid 1px #c0c0c0 } #infolist { font-family:"Verdana", "Arial"; font-size:8pt; color:#505060; } a:link {color:#000090} a:visited {color:#000090} a:hover {color:#c03030} a {text-decoration: none} </style> <script language="JavaScript"> <!-- function goWin(url) { Fenster=window.open(url,"smallWin","toolbar=0,location=0,directories=0,status=0,menubar=0,resizable=yes,scrollbars=yes,width=500,height=480,top=20,screenY=0,left=20,screenX=0"); window.setTimeout("showWin()",300); } function showWin() { Fenster.focus(); } // --> </script> </head> <body bgcolor="#FFFFFF" > <div style="width:650px"> <!-- Projekt-Logo --> <div style="height:42px; font-size:16pt; color:#b0b8c0; background:#003050">  Module für Online-Applikationen </div> <div style="margin-left:8px; margin-top:3px; font-size:8pt; color:#707070; "> <!-- Development Center der BRZ GmbH, A-Trust und IAIK Graz -->  </div> <div style="margin-top:-65px; text-align:right; font-size:8pt; font-weight:bold; color:#d04040;" > Projekt <span style="font-size:48pt; ">moa</span>  </div> <br /> <!-- First Section with Navigation --> <table width="650" border="0" cellpadding="10" cellspacing="0"> <tr> <td width="170" valign="top"> <div style="font-weight:bold; margin-top:12px">MOA-ID</div><br /> <div id="klein"><a href="id-admin.htm"><img src="../moa_images/idle.gif" border="0" width="13" height="14" /> <b> übersicht</b></a></div> <div id="klein"><a href="id-admin_1.htm"><img src="../moa_images/idle.gif" border="0" width="13" height="14" /> <b> Basis-Installation</b></a></div> <div id="klein"><img src="../moa_images/select.gif" border="0" width="13" height="14" /> <b> Konfiguration </b></div> <div id="klein"><a href="id-admin_3.htm"><img src="../moa_images/idle.gif" border="0" width="13" height="14" /> <b> Optionale<br />    Komponenten</b></a></div> <br /> <div id="klein"><a href="moa.htm"><img src="../moa_images/west.gif" border="0" width="13" height="14" /> <b> Zurück</b></a></div> <br /><br /> <div id="slogan"> <a href="#moaid-konfiguration"><b>Konfiguration<br />von MOA-ID</b></a> <br /><br /> <a href="examples/conf/MOA-ID-Configuration.xml" target="_new">Konfigurationsdatei</a> <br /><br /> <b>Parameter-übersicht</b><br /> <a href="#ConnectionParameter">ConnectionParameter</a><br /> <a href="#AuthComponent">AuthComponent</a><br /> <a href="#BKUSelection" > BKUSelection</a><br /> <a href="#SecurityLayer"> SecurityLayer</a><br /> <a href="#MOA-SP"> MOA-SP</a><br /> <a href="#IdentityLinkSigners"> IdentityLinkSigners</a><br /> <a href="#ProxyComponent">ProxyComponent</a><br /> <a href="#OnlineApplication">OnlineApplication</a><br /> <a href="#OnlineApplication/AuthComponent"> AuthComponent</a><br /> <a href="#OnlineApplication/ProxyComponent"> ProxyComponent</a><br /> <a href="#ChainingModes">ChainingModes</a><br /> <a href="#TrustedCACertificates">TrustedCACertificates</a><br /> <a href="#GenericConfiguration">GenericConfiguration</a><br /> <br /> <a href="#oa-config"><b>Konfiguration<br />der Online-Applikation</b></a><br /> <br /> <b>Parameter-übersicht</b><br /> <a href="#LoginType">LoginType</a><br /> <a href="#ParamAuth">ParamAuth</a><br /> <a href="#Parameter"> ParamAuth/Parameter</a><br /> <a href="#BasicAuth">BasicAuth</a><br /> <a href="#HeaderAuth">HeaderAuth</a><br /> <a href="#Header"> HeaderAuth/Header</a><br /> <br /> <a href="#sp-config"><b>Konfiguration<br />von MOA-SP</b></a><br /> <br /> <a href="#verifytransformsInfoProfile">VerifyTransformsInfoProfile</a><br /> <a href="#trustProfile">TrustProfile</a><br /> <a href="#certstore">Certstore</a><br /> <br /> <a href="#online-config"><b>änderung der Konfig. <br />während des Betriebs</b></a><br /> <br /> </div> </td> <td valign="top"> <div id="titel">Konfiguration von MOA ID v.1.3</div> <div id="moaid-konfiguration" /> <p id="subtitel">Konfiguration von MOA ID v.1.3</p> <p id="block"> Die Konfiguration von MOA ID wird mittels einer XML-basierten Konfigurationsdatei, die dem Schema <a href="../MOA-ID-Configuration-1.3.xsd" target="_new">MOA-ID-Configuration-1.3.xsd</a> entspricht, durchgeführt. <p /> Der Ort der Konfigurationsdatei wird im Abschnitt <a href="id-admin_1.htm#deployment">Deployment der Web-Applikation in Tomcat</a> beschrieben. <p /> Die folgenden Abschnitte erläutern das Format der Konfigurationsdatei. <a href="examples/conf/MOA-ID-Configuration.xml" target="_new">MOA-ID-Configuration.xml</a> zeigt ein Beispiel für eine umfassende Konfigurationsdatei. </p> <p>Enthält die Konfigurationsdatei relative Pfadangaben, werden diese relativ zum Verzeichnis, in dem sich die MOA-ID Konfigurationsdatei befindet, interpretiert.<br> </p> <div id="ConnectionParameter" /> <p id="block"> <b>ConnectionParameter</b> <br /> Das Element <tt>ConnectionParameter</tt> enthält Parameter, die MOA-ID für den Aufbau von Verbindungen zu anderen Komponenten benötigt. Dieses Element tritt mehrfach in der Konfigurationsdatei auf und wird daher vorab detailliert beschrieben. <br /> <br /> Das Attribut <tt>URL</tt> enthält die URL der Komponente zu der die Verbindung aufgebaut werden soll. Wird das Schema <tt>https</tt> verwendet, können die Kind-Elemente <tt>AcceptedServerCertificates</tt> und <tt>ClientKeyStore</tt> angegeben werden. Wird das Schema <tt>http</tt> verwendet müssen keine Kind-Elemente angegeben werden bzw. werden diese nicht ausgewertet. Andere Schemas werden nicht unterstützt. <br /> <br /> Wird die Verbindung über TLS aufgebaut und erfordert der TLS-Server eine Client-Authentisierung mittels Zertifikate, dann muss das Kind-Element <tt>ClientKeyStore</tt> spezifiziert werden. Im Element <tt>ClientKeyStore</tt> wird der Filename des PKCS#12-Keys (relativ zur MOA-ID Konfigurationsdatei) angegeben. Diesem Keystore wird der private Schlüssel für die TLS-Client-Authentisierung entnommen. Das Passwort zum Lesen des privaten Schlüssels wird im Attribut <tt>ClientKeyStore/@password</tt> konfiguriert.<br /> Aufgrund der Tatsache, dass starke Verschlüsselung eine Voraussetzung für MOA-ID darstellt, werden clientseitig nur die folgenden Cipher Suites unterstützt:<br/> <ul> <li><tt>SSL_RSA_WITH_RC4_128_SHA</tt></li> <li><tt>SSL_RSA_WITH_RC4_128_MD5</tt></li> <li><tt>SSL_RSA_WITH_3DES_EDE_CBC_SHA</tt></li> </ul> Im Kind-Element <tt>AcceptedServerCertificates</tt> 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 überprüft ob ein Zertifikatspfad zu den im Element <tt><TrustedCACertificates></tt> angegebenen Zertifikaten erstellt werden kann. Falls dies nicht möglich ist, kommt es zu einem Fehlerfall. <p></p> <div id="AuthComponent" /> <p id="block"> <b>AuthComponent</b> <br /> <tt>AuthComponent</tt> enthält Parameter, die nur die MOA-ID Authentisierungskomponente betreffen. Das Element ist optional und muss nicht verwendet werden, wenn auf dem Server keine MOA-ID Authentisierungskomponente installiert wird. <br /> <br /> Das Element <tt>AuthComponent</tt> hat vier Kind-Element: <ul> <li><tt>BKUSelection</tt> (optional)</li> <li><tt>SecurityLayer</tt></li> <li><tt>MOA-SP</tt></li> <li><tt>IdentityLinkSigners</tt></li> </ul> <p></p> <div id="BKUSelection" /> <p id="block"> <b>AuthComponent/BKUSelection</b> <br /> Das optionale Element <tt>BKUSelection</tt> enthält Parameter zur Nutzung eines Auswahldienstes für eine Bürgerkartenumgebung (BKU). Wird das Element nicht angegeben, dann wird die lokale Bürgerkartenumgebung auf <tt>http://localhost:3495/http-security-layer-request</tt> verwendet. <br /> <br /> Das Attribut <tt>BKUSelectionAlternative</tt> gibt an welche Alternative zur BKU-Auswahl verwendet werden soll. MOA-ID unterstützt die Werte <tt>HTMLComplete</tt> (vollständige HTML-Auswahl) und <tt>HTMLSelect</tt> (HTML-Code für Auswahl) [<a href="../bku-auswahl.20030408.pdf">"Auswahl von Bürgerkartenumge-bungen"</a>, Arno Hollosi]. <br /> <br /> Das Kind-Element <tt>ConnectionParameter</tt> spezifiziert die Verbindung zum Auswahldienst (siehe <a href="#ConnectionParameter"><tt>ConnectionParameter</tt></a>), jedoch kann das Kind-Element <tt>ClientKeyStore</tt> nicht angegeben werden. </p> <div id="SecurityLayer" /> <p id="block"> <b>AuthComponent/SecurityLayer</b> <br /> Das Element <tt>SecurityLayer</tt> enthält Parameter zur Nutzung des Security-Layers. <br /> <br /> Das Kind-Element <tt>TransformsInfo</tt> spezifiziert eine Transformation, die für die Erstellung der Signatur des AUTH-Blocks als Parameter in den <tt>CreateXMLSignatureRequest</tt> des Security-Layers integriert werden muss. Mehrere unterschiedliche Implementierungen des Security-Layer können durch die Angabe mehrerer <tt>TransformsInfo</tt>-Elemente unterstützt werden. <br /> <br /> Das Attribut <tt>TransformsInfo/@filename</tt> verweist auf eine Datei, die das globale Element <tt>TransformsInfo</tt> vom Typ <tt>TransformsInfo</tt> enthält. Die Angabe erfolgt relativ zur MOA-ID Konfigurationsdatei. Das Encoding dieser Datei muss UTF-8 sein. <br /> <br /> <a href="examples/TransformsInfoAuthBlock.txt">Beispiel für eine TransformsInfo-Datei</a> </p> <div id="MOA-SP" /> <p id="block"> <b>AuthComponent/MOA-SP</b> <br /> Das Element <tt>MOA-SP</tt> enthält Parameter zur Nutzung von MOA-SP. MOA-SP wird für die überprüfung der Signatur der Personenbindung und des AUTH-Blocks verwendet. <br /> <br /> Wird das Kind-Element <tt>ConnectionParameter</tt> angegeben, dann wird MOA-SP über das Webservice angesprochen.</p> <p id="block">Wird das Kind-Element <tt>ConnectionParameter</tt> nicht angegeben so wird eine MOA-ID beiligende Version von MOA-SP direkt über das Java-API angesprochen. In diesem Fall muss das System-Property auf die verwendete Konfigurationsdatei von MOA-SP gesetzt werden. Eine beispielhafte MOA-SP Konfigurationsdatei ist in <tt>$MOA_ID_INST_AUTH/conf/moa-spss/SampleMOASPSSConfiguration.xml</tt> enthalten. </p> </div> </div> </div> </div> </div> </div> <div id="moaid-konfiguration" /> <div id="ConnectionParameter" /> <div id="AuthComponent" /> <div id="BKUSelection" /> <div id="SecurityLayer" /> <div id="MOA-SP" /> <div id="verifytransformsInfoProfile" /> <p><b><i>Hinweis:</i></b><i> MOA-SP muss entsprechend konfiguriert werden - siehe hierzu Abschnitt <a href="#sp-config">Konfiguration von MOA-SP</a>. Alle Details zur Konfiguration von MOA-SP finden sie in der Distribution von MOA-SP/SS beiligenden Dokumentation im Abschnitt 'Konfiguration'.<br> </i><br /> Das Kind-Element <tt>VerifyIdentityLink/TrustProfileID</tt> spezifiziert eine TrustProfileID, die für den <tt>VerifyXMLSignatureRequest</tt> zur Überprüfung der Signatur der Personenbindung verwendet werden muss. Diese TrustProfileID muss beim verwendeten MOA-SP Modul konfiguriert sein.<br /> <br /> Die Kind-Elemente <tt>VerifyAuthBlock/TrustProfileID</tt> und <tt>VerifyAuthBlock/VerifyTransformsInfoProfileID</tt> spezifizieren eine TrustProfileID und eine ID für ein Transformationsprofil, die für den <tt>VerifyXMLSignatureRequest</tt> zur überprüfung der Signatur des Auth-Blocks verwendet werden müssen. Diese TrustProfileID muss beim verwendeten MOA-SP Modul konfiguriert sein.</p> </div> </div> </div> </div> </div> </div> </div> <div id="moaid-konfiguration" /> <div id="ConnectionParameter" /> <div id="AuthComponent" /> <div id="BKUSelection" /> <div id="SecurityLayer" /> <div id="MOA-SP" /> <div id="IdentityLinkSigners" /> <p id="block"> <b>AuthComponent/IdentityLinkSigners</b> <br /> Dieses Element gibt an von welchen Signatoren die Signatur des IdentityLink erstellt werden musste damit der IdentityLink akzeptiert wird. Für jeden Signator muss der <tt>X509SubjectName</tt> nach RFC 2253 spezifiziert werden. <br /> <br /> <a href="examples/IdentityLinkSigners.txt">Beispiel</a> <br /> <br /> </p> <div id="ProxyComponent" /> <p id="block"> <b>ProxyComponent</b> <br /> <tt>ProxyComponent</tt> enthält Parameter, die nur die MOA-ID Proxykomponente betreffen. Das Element ist optional und muss nicht verwendet werden, wenn auf dem Server keine MOA-ID Proxykomponente installiert wird. <br /> <br /> Das Element <tt>ProxyComponent</tt> hat nur das Kind-Element <tt>AuthComponent</tt>, das die Verbindung zur Authentisierungs-komponente beschreibt. <br /> <br /> Baut die Proxykomponente die Verbindung zur Authentisierungs-komponente über ein Webservice auf, dann muss das Element <tt>ConnectionParameter</tt> spezifiziert werden. <br /> <br /> Baut die Proxykomponente die Verbindung zur Authentisierungs-komponente über das API auf, dann wird das Element <tt>ConnectionParameter</tt> nicht spezifiziert. </p> <div id="OnlineApplication" /> <p id="block"> <b>OnlineApplication</b> <br /> Für jede Online-Applikation, die über MOA-ID authentisiert wird, gibt es ein Element <tt>OnlineApplication</tt>. Die Parameter betreffen teils die MOA-ID Authentisierungskomponente, teils die MOA-ID Proxykomponente, teils beide. <br /> <br /> Das ab Version 1.3 optionale Attribut <tt>OnlineApplication/@type</tt> spezifiziert den Typ der OnlineApplikation und kann die Werte <tt>publicService</tt> für eine Applikation aus dem öffentlichen Bereich und <tt>businessService</tt> f�r eine Anwendung aus dem privatwirtschaftlichen Bereich annehmen. Ist dieses Attribut nicht gesetzt, so wird der Typ <tt>publicService</tt> vorausgesetzt. <br /> <br /> Das Attribut <tt>OnlineApplication/@publicURLPrefix</tt> entspricht dem URL-Präfix der nach außen sichtbaren Domäne der Online-Applikation, welcher von der MOA-ID Proxykomponente durch den URL-Präfix der wirklichen Domäne (Attribut <tt>OnlineApplication/ProxyComponent/ConnectionParameter/@URL</tt>) ersetzt wird. Es dient als Schlüssel zum Auffinden der Konfigurationsparameter zur Online-Applikation. </p> <p id="block">Das Attribut <tt>OnlineApplication/@keyBoxIdentifier</tt> gibt das Schlüsselpaar an, welches von der Bürgerkartenumgebung zum Signieren des Auth Blocks verwendet wird. Mögliche Werte: <tt>CertifiedKeypair </tt>sowie<tt> SecureSignatureKeypair.<br> </tt><br /> Das Element <tt>OnlineApplication</tt> hat optional zwei Kind-Elemente: <tt>AuthComponent</tt> und <tt>ProxyComponent</tt>. </p> <div id="OnlineApplication/AuthComponent" /> <p id="block"> <b>OnlineApplication/AuthComponent</b> <br /> Das Element <tt>OnlineApplication/AuthComponent</tt> muss verwendet werden wenn auf dem Server die Authentisierungskomponente installiert wird. Es enthält Parameter, die das Verhalten der Authentisierungskomponente bezüglich der Online-Applikation konfiguriert. <br /> <br /> Das optionale Attribut <tt>slVersion</tt> definiert die Version des verwendeten SecurityLayer und damit den Namespace aller Requests, die von MOA-ID an die Bürgerkartenumgebung geschickt werden. Dieses Attribut kann entweder den Wert <tt>1.1</tt> oder <tt>1.2</tt> annehmen. Fehlt das Attribut, so wird als Defaultwert <tt>1.1</tt> gesetzt. <br />Wurde als Typ der Online-Applikation der Wert <tt>businessService</tt> (vgl. Attribut <tt>OnlineApplication/@type</tt>) spezifiziert, so wird das Attribut <tt>slVersion</tt> ignoriert und immer der Wert <tt>1.2</tt> verwendet, da die für Applikationen aus dem privatwirtschaftlichen Bereich notwendige Berechnung des <tt>wirtschaftsbereichsspezifischen Personenkennzeichens</tt> (<tt>wbPK</tt>) erst ab SecurityLayer Version <tt>1.2</tt> möglich ist. <br /><br /> Das Attribut <tt>provideStammzahl</tt> bestimmt, ob die Stammzahl in den Anmeldedaten aufscheint oder ob der Wert ausgeblendet (d.h. auf den Leerstring gesetzt) wird. Die Attribute <tt>provideAUTHBlock</tt> und <tt>provideIdentityLink</tt> steuern, ob die Anmeldedaten den Auth-Block bzw. die Personenbindung enthalten. Ab Version 1.3 kann das Attribut <tt>provideCertificate</tt> verwendet werden, um das Signatorzertifikat in die Anmeldedaten aufzunehmen. Alle Attribute sind optional und haben den Default-Wert <tt>false</tt>. <br /> <br /> </p> <div id="OnlineApplication/AuthComponent/IdentificationNumber" /> <p id="block"> <b>OnlineApplication/AuthComponent/IdentificationNumber</b> <br /> Das <tt>wirtschaftsbereichsspezifische Personenkennzeichen</tt> (<tt>wbPK</tt>) wird aus der auf der Bürgerkarte gespeicherten Stammzahl des Bürgers und der Stammzahl des Wirtschaftsunternehmens berechnet. Laut <a href="http://reference.e-government.gv.at/E-Government-Gesetz.394.0.html" target="_new">E-Governmentgesetz</a> darf die <i>Errechnung eines wbPK aus der Stammzahl nicht beim Auftraggeber eines privaten Bereichs durchgef�hrt werden</i> (vgl. E-GovGesetz �12(1).4), und muss deshalb an die B�rgerkartenumgebung ausgelagert werden. Das <tt>OnlineApplication/AuthComponent/IdentificationNumber</tt> Element wird nun verwendet, um die Stammzahl des Wirtschaftsunternehmens zu spezifizieren, welche in weiterer Folge von MOA-ID an die Bürgerkartenumgebung �bergeben wird.<br /> Dieses Element muss bei privatwirtschaftlichen Applikationen vorhanden sein und wird ignoriert, falls es im Kontext von Anwendungen aus dem öffentlichen Bereich verwendet wird. <br /> Das Element hat genau eines der folgenden möglichen Kindelemente aus dem <a href="http://www.buergerkarte.at/konzept/personenbindung/spezifikation/20050214/" target="_new">PersonData</a> Namespace, die als einzigen Inhalt die jeweilige Stammzahl des Unternehmens enthalten: <ul> <li> Das Element <tt>pr:Firmenbuchnummer</tt> enthält als einzigen Inhalt die Firmenbuchnummer des Unternehmens. </li> <li> Das Element <tt>pr:Vereinsnummer</tt> enthält als einzigen Inhalt die Vereinsregisternummer des Unternehmens. </li> <li> Das Element <tt>pr:ERJPZahl</tt> enthält als einzigen Inhalt eine Zahl aus dem Ergänzungsregister f�r nicht-nat�rliche Personen (CorporateBody). </li> <li> Das Element <tt>pr:ZMRzahl</tt> enthält als einzigen Inhalt eine Stammzahl einer natürlichen in Österreich meldepflichtigen Person. </li> </ul> Die Stammzahl ist jeweils ohne Präfix anzugeben, also wird zum Beispiel die Firmenbuchnummer <tt>FN468924i</tt> folgenderma�en definiert: <br /> <br /> <tt><pr:Firmenbuchnummer>468924i</pr:Firmenbuchnummer></tt> <br /><br /> Leerzeichen werden ignoriert und im Falle einer Firmenbuchnummer werden führende Nullen gelöscht und Bindestriche aus der Nummer entfernt. <br /><br /> Beispiele:<br /> <blockquote> <tt>468924 i</tt> wird zu <tt>468924i</tt><br /> <tt>00468924</tt> wird zu <tt>468924i</tt><br /> <tt>468924-i</tt> wird zu <tt>468924i</tt><br /> </blockquote> Alternativ zu den oben angeführten Elementen aus dem <a href="http://www.buergerkarte.at/konzept/personenbindung/spezifikation/20050214/" target="_new">PersonData</a> Namespace kann auch das Element <tt>AnyNumber</tt> verwendet werden, um Stammzahlen zu spezifizieren, die nicht einer der vier oben aufgelisteten Kategorien zugeordnet werden k�nnen. <br></br> Das Element <tt>AnyNumber</tt> hat genau ein Attribut namens <tt>Identifier</tt>, das das Präfix der jeweiligen Stammzahl entält. Der Inhalt des Elements <tt>AnyNumber</tt> ist die Stammzahl selbst, wobei die selben Regeln wie oben gelten. <br></br> Die Firmenbuchnummer aus obigem Beispiel könnte man nun beispielsweise mit Hilfe das Elements <tt>AnyNumber</tt> auch folgenderma�en definieren: <br></br> <tt><AnyNumber Identifier="FN">468924i</AnyNumber></tt> <br></br> Es sei aber nochmals daraufhingewiesen, dass für Stammzahlen der Kategorien <tt>Firmenbuchnummer</tt>, <tt>Vereinsnummer</tt>, <tt>ERJPZahl</tt> und <tt>ZMRzahl</tt> die vordefinierten Elemente aus dem <a href="http://www.buergerkarte.at/konzept/personenbindung/spezifikation/20050214/" target="_new">PersonData</a> Namespace verwendet werden sollen. Das Element <tt>AnyNumber</tt> wurde hauptsächlich in das Schema aufgenommen, um offen für mögliche Erweiterungen zu sein. </p> <div id="OnlineApplication/AuthComponent/TransformsInfo" /> <p id="block"> <b>OnlineApplication/AuthComponent/TransformsInfo</b> <br /> Dieses Kindelement kann mehrfach vorkommen und entspricht in seiner Struktur dem Element <tt>AuthComponent/SecurityLayer/TransformsInfo</tt>. Das Element kann verwendet werden, um für unterschiedliche Online-Applikationen unterschiedliche Transformationen zu spezifizieren. Alle �ber dieses Element definierten Transformationen haben Vorrang gegenüber die durch <tt>AuthComponent/SecurityLayer/TransformsInfo</tt> angegebenen Transformationen. Das hei�t, ist für eine Online-Applikation das Kindelement <tt>AuthComponent/TransformsInfo</tt> vorhanden, so wird für diese Applikation die durch dieses Element spezifizierte Transformation verwendet (das Element kann natürlich mehrfach vorkommen, wodurch mehrere Transformationen bezeichnet werden). Für alle Applkikationen, die kein Kindelement vom Typ <tt>AuthComponent/TransformsInfo</tt> enthalten, werden die unter <tt>AuthComponent/SecurityLayer/TransformsInfo</tt> spezifizierten "Default-Transformationen" verwendet. <br /> Dabei ist zu beachten, dass für jede definierte Transformation ein entsprechendes <tt>MOA-SP/VerifyAuthBlock/VerifyTransformsInfoProfileID</tt> Element vorhanden sein muss.</p> </p> <div id="OnlineApplication/ProxyComponent" /> <p id="block"> <b>OnlineApplication/ProxyComponent</b> <br /> Das Element <tt>OnlineApplication/ProxyComponent</tt> muss verwendet werden wenn auf dem Server die Proxykomponente installiert wird. <br /> <br /> Das optionale Attribut <tt>configFileURL</tt> verweist auf eine Konfigurationsdatei die dem Schema <a href="../MOA-ID-Configuration-1.3.xsd" target="_new">MOA-ID-Configuration-1.3.xsd</a> entspricht mit Dokument-Element <tt>Configuration</tt>. Die Angabe erfolgt relativ zur verwendeten MOA-ID Konfigurationsdatei. Beispiel für das Element <tt>configFileURL</tt>: "oa/SampleOAConfiguration.xml".<br /> Defaultmäßig wird versucht die Datei von der betreffenden OnlineApplikation unter dem Wert: <tt>http://<realURLPrefix>/MOAConfig.xml</tt> zu laden.<br/> (<tt><realURLPrefix></tt> entspricht dem Wert von <tt>OnlineApplication/ProxyComponent/ConnectionParameter/@URL</tt>) <br /> <br /> Das optionale Attribut <tt>sessionTimeOut</tt> legt das Timeout einer Benutzersession in der Proxykomponente in Sekunden fest.<br /> Default-Wert: 3600 <br /> <br /> Im optionalen Attribut <tt>loginParameterResolverImpl</tt> kann der Klassenname eines zu verwendenden <tt>LoginParameterResolver</tt> angegeben werden, welcher die Defaultimplementierung ersetzt. <br /> </p> <p id="block">Im optionalen Attribut <tt>loginParameterResolverConfiguration </tt>kann ein Configurationsstring für die Initialisierung der betreffenden <tt>loginParameterResolverImpl</tt> angegeben werden.<br> <br /> Im optionalen Attribut <tt>connectionBuilderImpl</tt> kann der Klassenname eines zu verwendenden ConnectionBuilder angegeben werden, welcher die Defaultimplementierung ersetzt. <br /> <br /> Im Kind-Element <tt>ConnectionParameter</tt> ist konfiguriert, wie MOA-ID-PROXY zur Online-Applikation verbindet. </p> <div id="ChainingModes" /> <p id="block"> <b>ChainingModes</b><br /> Das Element <tt>ChainingModes</tt> definiert, ob bei der Zertifikatspfad-überprüfung das Kettenmodell (<tt>"chaining"</tt>) oder das Modell nach PKIX RFC 3280 (<tt>"pkix"</tt>) verwendet werden soll. <br /> <br /> Das Attribut <tt>systemDefaultMode</tt> spezifiziert das Modell, das im Standardfall verwendet werden soll. <br/> <br/> Mit dem Kind-Element <tt>TrustAnchor</tt> kann für jeden Trust Anchor ein abweichendes Modell spezifiziert werden. Ein Trust Anchor ist ein Zertifikat, das in <tt>TrustedCACertificates</tt> spezifiziert ist. Ein Trust Anchor wird durch den Typ <tt><dsig:X509IssuerSerialType></tt> spezifiziert. Das für diesen Trust Anchor gültige Modell wird durch das Attribut <tt>mode</tt> spezifiziert. <br/> <br/> Gültige Werte für die Attribute <tt>systemDefaultMode</tt> und <tt>mode</tt> sind <tt>"chaining"</tt> und <tt>"pkix"</tt>. <br/> <br/> <a href="examples/ChainingModes.txt">Beispiel</a> </p> <div id="TrustedCACertificates" /> <p id="block"> <b>TrustedCACertificates</b><br /> Das Element <tt>TrustedCACertificates</tt> enthält das Verzeichnis (relativ zur MOA-ID Konfigurationsdatei), das jene Zertifikate enthält, die als vertrauenswürdig betrachtet werden. Im Zuge der Überprüfung der TLS-Serverzertifikate wird die Zertifikatspfaderstellung an einem dieser Zertifikate beendet. </p> <div id="GenericConfiguration" /> <p id="block"> <b>GenericConfiguration</b><br /> Das Element <tt>GenericConfiguration</tt> ermöglicht das Setzen von Namen-Werte Paaren mittels der Attribute <tt>name</tt> und <tt>value</tt>. Die folgende Liste spezifiziert <ul> <li>gültige Werte für das name-Attribut, </li> <li>eine Beschreibung </li> <li>gültige Werte für das value-Attribut und (falls vorhanden)</li> <li>den Default-Wert für das value-Attribut. </li> </ul> <table border="0" cellspacing="3" cellpadding="2"> <tr id="DirectoryCertStoreParameters.RootDir"> <th align="left">name: DirectoryCertStoreParameters.RootDir</th> </tr> <tr> <td id="info"> Gibt den Pfadnamen zu einem Verzeichnis an, das als Zertifikatsspeicher im Zuge der TLS-Server-Zertifikatsüberprüfung verwendet wird.<br /> <hr /> <b>value: </b><br /> Gültige Werte: Name eines gültigen Verzeichnisses (relativ zur MOA-ID Konfigurationsdatei)<br /> <b>Dieser Parameter muss angegeben werden.</b> </td> </tr> </table> <table border="0" cellspacing="3" cellpadding="2"> <tr id="AuthenticationSession.TimeOut"> <th align="left">name: AuthenticationSession.TimeOut</th> </tr> <tr> <td id="info"> Gibt die Zeitspanne in Sekunden vom Beginn der Authentisierung bis zum Anlegen der Anmeldedaten an. Wird die Angegebene Zeitspanne überschritten wird der Anmeldevorgang abgebrochen. <br /> <hr /> <b>value: </b><br /> Gültige Werte: positive Ganzzahlen <br /> Default-Wert: 120 </td> </tr> </table> <table border="0" cellspacing="3" cellpadding="2"> <tr id="AuthenticationData.TimeOut"> <th align="left">name: AuthenticationData.TimeOut</th> </tr> <tr> <td id="info"> Gibt die Zeitspanne in Sekunden an, für die die Anmeldedaten in der Authentisierungskomponente zum Abholen durch die Proxykomponente oder eine nachfolgende Applikation bereitstehen. Nach Ablauf dieser Zeitspanne werden die Anmeldedaten gelöscht.<br /> <hr /> <b>value: </b><br /> Gültige Werte: positive Ganzzahlen<br /> Default-Wert: 600 </td> </tr> </table> <table border="0" cellspacing="3" cellpadding="2"> <tr id="TrustManager.RevocationChecking"> <th align="left">name: TrustManager.RevocationChecking</th> </tr> <tr> <td id="info"> Für die TLS-Server-Authentisierung dürfen nur Server-Zertifikate verwendet werden, die eine CRLDP-Extension enthalten (andernfalls kann von MOA-ID keine CRL-überprüfung durchgeführt werden). <br /> Soll das RevocationChecking generell ausgeschaltet werden, ist dieses Attribut anzugeben und auf "false" zu setzen. <br /> <hr /> <b>value: </b><br /> Gültige Werte: true, false<br /> Default-Wert: true </td> </tr> </table> <table border="0" cellspacing="3" cellpadding="2"> <tr id="TrustManager.RevocationChecking"> <th align="left">name: FrontendServlets.EnableHTTPConnection</th> </tr> <tr> <td id="info"> <p>Standardmäßig können die beiden Servlets "StartAuthentication" und "SelectBKU" welche das User-Frontend darstellen, aus Sicherheitsgründen, nur über das Schema HTTPS aufgerufen werden. </p> <p>Wenn die beiden Servlets jedoch auch Verbindungen nach dem Schema HTTP entgegennehmen sollen, so kann mittels dem Attribut "EnableHTTPServletConnection" erlaubt werden.</p> <p>Hinweis: Sicher und sinnvoll ist das Erlauben der HTTP Verbindung nur dann, wenn ein Vorgeschalteter Webserver das HTTPS handling übernimmt, und eine Verbindung zu den Servlets nur über diesen Webserver möglich ist.</p> <hr /> <b>value: </b><br /> Gültige Werte: true, false<br /> Default-Wert: false</td> </tr> </table> <table border="0" cellspacing="3" cellpadding="2"> <tr id="TrustManager.RevocationChecking"> <th align="left"><a name="DataURLPrefix"></a>name: FrontendServlets.DataURLPrefix</th> </tr> <tr> <td id="info"> <p>Standardmäßig wird als DataURL Prefix das URL Präfix unter dem die MOA-ID Servlets erreichbar sind verwendet. Im Falle das sich der MOA-ID Server hinter einer Firewall befindet und die Requests von einem vorgelagertem Webserver weitergereicht werden, kann mit FrontendServlets.DataURLPrefix ein alternatives URL Präfix angegeben werden. In diesem Fall muss der Webserver so konfiguriert sein, dass er Request auf diese URLs an den MOA-ID Server weiterleitet.</p> <hr /> <b>value: </b><br /> Gültige Werte: URLs nach dem Schema 'http://' und 'https://'<br /> Default-Wert: kein Default-Wert<br> Beispiel: <GenericConfiguration name="FrontendServlets.DataURLPrefix" value="https://<your_webserver>/moa-id-auth/"/></td> </tr> </table> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </td> </tr></table> <br /><br /> <div id="oa-config" /> <table width="650" border="0" cellpadding="10" cellspacing="0"> <tr> <td width="170" valign="top" id="klein"> <p id="subtitel"> </p> <div id="slogan"> <br /><br /> </div> </td> <td valign="top"> <p id="subtitel">Konfiguration der Online-Applikation</p> <div id="block"> Die Konfiguration der OA beschreibt die Art und Weise, wie die Proxykomponente die Anmeldung an der Online-Applikation durchführt. <br /><br /> Der Name der Konfigurationsdatei wird in der Konfiguration von MOA-ID als Wert des Attributs <tt>configFileURL</tt> des Elements <tt>MOA-IDConfiguration/OnlineApplication/ProxyComponent</tt> hinterlegt. <br/>Ist dieses Attribut nicht gesetzt, dann wird die Datei von <tt>http://<realURLPrefix>/MOAConfig.xml</tt> geladen, wobei <tt><realURLPrefix></tt> dem Konfigurationswert <tt>OnlineApplication/ProxyComponent/ConnectionParameter/@URL</tt> entspricht. <br /><br /> Die Konfigurationsdatei ist eine XML-Datei, die dem Schema <a href="../MOA-ID-Configuration-1.3.xsd" target="_new">MOA-ID-Configuration-1.3.xsd</a> mit dem Wurzelelement <tt>Configuration</tt> entspricht. </div> <div id="LoginType" /> <p id="block"> <b>LoginType</b><br /> Das Element <tt>LoginType</tt> gibt an, ob die Online-Applikation ein einmaliges Login erwartet (<tt>stateful</tt>), oder ob die Login-Parameter bei jedem Request mitgegeben werden müssen (<tt>stateless</tt>). Im Fall einer stateful Online-Applikation werden die in der HTTP-Session der Proxykomponente gespeicherten Anmeldedaten nur für den Aufruf des Login-Scripts verwendet. Unmittelbar nach dem Aufruf werden sie gelöscht. <br /> Default-Wert: <tt>stateful</tt> </p> </div> <div id="ParamAuth" /> <p id="block"> <b>ParamAuth</b><br /> Konfiguriert die übergabe der Authentisierungs-Parameter an die Online-Applikation mittels URL-Parametern. Das Element kann ein oder mehrere Kind-Elemente <tt><Parameter></tt> beinhalten. </p> </div> <div id="Parameter" /> <p id="block"> <b>ParamAuth/Parameter</b><br /> Das Element <tt><Paramter></tt> enthält die Attribute <tt>Name</tt> und <tt>Value</tt>. <br /><br /> Das Attribut <tt>Name</tt> beschreibt den Namen des Parameters und ist ein frei zu wählender String. <br /><br /> Das Attribut <tt>Value</tt> beschreibt den Inhalt des Parameters und kann einen der durch <tt>MOAAuthDataType</tt> beschriebenen Werte annehmen. Gültige Werte von <tt>MOAAuthDataType</tt> sind: <ul> <li><tt>MOAGivenName</tt> - der Vorname des Benutzers, wie in der Personenbindung enthalten <li><tt>MOAFamilyName</tt> - der Nachname des Benutzers, wie in der Personenbindung enthalten <li><tt>MOADateOfBirth</tt> - das Geburtsdatum des Benutzers, wie in der Personenbindung enthalten <li><tt>MOABPK</tt> - die bereichsspezifische Personenkennzeichnung des Benutzers, wie von der Authentisierungskomponente berechnet <li><tt>MOAWBPK</tt> - das wirtschaftsbereichsspezifische Personenkennzeichen des Benutzers, wie von der Bügerkartenumgebung berechnet <li><tt>MOAPublicAuthority</tt> - wird durch <tt>true</tt> ersetzt, falls der Benutzer mit einem Zertifikat signierte, welches eine <a href="../OID-1-0-3.pdf">Behördenerweiterung</a> beinhaltet. Andernfalls wird <tt>false</tt> gesetzt <li><tt>MOABKZ</tt> - das Behördenkennzeichen (nur sinnvoll, wenn <tt>MOAPublicAuthority</tt> den Wert <tt>true</tt> ergibt) <li><tt>MOAQualifiedCertificate</tt> - wird durch <tt>true</tt> ersetzt, falls das Zertifikat des Benutzers qualifiziert ist, andernfalls wird <tt>false</tt> gesetzt <li><tt>MOAStammzahl</tt> - die Stammzahl des Benutzers; diese ist nur dann verfügbar, wenn die Online-Applikation die Stammzahl bekommen darf (und daher in der Personenbindung enthalten ist) <li><tt>MOAIPAddress</tt> - IP-Adresse des Client des Benutzers. </ul> Anhand der <tt><Parameter></tt>-Elemente wird der Request für den Login-Vorgang (für stateful Online-Applikationen) folgendermaßen zusammenge-stellt:<br /> <blockquote> <code>GET https://<login-url>?<br /> <p1.name=p1.resolvedValue>&<br /> <p2.name=p2.resolvedValue>...</code> </blockquote> <p id="block"> Die <tt><login-url></tt> ergibt sich aus dem Parameter OA des <a href="id-anwendung_1.htm">Aufrufs von MOA-ID-AUTH</a>, zusammen mit der Konfiguration von <tt>OnlineApplication/@publicURLPrefix</tt> und von <tt>OnlineApplication/ProxyComponent/ConnectionParameter/@URL</tt>. <br/>Der Wert <tt>resolvedValue</tt> wird in MOA-ID-PROXY je nach Wert des Platzhalters eingesetzt. </p> <tt></tt></div><tt></tt> <div id="BasicAuth" /> <p id="block"> <b>BasicAuth</b><br /> Das Element <tt>BasicAuth</tt> konfiguriert die übergabe der Authentisierungs-Parameter an die Online-Appliktion mittels HTTP Basic Authentication. Es enthält zwei Kind-Elemente. <br /><br /> Das Element <tt>UserID</tt> gibt die UserId des zu authentisierenden Benutzers an und kann einen der durch <tt>MOAAuthDataType</tt> beschriebenen Werte annehmen. <br /><br /> Das Element <tt>Password</tt> gibt das Passwort des zu authentisierenden Benutzers an und kann einen der durch <tt>MOAAuthDataType</tt> beschriebenen Werte annehmen. </p> </div> <div id="HeaderAuth" /> <p id="block"> <b>HeaderAuth</b><br /> Das Element <tt>HeaderAuth</tt> konfiguriert die übergabe der Authentisierungs-Parameter an die Online-Applikation in HTTP Request Headern. Das Element kann ein oder mehrere Kind-Elemente <tt><Header></tt> beinhalten. </p> </div> <div id="Header" /> <p id="block"> <b>HeaderAuth/Header</b><br /> Das Element <tt><Header></tt> enthält die Attribute Name und Value. <br /><br /> Das Attribut <tt>Name</tt> beschreibt den Namen des Header und ist ein frei zu wählender String. <br /><br /> Das Attribut <tt>Value</tt> beschreibt den Inhalt des Header und kann einen der durch <tt>MOAAuthDataType</tt> beschriebenen Werte annehmen. <br /><br /> Die Header werden folgendermaßen in den Request an die Online-Applikation eingefügt: <blockquote><pre> <h1.name>:<h1.resolvedValue> <h2.name>:<h2.resolvedValue> ... </pre></blockquote> Der Wert <tt>resolvedValue</tt> wird in der Proxykomponente je nach Wert des Platzhalters eingesetzt. Etwaige Header aus dem ursprünglichen Request an die Proxykomponente, die denselben Namen haben, müssen überschrieben werden. <p></p> </div> </tt></tt></td></tr></table> <div id="sp-config" /> <table width="650" border="0" cellpadding="10" cellspacing="0"> <tr> <td width="170" valign="top" id="klein"> <p id="subtitel"> </p> <div id="slogan"> <br /><br /> </div> </td> <td valign="top"> <p id="subtitel">Konfiguration von MOA-SP</p> <div id="block"> <p id="block"> MOA-ID überprüft die Signaturen der Personenbindung und des AUTH-Blocks mit dem <tt>VerifyXMLSignatureRequest</tt> von MOA-SP. Dazu muss MOA-SP wie unten beschreiben konfiguriert werden. <br /> <br /> <b>VerifyTransformsInfoProfile</b><br /> Der Request zum überprüfen der Signatur des AUTH-Blocks verwendet ein vordefiniertes VerifyTransformsInfoProfile. Die im Request verwendete Profil-ID wird in der MOA-ID Konfigurationsdatei im Element <tt>/MOA-IDConfiguration/ AuthComponent/MOA-SP/VerifyAuthBlock/ VerifyTransformsInfoProfileID</tt> definiert. Entsprechend muss am MOA-SP Server ein VerifyTransformsInfoProfile mit gleichlautender ID definiert werden. Die Profiledefinition selbst ist in der Auslieferung von MOA-ID in <tt>$MOA_ID_INST_AUTH/conf/moa-spss/profiles/MOAIDTransformAuthBlock.xml</tt> enthalten. Diese Profildefinition muss unverändert übernommen werden. </p> <div id="verifytransformsInfoProfile" /></div> <div id="trustProfile" /> <p id="block"> <b>TrustProfile</b><br /> Die Requests zur überprüfung der Signatur verwenden vordefinierte TrustProfile. Die im Request verwendete Profil-IDs werden in der MOA-ID Konfigurationsdatei in den Elementen <tt>/MOA-IDConfiguration/AuthComponent/MOA-SP/VerifyIdentityLink/ TrustProfileID</tt> und <tt>/MOA-IDConfiguration/AuthComponent/MOA-SP/VerifyAuthBlock/TrustProfileID</tt> definiert. Diese beiden Elemente können unterschiedliche oder identische TrustProfileIDs enthalten. Am MOA-SP Server müssen TrustProfile mit gleichlautender ID definiert werden. Die Auslieferung von MOA-ID enthält das Verzeichnis <tt>$MOA_ID_INST_AUTH/conf/moa-spss/trustprofiles/MOAIDBuergerkarteRoot</tt>, das als TrustProfile verwendet werden kann. Weitere Zertifikate können als vertrauenswürdig hinzugefügt werden. </p> </div> <div id="certstore" /> <p id="block"> <b>Certstore</b><br /> Zum Aufbau eines Zertifikatspfades können benötigte Zertifikate aus einem Zertifikatsspeicher verwendet werden. Die Auslieferung von MOA-ID enthält das Verzeichnis <tt>$MOA_ID_INST_AUTH/conf/moa-spss/certstore</tt>, das als initialer Zertifikatsspeicher verwendet werden kann. </p> </div> <div> Hinweis: Mit dem Wechsel auf Version 1.3 verwendet MOA SP/SS ein neues Format f�r die XML-Konfigurationsdatei. Für die Konvertierung einer älteren Konfigurationsdatei auf das neue Format steht Ihnen ein Tool zur Verfügung. Details dazu finden sie in der der Distribution von MOA-SP/SS beiligenden Dokumentation im Kapitel 'Konfiguration', Abschnitt 1.2.1.<br> </div> </td></tr></table> <div id="online-config" /> <table width="650" border="0" cellpadding="10" cellspacing="0"> <tr> <td width="170" valign="top" id="klein"> <p id="subtitel"> </p> <div id="slogan"> <br /><br /> </div> </td> <td valign="top"> <p id="subtitel">Änderung der Konfiguration während des Betriebs</p> <div id="block"> Der Inhalt dieser Konfiguration, bzw. jene Teile, auf die indirekt verwiesen wird, können während des laufenden Betriebes des MOA-Servers geändert werden. Der Server selbst wird durch den Aufruf einer <a href="id-admin_1.htm#ConfigUpdate">URL</a> (im Applikationskontext von MOA ID) dazu veranlasst, die geänderte Konfiguration neu einzulesen. Im Falle einer fehlerhaften neuen Konfiguration wird die ursprüngliche Konfiguration beibehalten. </div> </td></tr></table> <br /><br /> <table width="650" border="0" cellpadding="10" cellspacing="0"> <tr> <td width="170" valign="top"><br /></td> <td valign="top"> <hr /> <div style="font-size:8pt; color:#909090">© 2004</div> </td></tr></table> <br /> </div> </div></div></div></body> </html>