aboutsummaryrefslogtreecommitdiff
path: root/spss.handbook/handbook/config
diff options
context:
space:
mode:
authorgregor <gregor@d688527b-c9ab-4aba-bd8d-4036d912da1d>2005-08-30 12:58:46 +0000
committergregor <gregor@d688527b-c9ab-4aba-bd8d-4036d912da1d>2005-08-30 12:58:46 +0000
commit64fc0706135941fce8323421a49e8fa899e0e171 (patch)
treee87c3cbeaa12eefe98db0492bd00012bd1f2b8d6 /spss.handbook/handbook/config
parent466abdb6a2f9a9a10ca29dadec35b6d87a771633 (diff)
downloadmoa-id-spss-64fc0706135941fce8323421a49e8fa899e0e171.tar.gz
moa-id-spss-64fc0706135941fce8323421a49e8fa899e0e171.tar.bz2
moa-id-spss-64fc0706135941fce8323421a49e8fa899e0e171.zip
Bug 271: Handbuch adaptiert.
Version des Handbuchs auf 1.3 gesetzt. git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@473 d688527b-c9ab-4aba-bd8d-4036d912da1d
Diffstat (limited to 'spss.handbook/handbook/config')
-rw-r--r--spss.handbook/handbook/config/config.html1053
1 files changed, 700 insertions, 353 deletions
diff --git a/spss.handbook/handbook/config/config.html b/spss.handbook/handbook/config/config.html
index 5441dca0b..02f07abf1 100644
--- a/spss.handbook/handbook/config/config.html
+++ b/spss.handbook/handbook/config/config.html
@@ -15,7 +15,7 @@
</tr>
</table>
<hr/>
- <p class="title"><a href="../index.html">MOA: Serversignatur (SS) und Signaturpr&uuml;fung (SP), V 1.2 </a></p>
+ <p class="title"><a href="../index.html">MOA: Serversignatur (SS) und Signaturpr&uuml;fung (SP), V 1.3</a></p>
<p class="subtitle">Konfiguration</p>
<hr/>
<h1>Inhalt</h1>
@@ -23,6 +23,11 @@
<li>
<p><a href="#&#252;bersicht">&Uuml;bersicht</a></p>
<ol>
+ <li><a href="#&#252;bersicht_allgemeines">Allgemeines</a>
+ <ol>
+ <li><a href="#&#252;bersicht_allgemeines_namenskonventionen">Namenskonventionen</a></li>
+ </ol>
+ </li>
<li><a href="#&#252;bersicht_zentraledatei">Zentrale Konfigurationsdatei</a>
<ol>
<li><a href="#&#252;bersicht_zentraledatei_aktualisierung">Aktualisierung auf das Format von MOA SP/SS 1.3</a></li>
@@ -39,31 +44,56 @@
</li>
<li><a href="#konfigurationsparameter">Konfigurationsparameter</a>
<ol>
- <li><a href="#konfigurationsparameter_kanonisierungsalgorithmus">Kanonisierungs-Algorithmus</a></li>
- <li><a href="#konfigurationsparameter_digestalgorithmus">Digest-Algorithmus</a></li>
- <li><a href="#konfigurationsparameter_genericconfiguration">Generic Configuration</a> <ol>
- <li><a href="#konfigurationsparameter_genericconfiguration_zertpfad">Parameter f&uuml;r die Zertifikatspfadbildung</a> <ol>
- <li><a href="#konfigurationsparameter_genericconfiguration_zertpfad_autoaddcertificates">Cachen von Zertifikaten</a></li>
- <li><a href="#konfigurationsparameter_genericconfiguration_zertpfad_useauthorityinfoaccess">Auswertung der Zertifikatserweiterung <span class="term">Authority Information Access</span></a></li>
- <li><a href="#konfigurationsparameter_genericconfiguration_zertpfad_dircertstoreparamsrootdir">Lokalisierung des Zertifikatsspeichers</a></li>
+ <li><a href="#konfigurationsparameter_allgemein">Allgemeines Parameter</a> <ol>
+ <li><a href="#konfigurationsparameter_allgemein_hardwarecryptomodule">Hardwarebasiertes Kryptographiemodul</a></li>
+ </ol>
+ </li>
+ <li><a href="#konfigurationsparameter_ss">Parameter f&uuml;r MOA SS</a> <ol>
+ <li><a href="#konfigurationsparameter_ss_keymodules">Schl&uuml;sselspeicher</a> <ol>
+ <li><a href="#konfigurationsparameter_ss_keymodules_hardwarekeymodule">Hardware-Schl&uuml;sselspeicher</a></li>
+ <li><a href="#konfigurationsparameter_ss_keymodules_softwarekeymodule">Software-Schl&uuml;sselspeicher</a></li>
</ol>
</li>
- <li><a href="#konfigurationsparameter_genericconfiguration_widerruf">Parameter f&uuml;r die Widerrufspr&uuml;fung</a> <ol>
- <li><a href="#konfigurationsparameter_genericconfiguration_widerruf_checkrevocation">Aktivieren der Widerrufspr&uuml;fung</a></li>
- <li><a href="#konfigurationsparameter_genericconfiguration_widerruf_maxrevocationage">Maximales Alter der Widerrufsinformation</a></li>
- <li><a href="#konfigurationsparameter_genericconfiguration_widerruf_archiveRevocationInfo">Archivierung von Widerrufsinformationen</a></li>
- </ol>
+ <li><a href="#konfigurationsparameter_ss_keygroup">Schl&uuml;sselgruppe</a></li>
+ <li><a href="#konfigurationsparameter_ss_keygroupmapping">Zuordnung von Schl&uuml;sselgruppen zu einem
+ Kunden</a></li>
+ <li><a href="#konfigurationsparameter_ss_xmldsig">Parameter f&uuml;r XML-Signaturen</a> </li>
+ <li><a href="#konfigurationsparameter_ss_createtransformsinfoprofile">Profil f&uuml;r Transformationen</a></li>
+ <li><a href="#konfigurationsparameter_ss_createsignatureenvironmentprofile">Profil f&uuml;r Signaturumgebung </a></li>
+ </ol>
+ </li>
+ <li><a href="#konfigurationsparameter_sp">Parameter f&uuml;r MOA SP</a> <ol>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation">Zertifikatsvalidierung</a> <ol>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_pathconstruction">Konstruktion des Zertifikatspfads</a>
+ <ol>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_pathconstruction_autoaddcertificates">Cachen von Zertifikaten</a></li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_pathconstruction_useauthorityinfoaccess">Auswertung der Zertifikatserweiterung <span class="term">Authority Information Access</span></a></li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_pathconstruction_certificatestore">Lokalisierung des Zertifikatsspeichers</a></li>
+ </ol>
+ </li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_pathvalidation">Valdierung des Zertifikatspfads</a>
+ <ol>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_pathvalidation_chainingmode">G&uuml;ltigkeitsmodell f&uuml;r die Zertifikatskettenpr&uuml;fung</a></li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_pathvalidation_trustprofile">Vertrauensprofile</a></li>
+ </ol>
+ </li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_revocationchecking">Widerrufspr&uuml;fung</a>
+ <ol>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_revocationchecking_enablechecking">Aktivieren
+ der Widerrufspr&uuml;fung</a></li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_revocationchecking_maxrevocationage">Maximales Alter der Widerrufsinformation</a></li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_revocationchecking_serviceorder">Reihenfolge der Widerrufsdienste</a></li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_revocationchecking_archiving">Archivierung von Widerrufsinformationen</a></li>
+ <li><a href="#konfigurationsparameter_sp_certificatevalidation_revocationchecking_distributionpoint">Manuelle
+ Konfiguration von Verteilungspunkten f&uuml;r Widerrufsinformationen</a></li>
+ </ol>
+ </li>
+ </ol>
</li>
- </ol>
+ <li><a href="#konfigurationsparameter_sp_verifytransformsinfoprofile">Profil f&uuml;r Transformationen</a></li>
+ <li><a href="#konfigurationsparameter_sp_supplementprofile">Profil f&uuml;r Erg&auml;nzungsobjekte</a></li>
+ </ol>
</li>
- <li><a href="#konfigurationsparameter_hardwarekeymodule">Hardware-Schl&uuml;sselspeicher</a></li>
- <li><a href="#konfigurationsparameter_softwarekeymodule">Software-Schl&uuml;sselspeicher</a></li>
- <li><a href="#konfigurationsparameter_keygroup">Schl&uuml;sselgruppen</a></li>
- <li><a href="#konfigurationsparameter_keygroupmapping">Zuordnung von Schl&uuml;sselgruppen zu Kunden</a></li>
- <li><a href="#konfigurationsparameter_crlarchive">Archivierungsdauer f&uuml;r Widerrufsinformationen</a></li>
- <li><a href="#konfigurationsparameter_crldp">Manuelle Konfiguration von Verteilungspunkten f&uuml;r Widerrufslisten</a></li>
- <li><a href="#konfigurationsparameter_profiles">Vordefinierte Profile</a></li>
- <li><a href="#konfigurationsparameter_trustprofile">Vertrauensprofile</a></li>
</ol>
</li>
<li><a href="#beispielkonfigurationen">Beispielkonfigurationen</a>
@@ -77,9 +107,35 @@
<hr/>
<h1><a name="übersicht" id="übersicht"></a>1 &Uuml;bersicht </h1>
<p>Dieses Handbuch beschreibt detailliert die Konfigurationsm&ouml;glichkeiten f&uuml;r MOA SP/SS. Wenn nicht anders angegeben, beziehen sich die Erl&auml;uterungen sowohl auf die Konfiguration des Webservices als auch auf die Konfiguration von MOA SP/SS f&uuml;r den Einsatz als Klassenbibliothek.</p>
- <h2><a name="übersicht_zentraledatei" id="übersicht_zentraledatei"></a>1.1 Zentrale Konfigurationsdatei</h2>
+ <h2><a name="&uuml;bersicht_allgemeines" id="&uuml;bersicht_allgemeines"></a>1.1 Allgemeines</h2>
+ <h3><a name="&uuml;bersicht_allgemeines_namenskonventionen" id="&uuml;bersicht_allgemeines_namenskonventionen"></a>1.1.1 Namenskonventionen </h3>
+ <p>Folgende Namenraum-Pr&auml;fixe werden in diesem Handbuch zur Kennzeichnung der Namenr&auml;ume
+ von XML-Elementen verwendet: </p>
+ <table class="fixedWidth" border="1" cellpadding="2">
+ <tr>
+ <th scope="col">Pr&auml;fix</th>
+ <th scope="col">Namenraum</th>
+ </tr>
+ <tr>
+ <td><code>cfg</code></td>
+ <td><code>http://reference.e-government.gv.at/namespace/moaconfig/20021122#</code></td>
+ </tr>
+ <tr>
+ <td><code>dsig</code></td>
+ <td><code>http://www.w3.org/2000/09/xmldsig#</code></td>
+ </tr>
+ <tr>
+ <td>moa</td>
+ <td><code>http://reference.e-government.gv.at/namespace/moa/20020822#</code></td>
+ </tr>
+ <tr>
+ <td><code>xs</code></td>
+ <td><code>http://www.w3.org/2001/XMLSchema</code></td>
+ </tr>
+ </table>
+ <h2><a name="übersicht_zentraledatei" id="übersicht_zentraledatei"></a>1.2 Zentrale Konfigurationsdatei</h2>
<p>Die Konfiguration von MOA SP/SS erfolgt zentral &uuml;ber eine einzige Konfigurationsdatei. Das Format der Konfigurationsdatei ist XML und muss dem Schema <a href="./MOA-SPSS-config-1.3.xsd">MOA-SPSS-config-1.3.xsd</a> entsprechen. <a href="#konfigurationsparameter">Abschnitt 2</a> erl&auml;utert die Konfigurationsm&ouml;glichkeiten im Einzelnen.</p>
- <h3><a name="&uuml;bersicht_zentraledatei_aktualisierung" id="&uuml;bersicht_zentraledatei_aktualisierung"></a>1.1.1
+ <h3><a name="&uuml;bersicht_zentraledatei_aktualisierung" id="&uuml;bersicht_zentraledatei_aktualisierung"></a>1.2.1
Aktualisierung auf das Format von MOA SP/SS 1.3</h3>
<p>Mit dem Wechsel auf Version 1.3 verwendet MOA SP/SS ein neues, &uuml;bersichtlicheres Format f&uuml;r die
XML-Konfigurationsdatei. </p>
@@ -93,15 +149,16 @@
an, der zweite Parameter Pfad und Dateiname f&uuml;r die zu erzeugende Konfigurationsdatei im neuen Format (<span class="remark">Hinweis:
Die Beispielpfade beziehen sich auf Windows-Betriebssysteme; f&uuml;r Unix-Betriebssysteme w&auml;hlen Sie bitte sinngem&auml;&szlig;e
Pfade.</span>). </p>
- <h2><a name="übersicht_bekanntmachung" id="übersicht_bekanntmachung"></a>1.2 Bekanntmachung der Konfigurationsdatei</h2>
+ <h2><a name="übersicht_bekanntmachung" id="übersicht_bekanntmachung"></a>1.3 Bekanntmachung der Konfigurationsdatei</h2>
<p>Die zentrale Konfigurationsdatei von MOA SP/SS wird der <span class="term">Java Virtual Machine</span>, in der MOA SP/SS l&auml;uft, durch eine <span class="term">System Property </span> mitgeteilt (wird beim Starten der <span class="term">Java Virtual Machine</span> in der Form <code>-D&lt;name&gt;=&lt;wert&gt;</code> gemacht). Der Name der <span class="term">System Property</span> lautet <code>moa.spss.server.configuration</code>; als Wert der <span class="term">System Property</span> ist der Pfad sowie der Name der Konfigurationsdatei im Dateisystem anzugeben, z.B.</p>
<pre>moa.spss.server.configuration=C:/Programme/apache/tomcat-4.1.30/conf/moa-spss/moa-spss.config.xml
</pre>
<p>Weitere Informationen zum Bekanntmachen der zentralen Konfigurationsdatei f&uuml;r MOA SP/SS erhalten Sie in <a href="../install/install.html#webservice_basisinstallation_installation_spssdeploy">Abschnitt 2.1.2.3</a> des Installationshandbuchs.</p>
-<h3><a name="übersicht_bekanntmachung_laufenderbetrieb" id="übersicht_bekanntmachung_laufenderbetrieb"></a>1.2.1 Aktualisierung der Konfiguration im laufenden Betrieb</h3>
+<h3><a name="übersicht_bekanntmachung_laufenderbetrieb" id="übersicht_bekanntmachung_laufenderbetrieb"></a>1.3.1
+ Aktualisierung der Konfiguration im laufenden Betrieb</h3>
<p>Wird MOA SP/SS als Webservice eingesetzt, kann durch Aufrufen einer speziellen URL des Webservice ein erneutes Einlesen der Konfigurationsdatei erzwungen werden. Damit ist es m&ouml;glich, &Auml;nderungen an der Konfigurationsdatei vorzunehmen, und diese &Auml;nderungen ohne Neustart des zu Grunde liegenden Servlet Containers in den Betrieb zu &uuml;bernehmen.</p>
<p>Weitere Informationen zum erneuten Einlesen der Konfigurationsdatei im Webservice-Betrieb erhalten Sie in <a href="../install/install.html#webservice_basisinstallation_installation_changeonthefly">Abschnitt 2.1.2.5</a> des Installationshandbuchs.</p>
-<h2><a name="übersicht_logging" id="übersicht_logging"></a>1.3 Konfiguration des Loggings</h2>
+<h2><a name="übersicht_logging" id="übersicht_logging"></a>1.4 Konfiguration des Loggings</h2>
<p>MOA SP/SS verwendet als Framework f&uuml;r Logging-Information die Open Source Software <code>log4j</code>. Die Konfiguration der Logging-Information erfolgt nicht direkt durch MOA SP/SS, 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>
<p>
<pre>log4j.configuration=file:/C:/Programme/apache/tomcat-4.1.30/conf/moa-spss/log4j.properties</pre>
@@ -110,553 +167,843 @@
<h1><a name="konfigurationsparameter"></a>2 Konfigurationsparameter</h1>
<p>Nachfolgend werden die verf&uuml;gbaren Konfigurationsparameter der zentralen Konfigurationsdatei im Detail erl&auml;utert. Die Reihenfolge der Abhandlung entspricht der Reihenfolge des vorgeschriebenen Auftretens in der Konfigurationsdatei. F&uuml;r beispielhafte Konfigurationsdateien siehe <a href="#beispielkonfigurationen">Abschnitt 3</a>. </p>
<p>Muss der Wert eines Konfigurationsparameters eine URL oder eine Pfadangabe sein, und wird als konkreter Wert eine relative URL bzw. ein relativer Pfad angegeben, so wird diese Angabe relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist.</p>
- <p>Pr&auml;fixe f&uuml;r Namenr&auml;ume von XML-Elementen werden wie folgt verwendet:</p>
+ <h2><a name="konfigurationsparameter_allgemein" id="konfigurationsparameter_allgemein"></a>2.1
+ Allgemeine Parameter</h2>
+ <h3><a name="konfigurationsparameter_allgemein_hardwarecryptomodule" id="konfigurationsparameter_allgemein_hardwarecryptomodule"></a>2.1.1 Hardwarebasiertes Kryptographiemodul</h3>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <th scope="col">Pr&auml;fix</th>
- <th scope="col">Namenraum</th>
+ <td>Name</td>
+ <td><code>cfg:Common/cfg:HardwareCryptoModule</code></td>
</tr>
<tr>
- <td><code>cfg</code></td>
- <td><code>http://reference.e-government.gv.at/namespace/moaconfig/20021122#</code></td>
+ <td> Gebrauch</td>
+ <td>Null mal bis unbeschr&auml;nkt oft </td>
</tr>
<tr>
- <td><code>dsig</code></td>
- <td><code>http://www.w3.org/2000/09/xmldsig#</code></td>
+ <td>Erl&auml;uterung</td>
+ <td><p> Mit diesem Element wird MOA SP bzw. SS die Verf&uuml;gbarkeit eines Hardware-Kryptographiemoduls
+ mitgeteilt. Wird ein solches Hardware-Kryptographiemodul konfiguriert, versucht MOA SP/SS das
+ Hardware-Kryptographiemodul f&uuml;r die Verifikation des Signaturwerts (MOA SP) bzw. f&uuml;r die Berechnung
+ von Hashwerten (MOA SP und MOA SS) anstatt des standardm&auml;&szlig;ig konfigurierten Software-Kryptographiemoduls
+ zu verwenden. </p>
+ <p>Werden mehrere Hardware-Kryptographiemodule konfiguriert, pr&uuml;ft MOA SP/SS entsprechend
+ der Konfigurationsreihenfolge der Hardware-Kryptographiemodule, ob eines der Module die ben&ouml;tigte
+ Funktion (Hashwertberechnung, Siganturpr&uuml;fung) zur Verf&uuml;gung stellt. Verwendet wird das erste Hardware-Kryptographiemodul,
+ das ide ben&ouml;tigte Funktion zur Verf&uuml;gung stellen kann. </p>
+ <p>Das Element weist bis zu drei Kindelemente auf:</p>
+ <ul>
+ <li>Element <code>cfg:Name</code>: Dieses obligatorische Element vom Typ <code>xs:string</code> enth&auml;lt
+ den Dateinamen der DLL (Windows) oder der Shared-Library (Unix), welche die PKCS#11-Schnittstelle
+ zum Hardware-Kryptographiemodul implementiert; der Wert enth&auml;lt entweder einen Dateinamen
+ mit absoluter Pfadangabe oder einen Dateinamen ohne Pfadangabe. Im letzteren Fall wird der Dateiname
+ relativ zum Suchpfad des Betriebssystems interpretiert. </li>
+ <li>Element <code>cfg:SlotId</code>: Dieses optionale Element vom Typ <code>xs:string</code> gibt
+ des Slot der PKCS#11-Schnittstelle an, &uuml;ber den das Hardware-Kryptographiemodul von MOA
+ SP/SS angesprochen werden soll. Fehlt dieses Attribut, w&auml;hlt MOA SP/SS selbst einen Slot
+ aus der Liste der verf&uuml;gbaren Slots aus. </li>
+ <li>Element <code>cfg:UserPIN</code>: Dieses obligatorische Element vom Typ <code>xs:string</code> enth&auml;lt
+ den PIN-Code zur Freischaltung der Kryptographiefunktionen &uuml;ber die PKCS#11-Schnittstelle
+ des Hardware-Kryptographiemoduls. </li>
+ </ul></td>
</tr>
+ </table>
+ <h2><a name="konfigurationsparameter_ss" id="konfigurationsparameter_ss"></a>2.2 Parameter f&uuml;r MOA SS</h2>
+ <h3><a name="konfigurationsparameter_ss_keymodules" id="konfigurationsparameter_ss_keymodules"></a>2.2.1 Schl&uuml;sselspeicher</h3>
+ <h4><a name="konfigurationsparameter_ss_keymodules_hardwarekeymodule" id="konfigurationsparameter_ss_keymodules_hardwarekeymodule"></a>2.2.1.1 Hardware-Schl&uuml;sselspeicher</h4>
+ <table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td>moa</td>
- <td><code>http://reference.e-government.gv.at/namespace/moa/20020822#</code></td>
+ <td>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:KeyModules/cfg:HardwareKeyModule</code></td>
</tr>
<tr>
- <td><code>xs</code></td>
- <td><code>http://www.w3.org/2001/XMLSchema</code></td>
+ <td>Gebrauch</td>
+ <td>Null mal bis unbeschr&auml;nkt oft; zumindest ein Hardware- (<code>cfg:HardwareKeyModule</code>) oder
+ Software-Schl&uuml;sselspeicher (<code>cfg:SoftwareKeyModule</code>) muss
+ jedoch vorhanden sein</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</td>
+ <td><p>Mit diesem Element wird MOA SS die Verf&uuml;gbarkeit eines Hardware-Schl&uuml;sselspeichers mitgeteilt. </p>
+ <p>Das Element weist bis zu vier Kindelemente auf:</p>
+ <ul>
+ <li>Element <code>cfg:Id</code>: Dieses obligatorische Element vom Typ <code>xs:token</code> enth&auml;lt
+ einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der
+ XML-Konfigurationsdatei eindeutig sein muss. Mit Hilfe dieses Identifikators wird im Konfigurationselement <code>cfg:SignatureCreation/cfg:KeyGroup</code> auf
+ dieses Konfigurationselement referenziert.</li>
+ <li> Element <code>cfg:Name</code>: Dieses obligatorische Element vom Typ <code>xs:string</code> enth&auml;lt
+ den Dateinamen der DLL (Windows) oder der Shared-Library (Unix), welche die PKCS#11-Schnittstelle
+ zum Hardware-Schl&uuml;sselspeicher implementiert; der Wert enth&auml;lt entweder einen Dateinamen
+ mit absoluter Pfadangabe oder einen Dateinamen ohne Pfadangabe. Im letzteren Fall wird der Dateiname
+ relativ zum Suchpfad des Betriebssystems interpretiert. </li>
+ <li>Element <code>cfg:SlotId</code>: Dieses optionale Element vom Typ <code>xs:string</code> gibt des
+ Slot der PKCS#11-Schnittstelle an, &uuml;ber den der Hardware-Schl&uuml;sselspeicher von MOA SS
+ angesprochen werden soll. Fehlt dieses Attribut, w&auml;hlt MOA SS selbst einen Slot aus der Liste
+ der verf&uuml;gbaren Slots aus. </li>
+ <li>Element <code>cfg:UserPIN</code>: Dieses obligatorische Element vom Typ <code>xs:string</code> enth&auml;lt
+ den PIN-Code zur Freischaltung der Schl&uuml;sselverwendung &uuml;ber die PKCS#11-Schnittstelle
+ des Hardware-Schl&uuml;sselspeichers. </li>
+ </ul> </td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_kanonisierungsalgorithmus" id="konfigurationsparameter_kanonisierungsalgorithmus"></a>2.1 Kanonisierungs-Algorithmus</h2>
+ <h4><a name="konfigurationsparameter_ss_keymodules_softwarekeymodule" id="konfigurationsparameter_ss_keymodules_softwarekeymodule"></a>2.2.1.2
+ Software-Schl&uuml;sselspeicher</h4>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
<td>Name</td>
- <td><code>cfg:CanonicalizationAlgorithm</code></td>
+ <td><code>cfg:SignatureCreation/cfg:KeyModules/cfg:SoftwareKeyModule</code></td>
</tr>
<tr>
- <td>Relevanz</td>
- <td>MOA SS </td>
- </tr>
- <tr>
- <td> Gebrauch</td>
- <td>optional</td>
+ <td>Gebrauch</td>
+ <td>Null mal bis unbeschr&auml;nkt oft; zumindest ein Hardware- (<code>cfg:HardwareKeyModule</code>) oder
+ Software-Schl&uuml;sselspeicher (<code>cfg:SoftwareKeyModule</code>) muss jedoch vorhanden sein</td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Als Inhalt des Elements kann der Kanonisierungs-Algorithmus, der f&uuml;r das Erstellen von XML-Signaturen verwendet werden soll und in der Signatur als Inhalt von <code>dsig:Signature/dsig:SignedInfo/dsig:CanonicalizationMethod</code> aufscheint, spezifiziert werden. Folgende Werte d&uuml;rfen verwendet werden:</p>
- <p>
- <pre>http://www.w3.org/TR/2001/REC-xml-c14n-20010315 <br>http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments <br>http://www.w3.org/2001/10/xml-exc-c14n# <br>http://www.w3.org/2001/10/xml-exc-c14n#WithComments </pre>
- <p></p> <p>Wird das Element nicht angegeben, wird folgender Wert als Default-Wert verwendet:</p>
- <pre>http://www.w3.org/TR/2001/REC-xml-c14n-20010315 </pre> <p>Für die genaue Bedeutung der Werte siehe die <a href="http://www.w3.org/TR/xmldsig-core/" target="_blank">Spezifikation für XML-Signaturen</a>.</p></td>
+ <td><p>Mit diesem Element wird MOA SS die Verf&uuml;gbarkeit eines Software-Schl&uuml;sselspeichers in
+ Form einer PKCS#12-Datei mitgeteilt. </p>
+ <p>Das Element weist drei obligatorische Kindelemente auf:</p>
+ <ul>
+ <li>Element <code>cfg:Id</code>: Dieses Element vom Typ <code>xs:token</code> enth&auml;lt einen
+ frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der XML-Konfigurationsdatei
+ eindeutig sein muss. Mit Hilfe dieses Identifikators wird im Konfigurationselement <code>cfg:SignatureCreation/cfg:KeyGroup</code> auf
+ dieses Konfigurationselement referenziert.</li>
+ <li> Element <code>cfg:Filename</code>: Dieses Element vom Typ <code>xs:string</code> enth&auml;lt
+ den Dateinamen der PKCS#12-Datei, die den Software-Schl&uuml;sselspeicher repr&auml;sentiert. Der
+ Wert enth&auml;lt einen Dateinamen mit absoluter oder relativer Pfadangabe. Eine relative Pfadangabe
+ wird von MOA SS relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale Konfigurationsdatei
+ gespeichert ist.</li>
+ <li>Element <code>cfg:Password</code>: Dieses Element vom Typ <code>xs:string</code> enth&auml;lt
+ das Passwort zum Entschl&uuml;sseln der Inhalte der PKCS#12-Datei. </li>
+ </ul> </td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_digestalgorithmus" id="konfigurationsparameter_digestalgorithmus"></a>2.2 Digest-Algorithmus</h2>
+ <h3><a name="konfigurationsparameter_ss_keygroup" id="konfigurationsparameter_ss_keygroup"></a>2.2.2 Schl&uuml;sselgruppe</h3>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
<td>Name</td>
- <td><code>cfg:DigestAlgorithm</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SS </td>
+ <td><code>cfg:SignatureCreation/cfg:KeyGroup</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>einmal bis unbeschr&auml;nkt oft </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Als Inhalt des Elements kann der Digest-Algorithmus, der f&uuml;r das Erstellen von XML-Signaturen verwendet werden soll und in der Signatur als Inhalt von <code>dsig:Signature/dsig:SignedInfo/dsig:Reference/dsig:DigestMethod</code> aufscheint, spezifiziert werden. Folgende Werte d&uuml;rfen verwendet werden:</p>
- <p>
- <pre>http://www.w3.org/2000/09/xmldsig#sha1
-</pre>
- <p></p>
- <p>Wird das Element nicht angegeben, wird folgender Wert als Default-Wert verwendet:</p>
- <pre>http://www.w3.org/2000/09/xmldsig#sha1</pre> <p>F&uuml;r die genaue Bedeutung der Werte siehe die <a href="http://www.w3.org/TR/xmldsig-core/" target="_blank">Spezifikation f&uuml;r XML-Signaturen</a>.</p></td>
+ <td><p>Mit diesem Element wird in MOA SS eine Schl&uuml;sselgruppe definiert. Eine Schl&uuml;sselgruppe
+ ist eine Zusammenfassung von einem oder mehreren privaten Schl&uuml;sseln, die in Hardware- bzw. Softwareschl&uuml;sselspeichern
+ (vergleiche Abschnitte <a href="#konfigurationsparameter_ss_keymodules_hardwarekeymodule">2.2.1.1</a> bzw. <a href="#konfigurationsparameter_ss_keymodules_softwarekeymodule">2.2.1.2</a>)
+ verwaltet werden. Die Schl&uuml;sselgruppe wird vom Kunden von MOA SS &uuml;ber einen eindeutigen Bezeichner
+ im Request zur Signaturerstellung angesprochen. </p>
+ <p>Sinn der Zusammenfassung von mehreren privaten Schl&uuml;sseln zu einer Schl&uuml;sselgruppe ist
+ es, dass MOA SS selbst entscheidet, welcher konkrete Schl&uuml;ssel aus der Schl&uuml;sselgruppe
+ zur Erstellung der Signatur verwendet wird. Durch die somit m&ouml;gliche Parallelisierung (mehrere
+ private Schl&uuml;ssel werden parallel f&uuml;r Anfragen, die auf die gleiche Schl&uuml;sselgruppe
+ referenzieren) l&auml;sst sich der Durchsatz der erstellten Signaturen verbessern. </p>
+ <p>Das Element <code>cfg:SignatureCreation/cfg:KeyGroup</code> hat folgenden Element-Inhalt:</p>
+ <ul>
+ <li>Element <code>cfg:Id</code>: Dieses obligatorische Element vom Typ <code>xs:token</code> enth&auml;lt
+ einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der
+ XML-Konfigurationsdatei eindeutig sein muss. Mit Hilfe dieses Identifikators wird im Konfigurationselement <code>cfg:SignatureCreation/cfg:KeyGroupMapping</code> auf
+ dieses Konfigurationselement referenziert. Weiters wird dieser Identifikator im Request zur Erstellung
+ der Signatur verwendet, um die zu verwendende Schl&uuml;sselgruppe anzugeben.</li>
+ <li>Element <code>cfg:Key</code>: Dieses Element muss zumindest einmal vorkommen. Jedes Element beschreibt
+ einen der privaten Schl&uuml;ssel, aus denen sich die Schl&uuml;sselgruppe zusammensetzt. Das Element
+ hat folgenden Element-Inhalt:
+ <ul>
+ <li>Element <code>cfg:KeyModuleId</code>: Dieses Element kommt genau einmal vor. Mit ihm wird
+ auf einen der konfigurierten Hardware- oder Software-Schl&uuml;sselspeicher referenziert.
+ Sein Textinhalt vom Typ <code>xs:token</code> enth&auml;lt den Identifikator des Hardware-
+ oder Software-Schl&uuml;sselspeichers, so wie er in <code>cfg:SignatureCreation/cfg:KeyModules/cfg:HardwareKeyModule/cfg:Id</code> bzw. <code>cfg:SignatureCreation/cfg:KeyModules/cfg:SoftwareKeyModule/cfg:Id</code> festgelegt
+ wurde. </li>
+ <li>Element <code>cfg:KeyCertIssuerSerial</code>: Dieses Element kommt ebenfalls genau einmal
+ vor. Mit ihm wird ein privater Schl&uuml;ssel innerhalb des mit <code>cfg:KeyModuleId</code> ausgew&auml;hlten
+ Schl&uuml;sselspeichers ausgew&auml;hlt (sowohl Hardware- als auch Softwareschl&uuml;sselspeicher
+ k&ouml;nnen ja prinzipiell mehr als nur einen einzigen privaten Schl&uuml;ssel verwalten).
+ Das Element hat folgenden Element-Inhalt:
+ <ul>
+ <li>Element <code>dsig:X509IssuerName</code>: Dieses Element kommt genau einmal vor.
+ Sein Textinhalt vom Typ <code>xs:string</code> enth&auml;lt den Namen des Ausstellers
+ des Zertifikats f&uuml;r den ausgew&auml;hlten privaten Schl&uuml;ssel.</li>
+ <li>Element <code>dsig:X509SerialNumber</code>: Dieses Element kommt genau einmal vor.
+ Sein Textinhalt vom Typ <code>xs:integer</code> enth&auml;lt die Seriennummer des Zertifikats
+ f&uuml;r den ausgew&auml;hlten privaten Schl&uuml;ssel. </li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>Um auf einfache Weise f&uuml;r alle in Ihren Schl&uuml;sselspeichern enthaltenen privaten Schl&uuml;ssel
+ die jeweiligen Werte f&uuml;r <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code> zu
+ erhalten, gehen Sie am besten wie folgt vor:</p>
+ <ol>
+ <li>Erfassen Sie in der zentralen Konfigurationsdatei alle Ihre Schl&uuml;sselspeicher mit Hilfe
+ der Konfigurationselemente <code>cfg:SignatureCreation/cfg:KeyModules/cfg:HardwareKeyModule</code> bzw. <code>cfg:SignatureCreation/cfg:KeyModules/cfg:SoftwareKeyModule</code>. </li>
+ <li>Starten Sie nun - mit bewusst fehlenden <code>cfg:SignatureCreation/cfg:KeyGroup</code> Elementen - den MOA SP/SS Server.
+ Stellen Sie dabei sicher, dass das Log-Level f&uuml;r den Logger <code>moa.spss.server</code> zumindest
+ auf das Niveau <code>info</code> eingestellt ist (Informationen zur Konfiguration des Loggings
+ von MOA SP/SS finden Sie in <a href="../install/install.html#webservice_basisinstallation_logging">Abschnitt
+ 2.1.3</a> des Installationshandbuchs). Im Log-File werden dann alle verf&uuml;gbaren privaten Schl&uuml;ssel
+ an Hand der Werte <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code> aufgelistet.
+ Vergleichen Sie den folgenden beispielhaften Auszug:<br>
+ <pre>INFO | 15 15:10:14,737 | moa.spss.server | TID=startup NID=node1 MSG=Key <br> ID=SKM_Kunde1;CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT;7
+INFO | 15 15:10:14,737 | moa.spss.server | TID=startup NID=node1 MSG=Key
+ ID=SKM_allgemein;CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT;9<br>INFO | 15 15:10:14,737 | moa.spss.server | TID=startup NID=node1 MSG=Key <br> ID=SKM_Kunde2;CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT;8</pre>
+ Der Wert der Eigenschaft <code>ID</code> des Logging-Eintrags gliedert sich in drei Teile:
+ <ol>
+ <li>Der erste Teil enth&auml;lt den Identifikator des Hardware- bzw. Softwareschl&uuml;sselspeichers,
+ so wie er im entsprechenden Konfigurationselement <code>cfg:SignatureCreation/cfg:KeyModules/cfg:HardwareKeyModule</code> bzw. <code>cfg:SignatureCreation/cfg:KeyModules/cfg:SoftwareKeyModule</code> erfasst
+ wurde. </li>
+ <li>Der zweite Teil enth&auml;lt nach dem ersten Semikolon den Namen des Ausstellers des Zertifikats
+ f&uuml;r den privaten Schl&uuml;ssel, so wie er in <code>dsig:X509IssuerName</code> ben&ouml;tigt
+ wird. </li>
+ <li>Der dritte Teil enth&auml;lt nach dem zweiten Semikolon die Seriennummer des Zertifikats f&uuml;r
+ den privaten Schl&uuml;ssel, so wie er in <code>dsig:X509SerialNumber</code> ben&ouml;tigt wird. </li>
+ </ol>
+ </li>
+ <li>Erfassen Sie nun mit Hilfe der neu gewonnenen Informationen die Schl&uuml;sselgruppen, die in
+ MOA SS zur Verf&uuml;gung stehen sollen. </li>
+ </ol>
+ <p>Wenn Ihnen f&uuml;r einen privaten Schl&uuml;ssel, den Sie in eine Schl&uuml;sselgruppe aufnehmen
+ wollen, das Zertifikat bekannt ist und es in Form einer DER-kodierten Datei vorliegt, k&ouml;nnen
+ Sie alternativ das Script <code>certtool</code> aus dem Verzeichnis <code>tools</code> im MOA-Installationsverzeichnis
+ verwenden, um zu den Werten f&uuml;r <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code> zu
+ kommen: </p>
+ <pre>certtool -info &lt;certfilename&gt;</pre> <p><code>&lt;certfilename&gt;</code> enth&auml;lt den Namen der DER-kodierten Zertifikatsdatei, f&uuml;r
+ die die beiden Werte <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code> geliefert
+ werden sollen. Eine beispielhafte Ausgabe des Scripts sieht wie folgt aus: </p>
+ <pre>SubjectDN (RFC2253):
+ CN=Test: Signaturdienst aller Kunden: ECDSA (P192v1),OU=Technik und Standards,O=Stabsstelle IKT-Strategie des Bundes,C=AT
+IssuerDN (RFC2253) :
+ CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT<br>Serial Number :
+ 9</pre> <p>Die Werte f&uuml;r <code>IssuerDN (RFC2253)</code> sowie <code>Serial Number</code> entsprechen
+ den Werten f&uuml;r <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code>.</p></td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_genericconfiguration" id="konfigurationsparameter_genericconfiguration"></a>2.3 Generic Configuration </h2>
- <p> Das Element <code>cfg:GenericConfiguration</code> erm&ouml;glicht die Bekanntgabe eines Name/Wert-Paares mittels seiner Attribute <code>name</code> und <code>value</code>. Das Element kann beliebig oft verwendet werden. Nachfolgend findet sich eine Erl&auml;uterung jener Namen (Attribut <code>name</code>), die MOA zu interpretieren wei&szlig;.</p>
- <h3><a name="konfigurationsparameter_genericconfiguration_zertpfad" id="konfigurationsparameter_genericconfiguration_zertpfad"></a>2.3.1 Parameter f&uuml;r die Zertifikatspfadbildung</h3>
- <h4><a name="konfigurationsparameter_genericconfiguration_zertpfad_autoaddcertificates" id="konfigurationsparameter_genericconfiguration_zertpfad_autoaddcertificates"></a>2.3.1.1 Cachen von Zertifikaten</h4>
+ <h3><a name="konfigurationsparameter_ss_keygroupmapping" id="konfigurationsparameter_ss_keygroupmapping"></a>2.2.3
+ Zuordnung von Schl&uuml;sselgruppen zu Kunden</h3>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td> <code>cfg:GenericConfiguration/@name</code> </td>
- <td><code>autoAddCertificates</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:KeyGroupMapping</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>einmal bis unbeschr&auml;nkt oft </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Gibt an, ob Zertifikate, die in einer zu pr&uuml;fenden Signatur enthalten sind bzw. bei der Zertifikatspfaderstellung durch Auswertung der Zertifikatserweiterung <span class="term">Authority Information Access</span> (siehe auch Parameter <code>useAuthorityInfoAccess</code>) aus dem Internet geladen werden, automatisch in den lokalen Zertifikatsspeicher hinzugef&uuml;gt werden sollen (siehe auch Parameter <code>DirectoryCertStoreParameters.RootDir</code>).</p>
- <p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind <code>true</code> oder <code>false</code>.</p>
- <p>Der Default-Wert lautet <code>true</code>. </p>
- </td>
+ <td><p> Das Element <code>cfg:SignatureCreation/cfg:KeyGroupMapping</code> ordnet einem Kunden von MOA SS die ihm zur Verf&uuml;gung
+ stehenden Schl&uuml;sselgruppen zu, indem das den Kunden repr&auml;sentierende SSL-Clientzertifikat
+ mit einer oder mehreren Schl&uuml;sselgruppen assoziiert wird. </p>
+ <p>Das Element hat folgenden Element-Inhalt:</p>
+ <ul>
+ <li>Element <code>cfg:CustomerId</code>: Dieses Element bezeichnet auf eindeutige
+ Weise das den Kunden repr&auml;sentierende SSL-Clientzertifikat. Der Aufbau des Elements enspricht
+ dem Aufbau des Elements <code>cfg:KeyCertIssuerSerial</code> in Abschnitt <a href="#konfigurationsparameter_ss_keygroup">2.2.2</a>.
+ Um zu den Werten f&uuml;r Ausstellername und Seriennummer des SSL-Clientzertifikats zu kommen,
+ k&ouml;nnen Sie auch hier das Script <code>certtool</code> (vergleiche Abschnitt <a href="#konfigurationsparameter_ss_keygroup">2.2.2</a>)
+ verwenden. </li>
+ <li>Element <code>cfg:KeyGroupId</code>: Dieses Element vom Typ <code>xs:token</code> kommt so oft
+ vor, wie Schl&uuml;sselgruppen
+ einem bestimmten SSL-Clientzertifikat zugeordnet werden sollen, mindestens jedoch einmal. Sein
+ Wert repr&auml;sentiert dem Identifikator der Schl&uuml;sselgruppe, so wie er in <code>cfg:SignatureCreation/cfg:KeyGroup/cfg:Id</code> festgelegt
+ wurde. </li>
+ </ul>
+ <p class="remark">Bitte beachten Sie: F&uuml;r maximal ein Konfigurationselement <code>cfg:SignatureCreation/cfg:KeyGroupMapping</code> kann <code>cfg:CustomerId</code> auch
+ weggelassen werden. Die darin enthaltenen Schl&uuml;sselgruppen stehen dann allen Kunden von MOA
+ SS gleicherma&szlig;en zur Verf&uuml;gung.</p></td>
</tr>
</table>
- <h4><a name="konfigurationsparameter_genericconfiguration_zertpfad_useauthorityinfoaccess" id="konfigurationsparameter_genericconfiguration_zertpfad_useauthorityinfoaccess"></a>2.3.1.2 Auswertung der Zertifikatserweiterung <span class="term">Authority Information Access</span></h4>
+ <h3><a name="konfigurationsparameter_ss_xmldsig" id="konfigurationsparameter_ss_xmldsig"></a>2.2.4 Parameter
+ f&uuml;r XML-Signaturen </h3>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td> <code>cfg:GenericConfiguration/@name</code> </td>
- <td><code>useAuthorityInfoAccess</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:XMLDSig/cfg:CanonicalizationAlgorithm</code></td>
</tr>
<tr>
- <td>Gebrauch</td>
- <td>optional</td>
+ <td> Gebrauch</td>
+ <td>Null mal oder einmal </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Gibt an, ob die Zertifikatserweiterung <span class="term">Authority Information Access</span> f&uuml;r die Zertifikatspfaderstellung verwendet werden soll. Wird der Wert auf <code>true</code> gesetzt, dann setzt MOA auch den Parameter <code>autoAddCertificate</code> automatisch auf <code>true</code> und ignoriert den gegebenenfalls in der Konfigurationsdatei daf&uuml;r gesetzten Wert. </p>
- <p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind <code>true</code> oder <code>false</code>.</p>
- <p>Der Default-Wert lautet <code>true</code>. </p></td>
+ <td><p> Als Inhalt des Elements kann der Kanonisierungs-Algorithmus, der f&uuml;r das Erstellen von XML-Signaturen verwendet werden soll und in der Signatur als Inhalt von <code>dsig:Signature/dsig:SignedInfo/dsig:CanonicalizationMethod</code> aufscheint, spezifiziert werden. Folgende Werte d&uuml;rfen verwendet werden:</p>
+ <p>
+ <pre>http://www.w3.org/TR/2001/REC-xml-c14n-20010315 <br>http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments <br>http://www.w3.org/2001/10/xml-exc-c14n# <br>http://www.w3.org/2001/10/xml-exc-c14n#WithComments </pre>
+ <p></p> <p>Wird das Element nicht angegeben, wird folgender Wert als Default-Wert verwendet:</p>
+ <pre>http://www.w3.org/TR/2001/REC-xml-c14n-20010315 </pre> <p>Für die genaue Bedeutung der Werte siehe die <a href="http://www.w3.org/TR/xmldsig-core/" target="_blank">Spezifikation für XML-Signaturen</a>.</p></td>
</tr>
</table>
- <h4><a name="konfigurationsparameter_genericconfiguration_zertpfad_dircertstoreparamsrootdir" id="konfigurationsparameter_genericconfiguration_zertpfad_dircertstoreparamsrootdir"></a>2.3.1.3 Lokalisierung des Zertifikatsspeichers</h4>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td> <code>cfg:GenericConfiguration/@name</code> </td>
- <td><code> DirectoryCertStoreParameters.RootDir</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:XMLDSig/cfg:DigestMethodAlgorithm</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>Null mal oder einmal </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Gibt ein Verzeichnis im lokalen Dateisystem an, das von MOA als lokaler Zertifikatsspeicher verwendet werden soll.
-
-</p>
- <p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind absolute oder relative Pfadangaben, z.B.:</p>
+ <td><p> Als Inhalt des Elements kann der Digest-Algorithmus, der f&uuml;r das Erstellen von XML-Signaturen verwendet werden soll und in der Signatur als Inhalt von <code>dsig:Signature/dsig:SignedInfo/dsig:Reference/dsig:DigestMethod</code> aufscheint, spezifiziert werden. Folgende Werte d&uuml;rfen verwendet werden:</p>
<p>
- <pre>C:/Programme/apache/tomcat-4.1.30/conf/moa-spss/certstore</pre>
- <pre>certstore</pre><p>Der Default-Wert lautet:</p>
- <pre>certstore</pre></td>
+ <pre>http://www.w3.org/2000/09/xmldsig#sha1
+</pre>
+ <p></p>
+ <p>Wird das Element nicht angegeben, wird folgender Wert als Default-Wert verwendet:</p>
+ <pre>http://www.w3.org/2000/09/xmldsig#sha1</pre> <p>F&uuml;r die genaue Bedeutung der Werte siehe die <a href="http://www.w3.org/TR/xmldsig-core/" target="_blank">Spezifikation f&uuml;r XML-Signaturen</a>.</p></td>
</tr>
</table>
- <h3><a name="konfigurationsparameter_genericconfiguration_widerruf" id="konfigurationsparameter_genericconfiguration_widerruf"></a>2.3.2 Parameter f&uuml;r die Widerrufspr&uuml;fung</h3>
- <h4><a name="konfigurationsparameter_genericconfiguration_widerruf_checkrevocation" id="konfigurationsparameter_genericconfiguration_widerruf_checkrevocation"></a>2.3.2.1 Aktivieren der Widerrufspr&uuml;fung</h4>
+ <h3><a name="konfigurationsparameter_ss_createtransformsinfoprofile" id="konfigurationsparameter_ss_createtransformsinfoprofile"></a>2.2.5 Profil f&uuml;r Transformationen</h3>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td> <code>cfg:GenericConfiguration/@name</code> </td>
- <td><code> checkRevocation</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:CreateTransformsInfoProfile</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>Null mal bis unbeschr&auml;nkt oft</td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Gibt an, ob bei der Zertifikats&uuml;berpr&uuml;fung im Zuge einer Signaturpr&uuml;fung auch der Zertifikatsstatus jedes einzelnen Zertifikats des gebildeten Zertifikatspfads &uuml;berpr&uuml;ft werden soll. </p>
- <p class="remark">Bitte beachten Sie: Die Widerrufspr&uuml;fung ist ein sehr wichtiger Schritt der Zertifikats&uuml;berpr&uuml;fung und somit der Signaturpr&uuml;fung. Eine Deaktivierung sollte nur in begr&uuml;ndeten Ausnahmef&auml;llen in Erw&auml;gung gezogen werden, z.B. f&uuml;r Testsituationen. </p> <p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind <code>true</code> oder <code>false</code>.</p>
- <p>Der Default-Wert lautet <code>true</code>. </p></td>
+ <td><p>MOA SS erlaubt die Hinterlegung von vordefinierten Profilen f&uuml;r Transformationen, die im Rahmen
+ einer XML-Signaturerstellung zur Anwendung kommen sollen. Im Request zur XML-Signaturerstellung
+ reicht es dann aus, auf dieses Profil zu referenzieren, anstatt die gesamten Transformationen explizit
+ anzugeben. </p>
+ <p><code>cfg:CreateTransformsInfoProfile</code> enth&auml;lt f&uuml;r ein bestimmtes Datenobjekt
+ f&uuml;r eine zu erstellende XML-Signatur die auf dieses Datenobjekt anzuwendenden Transformationen,
+ sowie allenfalls f&uuml;r die Durchf&uuml;hrung der Transformationen notwendige Erg&auml;nzungsobjekte
+ (z.B. einen zu importierenden Stylesheet f&uuml;r eine XSL-Transformation).</p>
+ <p><code>cfg:CreateTransformsInfoProfile</code> weist folgende obligatorische Kindelemene auf: </p>
+ <ul>
+ <li>Element<code> Id</code>: Dieses Element<code></code> vom Typ <code>xs:token</code> enth&auml;lt einen frei
+ w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der XML-Konfigurationsdatei
+ eindeutig sein muss. Dieser Identifikator wird im Request zur Erstellung der XML-Signatur verwendet,
+ um das hinterlegte Profil zu referenzieren (vergleiche Element <code>moa:CreateTransformsInfoProfileID</code>). </li>
+ <li>Element<code></code> <code>Location</code>: Dieses Element<code></code> vom Typ <code>xs:anyURI</code> enth&auml;lt
+ den Namen der XML-Datei, die das hinterlegte Profil beinhaltet. Der Wert enth&auml;lt eine relative
+ oder absolute URI. Eine relative URI
+ wird von MOA SS als File-URI relativ zum Lage jenes Verzeichnisses interpretiert, in dem die zentrale
+ Konfigurationsdatei gespeichert ist. Die XML-Datei muss als Wurzelelement das Element<code> moa:CreateTransformsInfoProfile
+ </code>enthalten.</li>
+ </ul> </td>
</tr>
</table>
- <h4><a name="konfigurationsparameter_genericconfiguration_widerruf_maxrevocationage" id="konfigurationsparameter_genericconfiguration_widerruf_maxrevocationage"></a>2.3.2.2 Maximales Alter der Widerrufsinformation </h4>
+ <h3><a name="konfigurationsparameter_ss_createsignatureenvironmentprofile" id="konfigurationsparameter_ss_createsignatureenvironmentprofile"></a>2.2.6 Profil f&uuml;r Signaturumgebung </h3>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td> <code>cfg:GenericConfiguration/@name</code> </td>
- <td><code> maxRevocationAge</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SSP</td>
+ <td>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:CreateSignatureEnvironmentProfile</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>Null mal bis unbeschr&auml;nkt oft</td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Gibt an, wie aktuell eine ggf. lokal gespeicherte Widerrufsinformation sein muss, damit sie von MOA SP als g&uuml;ltig angesehen wird. Ist die lokal gespeicherte Widerrufsinformation nicht aktuell genug, wird sie von MOA SP erneut aus dem Internet geladen.</p>
- <p>Dieser Parameter wird nur ausgewertet, wenn die Widerrufspr&uuml;fung aktiviert ist (siehe Parameter <code>checkRevocation</code>). </p>
- <p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind ganze Zahlen: </p>
- <ul>
- <li>Ein beliebiger negativer Wert bedeutet, dass eine Widerrufsinformation jedes Mal, wenn sie ben&ouml;tigt wird, neu aus dem Internet geladen wird. </li>
- <li>Der Wert <code>0</code> bedeutet, dass eine Widerrufsinformation dann neu geladen wird, wenn das Datum im Feld <code>nextUpdate</code> der entsprechenden Widerrufsliste bereits &uuml;berschritten ist.</li>
- <li>Ein positiver Wert gibt gibt die Zeitspanne in Millisekunden an, nach der eine ggf. vorhandene lokale Widerrufsinformation sp&auml;testens durch erneutes Laden aus dem Internet aktualisiert wird.</li>
- </ul> <p>Der Default-Wert lautet <code>0</code>. </p></td>
+ <td><p>MOA SS erlaubt die Hinterlegung von vordefinierten Profilen f&uuml;r die Signaturumgebung,
+ die im Rahmen einer XML-Signaturerstellung zur Anwendung kommen soll. Im Request zur XML-Signaturerstellung
+ reicht es dann aus, auf dieses Profil zu referenzieren, anstatt die Informationen zur Signaturumgebung
+ explizit anzugeben. </p>
+ <p><code>cfg:CreateSignatureEnvironmentProfile</code> enth&auml;lt f&uuml;r eine zu erstellende XML-Signatur,
+ die in ein bereits bestehendes XML-Dokument integriert werden soll, die Stelle, an der die XML-Signatur
+ eingef&uuml;gt werden soll, sowie allenfalls f&uuml;r die Verarbeitung des bestehenden XML-Dokuments
+ notwendige Erg&auml;nzungsobjekte (z.B. ein XML-Schema f&uuml;r das validierende Parsen des bestehenden
+ XML-Dokuments).</p>
+ <p><code>cfg:</code><code>CreateSignatureEnvironmentProfile</code> weist folgende obligatorische Kindelemene
+ auf: </p>
+ <ul>
+ <li>Element<code> Id</code>: Dieses Element<code></code> vom Typ <code>xs:token</code> enth&auml;lt
+ einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der
+ XML-Konfigurationsdatei eindeutig sein muss. Dieser Identifikator wird im Request zur Erstellung
+ der XML-Signatur verwendet, um das hinterlegte Profil zu referenzieren (vergleiche Element <code>moa:</code><code>CreateSignatureEnvironmentProfileID</code>). </li>
+ <li>Element<code></code> <code>Location</code>: Dieses Element<code></code> vom Typ <code>xs:anyURI</code> enth&auml;lt
+ den Namen der XML-Datei, die das hinterlegte Profil beinhaltet. Der Wert enth&auml;lt eine relative
+ oder absolute URI. Eine relative URI wird von MOA SS als File-URI relativ zum Lage jenes Verzeichnisses
+ interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist. Die XML-Datei muss als
+ Wurzelelement das Element<code> moa:CreateSignatureEnvironmentProfile </code>enthalten.</li>
+ </ul></td>
</tr>
</table>
- <h4><a name="konfigurationsparameter_genericconfiguration_widerruf_archiveRevocationInfo" id="konfigurationsparameter_genericconfiguration_widerruf_archiveRevocationInfo"></a>2.3.2.3 Archivierung von Widerrufsinformationen</h4>
+ <h2><a name="konfigurationsparameter_sp" id="konfigurationsparameter_sp"></a>2.3
+ Parameter f&uuml;r MOA SP </h2>
+ <h3> <a name="konfigurationsparameter_sp_certificatevalidation" id="konfigurationsparameter_sp_certificatevalidation"></a>2.3.1
+ Zertifikatsvalidierung</h3>
+ <h4><a name="konfigurationsparameter_sp_certificatevalidation_pathconstruction" id="konfigurationsparameter_sp_certificatevalidation_pathconstruction"></a>2.3.1.1
+ Konstruktion des Zertifikatspfads</h4>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_pathconstruction_autoaddcertificates" id="konfigurationsparameter_sp_certificatevalidation_pathconstruction_autoaddcertificates"></a>2.3.1.1.1 Cachen von Zertifikaten </h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td> <code>cfg:GenericConfiguration/@name</code> </td>
- <td><code> archiveRevocationInfo</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td> Name </td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathConstruction/cfg:AutoAddCertificates</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>genau einmal</td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Gibt an, ob mittlerweile ung&uuml;ltig gewordene (i.e. historische) Widerrufsinformationen von MOA SP archiviert werden soll. Dieser Parameter wird nur dann ausgewertet, wenn gleichzeitig auch der Parameter
-
-
- <code>DataBaseArchiveParameter.JDBCUrl</code> (siehe unten) angegeben wird. </p>
+ <td><p> Der Inhalt dieses Elements vom Typ <code>xs:boolean</code> gibt an, ob Zertifikate, die in einer
+ zu pr&uuml;fenden
+ Signatur enthalten sind bzw. bei der Zertifikatspfaderstellung durch Auswertung der Zertifikatserweiterung <span class="term">Authority
+ Information Access</span> (siehe
+ auch Parameter <code>cfg:UseAuthorityInfoAccess</code>) aus dem Internet geladen werden, automatisch
+ in den lokalen Zertifikatsspeicher (siehe Abschnitt <span class="comment">x.y.z</span>) hinzugef&uuml;gt werden sollen.</p>
<p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind <code>true</code> oder <code>false</code>.</p>
- <p>Der Default-Wert lautet <code>false</code>. </p></td>
+ </td>
</tr>
</table>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_pathconstruction_useauthorityinfoaccess" id="konfigurationsparameter_sp_certificatevalidation_pathconstruction_useauthorityinfoaccess"></a>2.3.1.1.2 Auswertung
+ der Zertifikatserweiterung <span class="term">Authority Information Access</span>
+ </h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td> <code>cfg:GenericConfiguration/@name</code> </td>
- <td><code> DataBaseArchiveParameter.JDBCUrl</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td> Name </td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathConstruction/cfg:UseAuthorityInfoAccess</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>genau einmal</td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Gibt eine JDBC-URL zu jener Datenbank an, in der MOA historische Widerrufsinformationen archivieren soll. Wird dieser Paramter gesetzt, muss gleichzeitig auch der Parameter <code>archiveRevocationInfo</code> (siehe oben) auf den Wert <code>true</code> gesetzt werden.</p>
- <p> Der genaue Aufbau der JDBC-URL ist abh&auml;ngig von der verwendeten Datenbank. Im Fall von PostgreSQL kann folgende URL verwendet werden:</p>
- <pre>jdbc:postgresql://&lt;host&gt;/&lt;moadb&gt;?user=&lt;moauser&gt;&amp;amp;password=&lt;moapassword&gt;</pre> <p> Die Platzhalter <code>&lt;host&gt;</code>, <code>&lt;moadb&gt;</code>, <code>&lt;moauser&gt;</code> und <code>&lt;moapassword&gt;</code> m&uuml;ssen dabei an die tats&auml;chlich verwendete Datenbank angepasst werden.</p>
- <p class="remark"> Bitte beachten Sie: Die Kodierung des Zeichens &quot;&amp;&quot; als "&amp;amp;" ist erforderlich, da es andernfalls zu einem Validierungsfehler beim Parsen der XML-Konfigurationsdatei durch MOA kommen w&uuml;rde.</p>
- <p class="remark"> Bitte beachten Sie: MOA SP legt eigenst&auml;ndig eine passende Tabelle in der angegebenen Datenbank an und bef&uuml;llt diese dann in weiterer Folge. Der in der JDBC-URL angegebene Benutzer muss mit den dazu passenden Rechten ausgestattet sein. </p> <p>F&uuml;r diesen Parameter existiert kein Default-Wert. </p></td>
+ <td><p> Der Inhalt dieses Elements vom Typ <code>xs:boolean</code> gibt an, ob die Zertifikatserweiterung <span class="term">Authority
+ Information Access</span> f&uuml;r die Zertifikatspfaderstellung verwendet werden soll. Wird der
+ Wert auf <code>true</code> gesetzt, dann setzt MOA auch den Parameter <code>cfg:AutoAddCertificate</code> automatisch
+ auf <code>true</code> und ignoriert den gegebenenfalls in der Konfigurationsdatei daf&uuml;r gesetzten
+ Wert. </p>
+ <p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind <code>true</code> oder <code>false</code>.</p></td>
</tr>
</table>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_pathconstruction_certificatestore" id="konfigurationsparameter_sp_certificatevalidation_pathconstruction_certificatestore"></a>2.3.1.1.3 Lokalisierung
+ des Zertifikatsspeichers </h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td> <code>cfg:GenericConfiguration/@name</code> </td>
- <td><code> DataBaseArchiveParameter.JDBCDriverClass</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td> Name </td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathConstruction/cfg:CertificateStore/cfg:DirectoryStore/cfg:Location</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>genau einmal</td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Dieser Parameter kann verwendet werden, um MOA SP den Klassennamen des JDBC-Datenbanktreibers bekannt zu geben, der zur Ansprache der f&uuml;r die CRL-Archivierung zu verwendenden Datenbank ben&uuml;tzt werden soll. Der Parameter wird nur dann ausgewertet, wenn der generische Konfigurationsparameter <code>archiveRevocationInfo</code> auf den Wert <code>true</code> gesetzt ist.
-</p>
- <p>Der Wert des Parameters muss den vollst&auml;ndig qualifizierten Java-Klassennamen des JDBC-Treibers enthalten.
- <p class="remark">Bitte beachten Sie: Wird im Parameter <code>DataBaseArchiveParameter.JDBCUrl</code> entweder eine postgreSQL- oder eine mySQL-Datenbank referenziert, braucht dieser Paramter nicht angegeben zu werden; in diesen Standardf&auml;llen erfolgt eine automatische Zuordnung zur passenden JDBC-Treiberklasse. </p>
- <p>Bitte beachten Sie: Informationen zum Anlegen einer Datenbank in postgreSQL finden Sie in <a href="../install/install.html#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql">Abschnitt 2.2.2.1</a> des Installationshandbuchs.</p>
- <p>F&uuml;r diesen Parameter existiert kein Default-Wert. </p></td>
+ <td><p> Der Inhalt dieses Elements vom Typ <code>xs:token</code> gibt ein Verzeichnis im lokalen Dateisystem
+ an, das von MOA als lokaler Zertifikatsspeicher verwendet werden soll.
+Zul&auml;ssige Werte f&uuml;r diesen Parameter sind absolute oder relative Pfadangaben, wobei relative Pfadangaben
+als relativ zum Pfad jenes Verzeichnisses interpretiert werden, in dem die zentrale
+ Konfigurationsdatei gespeichert ist. Beispiele f&uuml;r zul&auml;ssige Werte lauten:</p>
+ <pre>C:/Programme/apache/tomcat-4.1.30/conf/moa-spss/certstore</pre>
+ <pre>certstore</pre></td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_hardwarekeymodule" id="konfigurationsparameter_hardwarekeymodule"></a>2.4 Hardware-Schl&uuml;sselspeicher</h2>
+ <h4><a name="konfigurationsparameter_sp_certificatevalidation_pathvalidation" id="konfigurationsparameter_sp_certificatevalidation_pathvalidation"></a>2.3.1.2
+ Valdierung des Zertifikatspfads</h4>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_pathvalidation_chainingmode" id="konfigurationsparameter_sp_certificatevalidation_pathvalidation_chainingmode"></a>2.3.1.2.1 G&uuml;ltigkeitsmodell
+ f&uuml;r die Zertifikatskettenpr&uuml;fung</h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
<td>Name</td>
- <td><code>cfg:HardwareKeyModule</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SS </td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathValidation/cfg:ChainingMode</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional (zumindest ein Hardware- oder Software-Schl&uuml;sselspeicher muss vorhanden sein) </td>
+ <td>genau einmal </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p>Mit diesem Element wird MOA SS die Verf&uuml;gbarkeit eines Hardware-Schl&uuml;sselspeichers mitgeteilt. </p>
- <p>Das Element weist bis zu vier Attribute auf:</p> <ul>
- <li>Attribut <code>id</code>: Dieses obligatorische Attribut vom Typ <code>xs:token</code> enth&auml;lt einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der XML-Konfigurationsdatei eindeutig sein muss. Mit Hilfe dieses Identifikators wird im Konfigurationselement <code>cfg:KeyGroup</code> auf dieses Konfigurationselement referenziert.</li>
- <li> Attribut <code>name</code>:
-
-
- Dieses obligatorische Attribut vom Typ <code>xs:string</code> enth&auml;lt den Dateinamen der DLL (Windows) oder der Shared-Library (Unix), welche die PKCS#11-Schnittstelle zum Hardware-Schl&uuml;sselspeicher implementiert; der Wert enth&auml;lt entweder einen Dateinamen mit absoluter Pfadangabe oder einen Dateinamen ohne Pfadangabe. Im letzteren Fall wird der Dateiname relativ zum Suchpfad des Betriebssystems interpretiert. </li>
- <li>Attribut <code>slotID</code>: Dieses optionale Attribut vom Typ <code>xs:string</code> gibt des Slot der PKCS#11-Schnittstelle an, &uuml;ber den der Hardware-Schl&uuml;sselspeicher von MOA SS angesprochen werden soll. Fehlt dieses Attribut, w&auml;hlt MOA SS selbst einen Slot aus der Liste der verf&uuml;gbaren Slots aus. </li>
- <li>Attribut <code>userPIN</code>: Dieses obligatorische Attribut vom Typ <code>xs:string</code> enth&auml;lt den PIN-Code zur Freischaltung der Schl&uuml;sselverwendung &uuml;ber die PKCS#11-Schnittstelle des Hardware-Schl&uuml;sselspeichers. </li>
- </ul>
- <p>Das Element hat keinen Element-Inhalt. </p></td>
+ <td><p> Dieses Element legt fest, ob MOA SP f&uuml;r die Pr&uuml;fung der G&uuml;ltigkeit
+ einer konstruierten Zertifikatskette das Kettenmodell aus ISIS-MTT oder das Schalenmodell aus dem PKIX
+ RFC 3280 verwenden soll. Es hat folgende Kindelemente:</p>
+ <ul>
+ <li><code>cfg:DefaultMode</code>: Dieses obligatorische Element gibt das Default-Modell f&uuml;r die Pr&uuml;fung
+ der G&uuml;ltigkeit einer konstruierten Zertifikatskette an. G&uuml;ltige Werte sind <code>chaining</code> (Kettenmodell)
+ oder <code>pkix</code> (Schalenmodell). </li>
+ <li><code>cfg:TrustAnchor</code>: Dieses Element kann beliebig oft (auch gar nicht) verwendet
+ werden, um f&uuml;r bestimmte Vertrauensanker (vergleiche n&auml;chsten Parameter <code>cfg:TrustProfile</code>)
+ Ausnahmen vom Default-Modell vorzugeben.
+ Das Element weist folgende Kindelemente auf:
+ <ul>
+ <li><code>cfg:Identification</code>: Dieses obligatorische Element identifiziert den Vertrauensanker,
+ f&uuml;r den ein bestimmtes Modell konfiguriert werden soll. Es entspricht vom Aufbau jenem
+ von <code>cfg:KeyCertIssuerSerial</code> in
+ Abschnitt <a href="#konfigurationsparameter_ss_keygroup">2.2.2</a>. Um zu den Werten f&uuml;r
+ Ausstellername und Seriennummer des Vertrauensankers zu kommen, k&ouml;nnen Sie auch hier
+ das Script <code>certtool</code> (vergleiche Abschnitt <a href="#konfigurationsparameter_ss_keygroup">2.2.2</a>)
+ verwenden. </li>
+ <li><code>cfg:Mode</code>: Dieses obligatorische Element vom Typ <code>xs:string</code> gibt
+ jenes Modell an, das von MOA SP f&uuml;r die
+ Pr&uuml;fung von konstruierten Zertifikatsketten zu verwenden ist, die im mittels <code>cfg:Identification/dsig:X509IssuerName</code> und <code>cfg:Identification/dsig:X509SerialNumber</code> angegebenen
+ Vertrauensanker m&uuml;nden. G&uuml;ltige Werte sind <code>chaining</code> (Kettenmodell)
+ oder <code>pkix</code> (Schalenmodell).</li>
+ </ul>
+ </li>
+ </ul> </td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_softwarekeymodule" id="konfigurationsparameter_softwarekeymodule"></a>2.5 Software-Schl&uuml;sselspeicher</h2>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_pathvalidation_trustprofile" id="konfigurationsparameter_sp_certificatevalidation_pathvalidation_trustprofile"></a>2.3.1.2.2 Vertrauensprofile </h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
<td>Name</td>
- <td><code>cfg:SoftwareKeyModule</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SS </td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathValidation/cfg:TrustProfile</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional (zumindest ein Hardware- oder Software-Schl&uuml;sselspeicher muss vorhanden sein)</td>
+ <td>einmal bis unbeschr&auml;nkt oft (zumindest ein Vertrauensprofil muss vorhanden sein) </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p>Mit diesem Element wird MOA SS die Verf&uuml;gbarkeit eines Software-Schl&uuml;sselspeichers in Form einer PKCS#12-Datei mitgeteilt. </p>
- <p>Das Element weist drei obligatorische Attribute auf:</p>
+ <td><p> Das Element <code>cfg:</code><code>TrustProfile</code> wird dazu verwendet, um in MOA SP ein Vertrauensprofil
+ f&uuml;r die Signaturpr&uuml;fung einzurichten. Ein Vertrauensprofil besteht aus einer Menge von Vertrauensankern
+ und einer optionalen Menge von explizit erlaubten Signatorzertifikaten. </p>
+ <p>Ein Vertrauensanker ist ein CA-Zertifikat, das explizit als vertrauensw&uuml;rdig eingestuft wird.
+ MOA SP versucht bei der Konstruktion einer Zertifikatskette, einen Pfad vom Signatorzertifikat bis
+ hin zu einem der konfigurierten Vertrauensanker zu finden. Gelingt dies, wird auch das Signatorzertifikat
+ als vertrauensw&uuml;rdig betrachtet, ansonsten nicht. </p>
+ <p>Wird neben der Menge von Vertrauensankern auch noch eine Menge von explizit erlaubten Signatorzertifikaten
+ angegeben, pr&uuml;ft MOA SP nicht nur, ob sich ein Pfad vom Signatorzertifikat zu einem konfigurierten
+ Vertrauensanker konstruieren l&auml;sst, sondern dar&uuml;ber hinaus auch noch, ob das Signatorzertifikat
+ aus der zu pr&uuml;fenden Signatur in der Menge der explizit erlaubten Signatorzertifikate vorkommt.
+ Explizit erlaubte Signatorzertifikate sollten Sie dann konfigurieren, wenn nicht allen von einer
+ als Vertrauensanker konfigurierten CA ausgestellten Zertifikaten vertraut werden soll, sondern nur
+ ganz bestimmten Zertifikaten dieser CA. </p>
+ <p>In MOA SP k&ouml;nnen beliebig viele solcher Vertrauensprofile konfiguriert werden. Der Kunde von
+ MOA SP gibt im Request zur Signaturpr&uuml;fung an, gegen welches Vertrauensprofil MOA SP die Zertifikatspr&uuml;fung
+ vornehmen soll.</p>
+ <p>Das Element <code>cfg:</code><code>TrustProfile</code> weist folgende Kindelemente
+ auf:</p>
<ul>
- <li>Attribut <code>id</code>: Dieses Attribut vom Typ <code>xs:token</code> enth&auml;lt einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der XML-Konfigurationsdatei eindeutig sein muss. Mit Hilfe dieses Identifikators wird im Konfigurationselement <code>cfg:KeyGroup</code> auf dieses Konfigurationselement referenziert.</li>
- <li> Attribut <code>filename</code>: Dieses Attribut vom Typ <code>xs:string</code> enth&auml;lt den Dateinamen der PKCS#12-Datei, die den Software-Schl&uuml;sselspeicher repr&auml;sentiert. Der Wert enth&auml;lt einen Dateinamen mit absoluter oder relativer Pfadangabe. Eine relative Pfadangabe wird von MOA SS relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist.</li>
- <li>Attribut <code>password</code>: Dieses Attribut vom Typ <code>xs:string</code> enth&auml;lt das Passwort zum Entschl&uuml;sseln der Inhalte der PKCS#12-Datei. </li>
- </ul>
- <p>Das Element hat keinen Element-Inhalt. </p></td>
+ <li><code>Id</code>: Dieses obligatorische Element vom Typ <code>xs:token</code> enth&auml;lt einen
+ frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der XML-Konfigurationsdatei
+ eindeutig sein muss. Dieser Identifikator wird im Request zur Signaturpr&uuml;fung verwendet, um
+ das zu verwendende Vertrauensprofil auszuw&auml;hlen. </li>
+ <li>Element <code>TrustAnchorsLocation</code>: Dieses obligatorische Element vom Typ <code>xs:anyURI </code> enth&auml;lt
+ eine relative oder absolute URL, die ein Verzeichnis im lokalen Dateisystem referenziert.
+ Eine relative URL wird relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale
+ Konfigurationsdatei gespeichert ist. Eine absolute URL muss als Protokoll-Teil <code>file</code> verwenden.
+ Das referenzierte Verzeichnis muss eine oder mehrere DER-kodierte Zertifikatsdateien beinhalten.
+ Jede Zertifikatsdatei repr&auml;sentiert einen Vertrauensanker. </li>
+ <li>Element <code>SignerCertsLocation</code>: Dieses optionale Element vom Typ <code>xs:anyURI </code> enth&auml;lt
+ eine relative oder absolute URL, die ein Verzeichnis im lokalen Dateisystem referenziert. Eine
+ relative URL wird relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale Konfigurationsdatei
+ gespeichert ist. Eine absolute URL muss als Protokoll-Teil <code>file</code> verwenden. Das referenzierte
+ Verzeichnis muss eine oder mehrere DER-kodierte Zertifikatsdateien beinhalten. Jede Zertifikatsdatei
+ repr&auml;sentiert ein explizit erlaubtes Signatorzertifikat. </li>
+ </ul></td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_keygroup" id="konfigurationsparameter_keygroup"></a>2.6 Schl&uuml;sselgruppen </h2>
+ <h4><a name="konfigurationsparameter_sp_certificatevalidation_revocationchecking" id="konfigurationsparameter_sp_certificatevalidation_revocationchecking"></a>2.3.1.3
+ Widerrufspr&uuml;fung</h4>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_revocationchecking_enablechecking" id="konfigurationsparameter_sp_certificatevalidation_revocationchecking_enablechecking"></a>2.3.1.3.1 Aktivieren
+ der Widerrufspr&uuml;fung</h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td>Name</td>
- <td><code>cfg:KeyGroup</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SS </td>
+ <td> Name </td>
+ <td><code> cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:EnableChecking</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>obligatorisch (zumindest eine Schl&uuml;sselgruppe muss vorhanden sein) </td>
+ <td>genau einmal </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p>Mit diesem Element wird in MOA SS eine Schl&uuml;sselgruppe definiert. Eine Schl&uuml;sselgruppe ist eine Zusammenfassung von einem oder mehreren privaten Schl&uuml;sseln, die in Hardware- bzw. Softwareschl&uuml;sselspeichern (vergleiche Abschnitte <a href="#konfigurationsparameter_hardwarekeymodule">2.4</a> bzw. <a href="#konfigurationsparameter_softwarekeymodule">2.5</a>) verwaltet werden. Die Schl&uuml;sselgruppe wird vom Kunden von MOA SS &uuml;ber einen eindeutigen Bezeichner im Request zur Signaturerstellung angesprochen. </p>
- <p>Sinn der Zusammenfassung von mehreren privaten Schl&uuml;sseln zu einer Schl&uuml;sselgruppe ist es, dass MOA SS selbst entscheidet, welcher konkrete Schl&uuml;ssel aus der Schl&uuml;sselgruppe zur Erstellung der Signatur verwendet wird. Durch die somit m&ouml;gliche Parallelisierung (mehrere private Schl&uuml;ssel werden parallel f&uuml;r Anfragen, die auf die gleiche Schl&uuml;sselgruppe referenzieren) l&auml;sst sich der Durchsatz der erstellten Signaturen verbessern. </p>
- <p>Das Element <code>cfg:KeyGroup</code> weist ein obligatorisches Attribut auf:</p>
- <ul>
- <li>Attribut <code>id</code>: Dieses Attribut vom Typ <code>xs:token</code> enth&auml;lt einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der XML-Konfigurationsdatei eindeutig sein muss. Mit Hilfe dieses Identifikators wird im Konfigurationselement <code>cfg:KeyGroupMapping</code> auf dieses Konfigurationselement referenziert. Weiters wird dieser Identifikator im Request zur Erstellung der Signatur verwendet, um die zu verwendende Schl&uuml;sselgruppe anzugeben. </li>
- </ul>
- <p>Das Element <code>cfg:KeyGroup</code> hat folgenden Element-Inhalt:</p>
- <ul>
- <li>Element <code>cfg:Key</code>: Dieses Element muss zumindest einmal vorkommen. Jedes Element beschreibt einen der privaten Schl&uuml;ssel, aus denen sich die Schl&uuml;sselgruppe zusammensetzt. Das Element weist keine Attribute auf und hat folgenden Element-Inhalt:
- <ul>
- <li>Element <code>cfg:KeyModuleID</code>: Dieses Element kommt genau einmal vor. Mit ihm wird auf einen der konfigurierten Hardware- oder Software-Schl&uuml;sselspeicher referenziert. Sein Textinhalt vom Typ <code>xs:token</code> enth&auml;lt den Identifikator des Hardware- oder Software-Schl&uuml;sselspeichers, so wie er in <code>cfg:HardwareKeyModule/@id</code> bzw. <code>cfg:SoftwareKeyModule/@id</code> festgelegt wurde. </li>
- <li>Element <code>cfg:KeyCertIssuerSerial</code>: Dieses Element kommt ebenfalls genau einmal vor. Mit ihm wird ein privater Schl&uuml;ssel innerhalb des mit <code>cfg:KeyModuleID</code> ausgew&auml;hlten Schl&uuml;sselspeichers ausgew&auml;hlt (sowohl Hardware- als auch Softwareschl&uuml;sselspeicher k&ouml;nnen ja prinzipiell mehr als nur einen einzigen privaten Schl&uuml;ssel verwalten). Das Element weist keine Attribute auf und hat folgenden Element-Inhalt:
- <ul>
- <li>Element <code>dsig:X509IssuerName</code>: Dieses Element kommt genau einmal vor. Sein Textinhalt vom Typ <code>xs:string</code> enth&auml;lt den Namen des Ausstellers des Zertifikats f&uuml;r den ausgew&auml;hlten privaten Schl&uuml;ssel.</li>
- <li>Element <code>dsig:X509SerialNumber</code>: Dieses Element kommt genau einmal vor. Sein Textinhalt vom Typ <code>xs:integer</code> enth&auml;lt die Seriennummer des Zertifikats f&uuml;r den ausgew&auml;hlten privaten Schl&uuml;ssel. </li>
- </ul>
- </li>
- </ul>
- </li>
- </ul>
- <p>Um auf einfache Weise f&uuml;r alle in Ihren Schl&uuml;sselspeichern enthaltenen privaten Schl&uuml;ssel die jeweiligen Werte f&uuml;r <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code> zu erhalten, gehen Sie am besten wie folgt vor:</p>
- <ol>
- <li>Erfassen Sie in der zentralen Konfigurationsdatei alle Ihre Schl&uuml;sselspeicher mit Hilfe der Konfigurationselemente <code>cfg:HardwareKeyModule</code> bzw. <code>cfg:SoftwareKeyModule</code>. </li>
- <li>Starten Sie nun - mit bewusst fehlenden <code>cfg:KeyGroup</code> Elementen - den MOA SP/SS Server. Stellen Sie dabei sicher, dass das Log-Level f&uuml;r den Logger <code>moa.spss.server</code> zumindest auf das Niveau <code>info</code> eingestellt ist (Informationen zur Konfiguration des Loggings von MOA SP/SS finden Sie in <a href="../install/install.html#webservice_basisinstallation_logging">Abschnitt 2.1.3</a> des Installationshandbuchs). Im Log-File werden dann alle verf&uuml;gbaren privaten Schl&uuml;ssel an Hand der Werte <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code> aufgelistet. Vergleichen Sie den folgenden beispielhaften Auszug:<br>
- <pre>INFO | 15 15:10:14,737 | moa.spss.server | TID=startup NID=node1 MSG=Key <br> ID=SKM_Kunde1;CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT;7
-INFO | 15 15:10:14,737 | moa.spss.server | TID=startup NID=node1 MSG=Key
- ID=SKM_allgemein;CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT;9<br>INFO | 15 15:10:14,737 | moa.spss.server | TID=startup NID=node1 MSG=Key <br> ID=SKM_Kunde2;CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT;8</pre>
- Der Wert der Eigenschaft ID des Logging-Eintrags gliedert sich in drei Teile:
- <ol>
- <li>Der erste Teil enth&auml;lt den Identifikator des Hardware- bzw. Softwareschl&uuml;sselspeichers, so wie er im entsprechenden Konfigurationselement <code>cfg:HardwareKeyModule</code> bzw. <code>cfg:SoftwareKeyModule</code> erfasst wurde. </li>
- <li>Der zweite Teil enth&auml;lt nach dem ersten Semikolon den Namen des Ausstellers des Zertifikats f&uuml;r den privaten Schl&uuml;ssel, so wie er in <code>dsig:X509IssuerName</code> ben&ouml;tigt wird. </li>
- <li>Der dritte Teil enth&auml;lt nach dem zweiten Semikolon die Seriennummer des Zertifikats f&uuml;r den privaten Schl&uuml;ssel, so wie er in <code>dsig:X509SerialNumber</code> ben&ouml;tigt wird. </li>
- </ol>
- </li>
- <li>Erfassen Sie nun mit Hilfe der neu gewonnenen Informationen die Schl&uuml;sselgruppen, die in MOA SS zur Verf&uuml;gung stehen sollen. </li>
- </ol>
- <p>Wenn Ihnen f&uuml;r einen privaten Schl&uuml;ssel, den Sie in eine Schl&uuml;sselgruppe aufnehmen wollen, das Zertifikat bekannt ist und es in Form einer DER-kodierten Datei vorliegt, k&ouml;nnen Sie alternativ das Script <code>certtool</code> aus dem Verzeichnis <code>tools</code> im MOA-Installationsverzeichnis verwenden, um zu den Werten f&uuml;r <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code> zu kommen: </p>
- <pre>certtool -info &lt;certfilename&gt;</pre> <p><code>&lt;certfilename&gt;</code> enth&auml;lt den Namen der DER-kodierten Zertifikatsdatei, f&uuml;r die die beiden Werte <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code> geliefert werden sollen. Eine beispielhafte Ausgabe des Scripts sieht wie folgt aus: </p>
- <pre>SubjectDN (RFC2253):
- CN=Test: Signaturdienst aller Kunden: ECDSA (P192v1),OU=Technik und Standards,O=Stabsstelle IKT-Strategie des Bundes,C=AT
-IssuerDN (RFC2253) :
- CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT<br>Serial Number :
- 9</pre> <p>Die Werte f&uuml;r <code>IssuerDN (RFC2253)</code> sowie <code>Serial Number</code> entsprechen den Werten f&uuml;r <code>dsig:X509IssuerName</code> und <code>dsig:X509SerialNumber</code>.</p></td>
+ <td><p> Der Inhalt dieses Elements vom Typ <code>xs:boolean</code> gibt an, ob bei der Zertifikats&uuml;berpr&uuml;fung im Zuge einer Signaturpr&uuml;fung auch der
+ Zertifikatsstatus jedes einzelnen Zertifikats des gebildeten Zertifikatspfads &uuml;berpr&uuml;ft werden
+ soll. </p>
+ <p class="remark">Bitte beachten Sie: Die Widerrufspr&uuml;fung ist ein sehr wichtiger Schritt der
+ Zertifikats&uuml;berpr&uuml;fung und somit der Signaturpr&uuml;fung. Eine Deaktivierung sollte nur
+ in begr&uuml;ndeten Ausnahmef&auml;llen in Erw&auml;gung gezogen werden, z.B. f&uuml;r Testsituationen. </p>
+ <p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind <code>true</code> oder <code>false</code>.</p> </td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_keygroupmapping" id="konfigurationsparameter_keygroupmapping"></a>2.7 Zuordnung von Schl&uuml;sselgruppen zu Kunden</h2>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_revocationchecking_maxrevocationage" id="konfigurationsparameter_sp_certificatevalidation_revocationchecking_maxrevocationage"></a>2.3.1.3.2
+ Maximales Alter der Widerrufsinformation </h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td>Name</td>
- <td><code>cfg:KeyGroupMapping</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SS </td>
+ <td> Name </td>
+ <td><code> cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:MaxRevocationAge</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>obligatorisch (zumindest eine Zuordnung muss vorhanden sein) </td>
+ <td>genau einmal</td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Das Element <code>cfg:KeyGroupMapping</code> ordnet einem Kunden von MOA SS die ihm zur Verf&uuml;gung stehenden Schl&uuml;sselgruppen zu, indem das den Kunden repr&auml;sentierende SSL-Clientzertifikat mit einer oder mehreren Schl&uuml;sselgruppen assoziiert wird. </p>
- <p>Das Element weist keine Attribute auf und hat folgenden Element-Inhalt:</p>
+ <td><p> Der Inhalt dieses Elements vom Typ <code>xs:integer</code> gibt an, wie aktuell eine ggf. lokal
+ gespeicherte Widerrufsinformation sein muss, damit sie von MOA SP als g&uuml;ltig angesehen wird. Ist
+ die lokal gespeicherte Widerrufsinformation nicht aktuell genug, wird sie von MOA SP erneut aus dem
+ Internet geladen.</p>
+ <p>Dieser Parameter wird nur ausgewertet, wenn die Widerrufspr&uuml;fung aktiviert ist (siehe Parameter <code>cfg:EnableChecking</code>). </p>
+ <p>Zul&auml;ssige Werte f&uuml;r diesen Parameter sind ganze Zahlen: </p>
<ul>
- <li>Element <code>cfg:X509IssuerSerial</code>: Dieses Element bezeichnet auf eindeutige Weise das den Kunden repr&auml;sentierende SSL-Clientzertifikat. Der Aufbau des Elements enspricht dem Aufbau des Elements <code>cfg:KeyCertIssuerSerial</code> in Abschnitt <a href="#konfigurationsparameter_keygroup">2.6</a>. Um zu den Werten f&uuml;r Ausstellername und Seriennummer des SSL-Clientzertifikats zu kommen, k&ouml;nnen Sie auch hier das Script <code>certtool</code> (vergleiche Abschnitt <a href="#konfigurationsparameter_keygroup">2.6</a>) verwenden. </li>
- <li>Element <code>cfg:KeyGroup</code>: Dieses Element kommt so oft vor, wie Schl&uuml;sselgruppen einem bestimmten SSL-Clientzertifikat zugeordnet werden sollen, mindestens jedoch einmal. Es weist ein obligatorisches Attribut <code>id</code> vom Typ <code>xs:token</code> auf, dessen Wert den Identifikator der Schl&uuml;sselgruppe enth&auml;lt, so wie er in <code>cfg:KeyGroup/@id</code> festgelegt wurde. Das Element hat keinen Element-Inhalt. </li>
- </ul>
- <p class="remark">Bitte beachten Sie: F&uuml;r maximal ein Konfigurationselement <code>cfg:KeyGroupMapping</code> kann <code>cfg:X509IssuerSerial</code> auch weggelassen werden. Die darin enthaltenen Schl&uuml;sselgruppen stehen dann allen Kunden von MOA SS gleicherma&szlig;en zur Verf&uuml;gung.</p></td>
+ <li>Ein beliebiger negativer Wert bedeutet, dass eine Widerrufsinformation jedes Mal, wenn sie ben&ouml;tigt
+ wird, neu aus dem Internet geladen wird. </li>
+ <li>Der Wert <code>0</code> bedeutet, dass eine Widerrufsinformation dann neu geladen wird, wenn
+ das Datum im Feld <code>nextUpdate</code> der entsprechenden Widerrufsliste bereits &uuml;berschritten
+ ist.</li>
+ <li>Ein positiver Wert gibt gibt die Zeitspanne in Millisekunden an, nach der eine ggf. vorhandene
+ lokale Widerrufsinformation sp&auml;testens durch erneutes Laden aus dem Internet aktualisiert
+ wird.</li>
+ </ul> </td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_chainingmode" id="konfigurationsparameter_chainingmode"></a>2.8 G&uuml;ltigkeitsmodell f&uuml;r die Zertifikatskettenpr&uuml;fung
- </h2>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_revocationchecking_serviceorder" id="konfigurationsparameter_sp_certificatevalidation_revocationchecking_serviceorder"></a>2.3.1.3.3
+ Reihenfolge der Widerrufsdienste</h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td>Name</td>
- <td><code>cfg:ChainingModes</code></td>
+ <td> Name </td>
+ <td><code> cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:ServiceOrder</code></td>
</tr>
<tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td>Gebrauch</td>
+ <td>Null mal oder einmal </td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</td>
+ <td><p> Dieses Element gibt an, in welcher Reihenfolge MOA SP die Widerrufsdienste f&uuml;r die Pr&uuml;fung des
+ Widerrufs f&uuml;r ein Zertifikat kontaktieren soll, wenn f&uuml;r das Zertifikat mehrere unterschiedliche Widerrufsdienste
+ (CRL, OCSP) verf&uuml;gbar sind. Das Element weist folgendes Kindelement auf: </p>
+ <ul>
+ <li><code>cfg:Service</code>: Dieses Element vom Typ <code>xs:token</code> muss genau zwei mal vorkommen. G&uuml;tlige Werte f&uuml;r den
+ Textinhalt des Elements sind <code>OCSP</code> und <code>CRL</code>. Damit kann entweder die Reihenfolge (CRL, OCSP) oder (OCSP,
+ CRL) festgelegt werden. </li>
+ </ul> <p>Wird das Element nicht angegeben, so lautet die von MOA SP dann verwendete Default-Reihenfolge (OCSP,
+ CRL).</p> </td>
+ </tr>
+ </table>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_revocationchecking_archiving" id="konfigurationsparameter_sp_certificatevalidation_revocationchecking_archiving"></a>2.3.1.3.4
+ Archivierung von Widerrufsinformationen</h5>
+ <table class="fixedWidth" border="1" cellpadding="2">
+ <tr>
+ <td> Name </td>
+ <td><code> cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:Archiving/cfg:EnableArchiving</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>genau einmal </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Das Element <code>cfg:ChainingModes</code> legt fest, ob MOA SP f&uuml;r die Pr&uuml;fung der G&uuml;ltigkeit einer konstruierten Zertifikatskette das Kettenmodell aus ISIS-MTT oder das Schalenmodell aus dem PKIX RFC 3280 verwenden soll.</p>
- <p>Das Element <code>cfg:ChainingModes</code> weist ein optionales Attribut auf:</p>
- <ul>
- <li>Attribut <code>systemDefaultMode</code>: Dieses Attribut gibt das Default-Modell f&uuml;r die Pr&uuml;fung der G&uuml;ltigkeit einer konstruierten Zertifikatskette an. G&uuml;ltige Werte sind <code>chaining</code> (Kettenmodell) oder <code>pkix</code> (Schalenmodell). Wird das Attribut nicht angegeben, verwendet MOA SP als Default-Modell das Schalenmodell. </li>
- </ul>
- <p>Das Element <code>cfg:ChainingModes</code> hat folgenden Element-Inhalt:</p>
- <ul>
- <li>Element <code>cfg:TrustAnchor</code>: Dieses Element kann beliebig oft (auch gar nicht) verwendet werden, um f&uuml;r bestimmte Vertrauensanker (vergleiche Abschnitt <a href="#konfigurationsparameter_trustprofile">2.11</a>) Ausnahmen vom Default-Modell vorzugeben. <br>
- Das Element weist ein obligatorisches Attribut auf:
- <ul>
- <li>Attribut <code>mode</code>: Dieses Attribut gibt jenes Modell an, das von MOA SP f&uuml;r die Pr&uuml;fung von konstruierten Zertifikatsketten zu verwenden ist, die im mittels <code>cfg:TrustAnchor/dsig:X509IssuerName</code> und <code>cfg:TrustAnchor/dsig:X509SerialNumber</code> angegebenen Vertrauensanker m&uuml;nden. G&uuml;ltige Werte sind <code>chaining</code> (Kettenmodell) oder <code>pkix</code> (Schalenmodell).</li>
- </ul>
- <p>Der Element-Inhalt von <code>cfg:TrustAnchor</code> entspricht jenem von <code>cfg:KeyCertIssuerSerial</code> in Abschnitt <a href="#konfigurationsparameter_keygroup">2.6</a>. Um zu den Werten f&uuml;r Ausstellername und Seriennummer des Vertrauensankers zu kommen, k&ouml;nnen Sie auch hier das Script <code>certtool</code> (vergleiche Abschnitt <a href="#konfigurationsparameter_keygroup">2.6</a>) verwenden. </p>
- </li>
- </ul> <p class="remark">Bitte beachten Sie: F&uuml;r maximal ein Konfigurationselement <code>cfg:KeyGroupMapping</code> kann <code>cfg:X509IssuerSerial</code> auch weggelassen werden. Die darin enthaltenen Schl&uuml;sselgruppen stehen dann allen Kunden von MOA SS gleicherma&szlig;en zur Verf&uuml;gung.</p></td>
+ <td><p> Der Inhalt dieses Elements vom Typ <code>xs:boolean</code> gibt an, ob mittlerweile ung&uuml;ltig
+ gewordene (i.e. historische) CRL-Widerrufsinformationen von MOA SP archiviert werden soll. </p>
+ <p>Wird dieser
+ Parameter auf den Wert <code>true</code> gesetzt, muss auch der Parameter <code>cfg:Archive</code> (siehe
+ unten) angegeben werden. Zul&auml;ssige Werte f&uuml;r diesen Parameter sind <code>true</code> oder <code>false</code>.</p> </td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_crlarchive" id="konfigurationsparameter_crlarchive"></a>2.8 Archivierungsdauer f&uuml;r Widerrufsinformationen</h2>
+
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
<td>Name</td>
- <td><code>cfg:CRLArchive</code></td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:Archiving/cfg:ArchiveDuration</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>Null mal oder einmal </td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</td>
+ <td><p> Dieses Element vom Typ <code>xs:nonNegativeInteger</code> gibt (in Tagen) an, wie lange Widerrufsinformationen
+ von MOA SP archiviert werden m&uuml;ssen. Das Element wird von MOA SP nur dann ausgewertet, wenn der
+ Konfigurationsparameter <code>cfg:EnableArchiving</code> auf
+ true gesetzt ist. </p>
+ <p>Wird das Element nicht angegeben, so verwendet MOA SP den Default-Wert von 365 Tagen.</p> </td>
</tr>
+ </table>
+ <table class="fixedWidth" border="1" cellpadding="2">
<tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td> Name </td>
+ <td><code> cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:Archiving/cfg:Archive</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>Null mal oder einmal </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Das Element <code>cfg:CRLArchive</code> gibt an, wie lange Widerrufsinformationen von MOA SP archiviert werden m&uuml;ssen. Das Element wird von MOA SP nur dann ausgewertet, wenn der generische Konfigurationsparameter f&uuml;r die Archivierung von Widerrufsinformationen (<code>cfg:GenericConfiguration/@name=&quot;archiveRevocationInfo&quot;) </code>auf true gesetzt ist. </p>
- <p>Das Element weist ein obligatorisches Attribut auf:</p>
- <ul>
- <li>Attribut <code>duration</code>: Dieses Attribut vom Typ<code> xs:nonNegativeInteger</code> gibt die Archivierungsdauer f&uuml;r Widerrufsinformationen in Tagen an. </li>
- </ul>
- <p>Das Element hat keinen Element-Inhalt </p></td>
+ <td><p>Dieses Element gibt an, welches Archiv MOA SP zur Archivierung von mittlerweile ung&uuml;ltig
+ gewordene (i.e. historische) CRL-Widerrufsinformationen verwenden soll, falls der Konfigurationsparameter <code>cfg:EnableArchiving</code> auf
+ <code>true</code> gesetzt ist. Es muss angegeben werden, wenn der
+ Konfigurationsparameter <code>cfg:EnableArchiving</code> auf true gesetzt ist. Das Element weist folgendes
+ Kindelement auf:</p>
+ <ul>
+ <li><code>cfg:DatabaseArchive</code>: Dieses obligatorische Element dient zur Angabe der notwendigen
+ Informationen f&uuml;r die Benutzung eines datenbankbasierten CRL-Archivs durch MOA SP. Das Datenbankarchiv
+ ist die einzige derzeit unterst&uuml;tzte Archivform. Das Element weist folgende Kindelemente auf:
+ <ul>
+ <li> <code>cfg:JDBCURL</code>: Dieses obligatorische Element vom Typ <code>xs:anyURI</code> gibt
+ die JDBC-URL zu jener Datenbank an, in der MOA historische Widerrufsinformationen archivieren
+ soll. Der genaue Aufbau der JDBC-URL ist abh&auml;ngig von der verwendeten Datenbank. Im Fall von
+ PostgreSQL kann folgende URL verwendet werden:
+ <pre>jdbc:postgresql://&lt;host&gt;/&lt;moadb&gt;?user=&lt;moauser&gt;&amp;amp;password=&lt;moapassword&gt;</pre>
+ <p> Die Platzhalter <code>&lt;host&gt;</code>, <code>&lt;moadb&gt;</code>, <code>&lt;moauser&gt;</code> und <code>&lt;moapassword&gt;</code> m&uuml;ssen
+ dabei an die tats&auml;chlich verwendete Datenbank angepasst werden.</p>
+ <p class="remark"> Bitte beachten Sie: Die Kodierung des Zeichens &quot;&amp;&quot; als "&amp;amp;" ist
+ erforderlich, da es andernfalls zu einem Validierungsfehler beim Parsen der XML-Konfigurationsdatei
+ durch MOA kommen w&uuml;rde.</p>
+ <p class="remark"> Bitte beachten Sie: MOA SP legt eigenst&auml;ndig eine passende Tabelle in der angegebenen
+ Datenbank an und bef&uuml;llt diese dann in weiterer Folge. Der in der JDBC-URL angegebene Benutzer
+ muss mit den dazu passenden Rechten ausgestattet sein. </p>
+ </li>
+ <li><p><code>cfg:JDBCDriverClassName</code>: Dieses obligatorische Element vom Typ <code>xs:token</code> gibt den
+ vollst&auml;ndig
+ qualifizierten Java-Klassennamen des JDBC-Treibers an, der von MOA SP zur Ansprache der f&uuml;r
+ die CRL-Archivierung zu verwendenden Datenbank ben&uuml;tzt werden soll.</p>
+ <p class="remark">Bitte beachten Sie: Informationen zum Anlegen einer Datenbank in postgreSQL finden Sie in <a href="../install/install.html#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql">Abschnitt
+ 2.2.2.1</a> des Installationshandbuchs.</p>
+ </li>
+ </ul>
+ </li>
+ </ul> </td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_crldp" id="konfigurationsparameter_crldp"></a>2.9 Manuelle Konfiguration von Verteilungspunkten f&uuml;r Widerrufslisten</h2>
+ <h5><a name="konfigurationsparameter_sp_certificatevalidation_revocationchecking_distributionpoint" id="konfigurationsparameter_sp_certificatevalidation_revocationchecking_distributionpoint"></a>2.3.1.3.5
+ Manuelle Konfiguration von Verteilungspunkten f&uuml;r Widerrufsinformationen</h5>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
<td>Name</td>
- <td><code>cfg:CRLDistributionPoint</code></td>
- </tr>
- <tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:DistributionPoint</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>optional</td>
+ <td>Null mal bis unbeschr&auml;nkt oft </td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Das Element <code>cfg:</code><code>CRLDistributionPoint</code> kann dazu verwendet werden, manuelle Verteilungspunkte f&uuml;r Widerrufslisten einer bestimmten CA zu konfigurieren. </p>
+ <td><p> Das Element <code>cfg:</code><code>CRLDistributionPoint</code> kann dazu verwendet werden, manuelle
+ Verteilungspunkte f&uuml;r Widerrufsinformationen einer bestimmten CA zu konfigurieren. </p>
<p>Dies macht f&uuml;r veraltete Zertifikate Sinn, die nicht den aktuellen Vorgaben aus dem PKIX RFC 3280 entsprechen und im Zertifikat selbst keine Zertifikatserweiterung mit einem solchen Verteilungspunkt enthalten.</p>
<p>Weiters kann diese manuelle Konfiguration verwendet werden, wenn die in einem Zertifikat enthaltenen Verteilungspunkte f&uuml;r eine bestimmte CA durch einen manuellen Eintrag &uuml;berschrieben werden soll (etwa weil die im Zertifikat enthaltenen Verteilungspunkte in Form von ldap-URLs angegeben sind, MOA SP aber der Zugriff auf ldap-URLs per Firewall-Einstellungen untersagt ist; dann k&ouml;nnte man stattdessen manuell eine (lokale) http-URL als Verteilungspunkt angeben, die von MOA SP dann aufgel&ouml;st werden kann). </p>
- <p>Das Element weist keine Attribute auf und hat folgenden Element-Inhalt:</p>
+ <p>Das Element weist folgende Kind-Elemente auf:</p>
<ul>
- <li>Element <code>cfg:CAIssuerDN</code>: Dieses Element enth&auml;lt als Textinhalt vom Typ <code>xs:string</code> den Namen jener CA, die das Zertifikat ausgestellt hat, dessen Widerruf mit Hilfe des zu konfigurierenden Verteilungspunktes gepr&uuml;ft werden soll. Um zu diesem Wert zu kommen, k&ouml;nnen Sie auch hier das Script <code>certtool</code> (vergleiche Abschnitt <a href="#konfigurationsparameter_keygroup">2.6</a>) verwenden, in dem Sie es f&uuml;r das Zertifikat anwenden, dessen Widerruf mit Hilfe des zu konfigurierenden Verteilsungspunktes gepr&uuml;ft werden soll.</li>
- <li>Element <code>cfg:DistributionPoint</code>: Dieses Element weist bis zu zwei Attribute auf und hat keinen Element-Inhalt:
+ <li>Element <code>cfg:CAIssuerDN</code>: Dieses Element enth&auml;lt als Textinhalt vom Typ <code>xs:string</code> den
+ Namen jener CA, die das Zertifikat ausgestellt hat, dessen Widerruf mit Hilfe des zu konfigurierenden
+ Verteilungspunktes gepr&uuml;ft werden soll. Um zu diesem Wert zu kommen, k&ouml;nnen Sie auch
+ hier das Script <code>certtool</code> (vergleiche Abschnitt<a href="#konfigurationsparameter_ss_keygroup"> 2.2.2</a>)
+ verwenden, in dem Sie es f&uuml;r das Zertifikat anwenden, dessen Widerruf mit Hilfe des zu konfigurierenden
+ Verteilungspunktes gepr&uuml;ft werden soll.</li>
+ <li>Element <code>cfg:CRLDP</code>: Dieses Element verweist auf einen Verteilungspunkt, an dem eine
+ Widerrufsliste abgeholt werden kann. Es weist folgende Kind-Elemente auf:
<ul>
- <li>Attribut <code>reasonCodes</code>: Dieses Attribut vom Typ xs:NMTOKENS enth&auml;lt die in PKIX RFC 3280 angef&uuml;hrten m&ouml;glichen Gr&uuml;nde eines Widerrufs, f&uuml;r welche die &uuml;ber den zu konfigurierenden Verteilungspunkt zu beziehende Widerrufsliste ausgestellt ist. Das Attribut kann einen oder auch mehrere Gr&uuml;nde enthalten. Mehrere Gr&uuml;nde werden durch Leerzeichen voneinander getrennt. G&uuml;ltige Gr&uuml;nde sind <code>unused</code>, <code>keyCompromise</code>, <code>cACompromise</code>, <code>affiliationChanged</code>, <code>superseded</code>, <code>cessationOfOperation</code>, <code>certificateHold</code>, <code>privilegeWithdrawn</code> und <code>aACompromise</code>. Wird das Attribut <code>reasonCodes</code> nicht angegeben, werden alle m&ouml;glichen Gr&uuml;nde gesetzt. </li>
- <li>Attribut <code>uri</code>: Der Wert
-dieses obligatorischen Attributs vom Typ<code> xs:anyURI</code> enth&auml;lt die URL f&uuml;r den zu konfigurierenden Verteilungspunkt. Es werden die Protokolle HTTP, HTTPS und LDAP unterst&uuml;tzt.</li>
+ <li>Element<code> cfg:Location</code>: Der Wert dieses obligatorischen Elements vom Typ<code> xs:anyURI</code> enth&auml;lt
+ die URL f&uuml;r den zu konfigurierenden Verteilungspunkt. Es werden die Protokolle HTTP, HTTPS
+ und LDAP unterst&uuml;tzt.</li>
+ <li>Element<code> cfg:ReasonCode</code>: Dieses Element vom Typ <code>xs:token</code> kann
+ null mal bis unbeschr&auml;nkt
+ oft vorkommen und enth&auml;lt
+ jeweils einen laut PKIX RFC 3280 m&ouml;glichen Grund eines Widerrufs,
+ f&uuml;r
+ welche die &uuml;ber den zu konfigurierenden Verteilungspunkt zu beziehende Widerrufsliste
+ ausgestellt ist. G&uuml;ltige Gr&uuml;nde sind <code>unused</code>, <code>keyCompromise</code>, <code>cACompromise</code>, <code>affiliationChanged</code>, <code>superseded</code>, <code>cessationOfOperation</code>, <code>certificateHold</code>, <code>privilegeWithdrawn</code> und <code>aACompromise</code>.
+ Wird eine Widerrufsliste f&uuml;r mehrere Gr&uuml;nde ausgestellt, muss also das Element <code>cfg:ReasonCode</code> mehrmals
+ angegeben werden. Wird das Element null mal angegeben, gilt der Verteilungspunkt f&uuml;r alle m&ouml;glichen
+ Widerrufsgr&uuml;nde.</li>
</ul>
</li>
- </ul> </td>
+ <li>Element <code>cfg:OCSPDP</code>: Dieses Element verweist auf einen Verteilungspunkt, an dem die
+ Widerrufsinformation von einem OCSP-Responder bezogen werden kann. Es weist folgendes Kind-Element
+ auf:
+ <ul>
+ <li></li>
+ </ul>
+ Element<code> cfg:Location</code>: Der Wert dieses obligatorischen Elements vom Typ<code> xs:anyURI</code> enth&auml;lt
+ die URL f&uuml;r den zu konfigurierenden Verteilungspunkt. Es werden die Protokolle HTTP, HTTPS und
+ LDAP unterst&uuml;tzt.</li>
+ </ul>
+ <p>Hinweis: Die Elemente <code>cfg:CRLDP</code> bzw. <code>cfg:OSCPDP</code> k&ouml;nnen beliebig oft als Kinder von <code>cfg:CRLDistributionPoint</code> angegeben
+ werden. Die Reihenfolge spielt dabei keine Rolle. Jedenfalls muss aber eines dieser beiden Elemente
+ angegeben werden. </p></td>
</tr>
</table>
- <h2><a name="konfigurationsparameter_profiles" id="konfigurationsparameter_profiles"></a>2.10 Vordefinierte Profile</h2>
- <p>MOA SP/SS erlaubt die Hinterlegung von vordefinierten Profilen f&uuml;r folgende Bereiche, um die Angabe von st&auml;ndig wiederkehrenden Informationen in Requests zur Erstellung bzw. Pr&uuml;fung von Signaturen zu vermeiden:</p>
- <ul>
- <li><code>cfg:CreateSignatureEnvironmentProfile</code>: Enth&auml;lt f&uuml;r eine zu erstellende XML-Signatur, die in ein bereits bestehendes XML-Dokument integriert werden soll, die Stelle, an der die XML-Signatur eingef&uuml;gt werden soll, sowie allenfalls f&uuml;r die Verarbeitung des bestehenden XML-Dokuments notwendige Erg&auml;nzungsobjekte (z.B. ein XML-Schema f&uuml;r das validierende Parsen des bestehenden XML-Dokuments).</li>
- <li><code>cfg:CreateTransformsInfoProfile</code>: Enth&auml;lt f&uuml;r ein bestimmtes Datenobjekt f&uuml;r eine zu erstellende XML-Signatur die auf dieses Datenobjekt anzuwendenden Transformationen, sowie allenfalls f&uuml;r die Durchf&uuml;hrung der Transformationen notwendige Erg&auml;nzungsobjekte (z.B. einen zu importierenden Stylesheet f&uuml;r eine XSL-Transformation).</li>
- <li><code>cfg:VerifyTransformsInfoProfile</code>: Enth&auml;lt f&uuml;r ein bestimmtes Datenobjekt f&uuml;r eine zu pr&uuml;fende XML-Signatur eine f&uuml;r dieses Datenobjekt erlaubte Transformationsfolge, bestehend aus den anzuwendenden Transformationen, sowie allenfalls f&uuml;r die Durchf&uuml;hrung der Transformationen erlaubte implizite Transformationsparameter (z.B. einen zu importierenden Stylesheet f&uuml;r eine XSL-Transformation).</li>
- <li><code>cfg:SupplementProfile</code>: Enth&auml;lt f&uuml;r ein Datenobjekt in der zu pr&uuml;fenden XML-Signatur ein allenfalls f&uuml;r die Durchf&uuml;hrung der vorgegebenen Transformationen notwendiges Erg&auml;nzungsobjekt (z.B. einen zu importierenden Stylesheet f&uuml;r eine XSL-Transformation).</li>
- </ul>
- <p>Jedes dieser Elemente kann dabei beliebig oft (auch gar nicht) vorkommen. Alle Elemente teilen den gleichen Aufbau; sie weisen zwei obligatorische Attribute auf und haben keinen Element-Inhalt:</p>
- <ul>
- <li>Attribut <code> id</code>: Dieses Attribut vom Typ <code>xs:token</code> enth&auml;lt einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der XML-Konfigurationsdatei eindeutig sein muss. Dieser Identifikator wird im Request zur Erstellung bzw. zur &Uuml;berpr&uuml;fung der Signatur verwendet, um das hinterlegte Profil zu referenzieren (vergleiche die Elemente <code>moa:CreateSignatureEnvironmentProfileID</code>, <code>moa:CreateTransformsInfoProfileID</code>, <code>moa:VerifyTransformsInfoProfileID</code>, <code>moa:SupplementProfileID</code>). </li>
- <li>Attribut <code>filename</code>: Dieses Attribut vom Typ <code>xs:string</code> enth&auml;lt den Namen der XML-Datei, die das hinterlegte Profil beinhaltet. Der Wert enth&auml;lt einen Dateinamen mit absoluter oder relativer Pfadangabe. Eine relative Pfadangabe wird von MOA SS relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist. Die XML-Datei muss als Wurzelelement eines der Elemente <code>moa:CreateSignatureEnvironmentProfile</code>, <code>moa:CreateTransformsInfoProfile</code>, <code>moa:VerifyTransformsInfoProfile</code> oder <code>moa:SupplementProfile</code> enthalten.</li>
- </ul>
- <h2><a name="konfigurationsparameter_trustprofile" id="konfigurationsparameter_trustprofile"></a>2.11 Vertrauensprofile </h2>
+ <h3><a name="konfigurationsparameter_sp_verifytransformsinfoprofile" id="konfigurationsparameter_sp_verifytransformsinfoprofile"></a>2.3.2 Profil f&uuml;r Transformationen</h3>
<table class="fixedWidth" border="1" cellpadding="2">
<tr>
<td>Name</td>
- <td><code>cfg:TrustProfile</code></td>
+ <td><code>cfg:SignatureVerification/cfg:VerifyTransformsInfoProfile</code></td>
</tr>
<tr>
- <td>Relevanz</td>
- <td>MOA SP</td>
+ <td>Gebrauch</td>
+ <td>Null mal bis unbeschr&auml;nkt oft</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</td>
+ <td><p>MOA SP erlaubt die Hinterlegung eines vordefinierten Profils f&uuml;r eine erlaubte Transformationsfolge,
+ deren Einhaltung im Rahmen einer XML-Signaturpr&uuml;fung kontrolliert wird. Im Request
+ zur XML-Signaturpr&uuml;fung reicht es dann aus, auf dieses Profil zu referenzieren, anstatt die
+ gesamten Transformationen explizit anzugeben. </p>
+ <p><code>cfg:VerifyTransformsInfoProfile</code> enth&auml;lt f&uuml;r ein bestimmtes Datenobjekt f&uuml;r
+ eine zu pr&uuml;fende XML-Signatur eine
+ f&uuml;r dieses Datenobjekt erlaubte Transformationsfolge, bestehend aus den anzuwendenden Transformationen,
+ sowie allenfalls f&uuml;r die Durchf&uuml;hrung der Transformationen erlaubte implizite Transformationsparameter
+ (z.B. einen zu importierenden Stylesheet f&uuml;r eine XSL-Transformation).</p>
+ <p><code>cfg:</code><code>VerifyTransformsInfoProfile</code> weist folgende obligatorische Kindelemene
+ auf: </p>
+ <ul>
+ <li>Element<code> Id</code>: Dieses Element<code></code> vom Typ <code>xs:token</code> enth&auml;lt
+ einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der
+ XML-Konfigurationsdatei eindeutig sein muss. Dieser Identifikator wird im Request zur Pr&uuml;fung
+ der XML-Signatur verwendet, um das hinterlegte Profil zu referenzieren (vergleiche Element <code>moa:</code><code>VerifyTransformsInfoProfileID</code>). </li>
+ <li>Element<code></code> <code>Location</code>: Dieses Element<code></code> vom Typ <code>xs:anyURI</code> enth&auml;lt
+ den Namen der XML-Datei, die das hinterlegte Profil beinhaltet. Der Wert enth&auml;lt eine relative
+ oder absolute URI. Eine relative URI wird von MOA SP als File-URI relativ zum Lage jenes Verzeichnisses
+ interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist. Die XML-Datei muss als
+ Wurzelelement das Element<code> moa:VerifyTransformsInfoProfile </code>enthalten.</li>
+ </ul></td>
+ </tr>
+ </table>
+ <h3><a name="konfigurationsparameter_sp_supplementprofile" id="konfigurationsparameter_sp_supplementprofile"></a>2.3.3 Profil f&uuml;r Erg&auml;nzungsobjekte</h3>
+ <table class="fixedWidth" border="1" cellpadding="2">
+ <tr>
+ <td>Name</td>
+ <td><code>cfg:SignatureVerification/cfg:SupplementProfile</code></td>
</tr>
<tr>
<td>Gebrauch</td>
- <td>obligatorisch (zumindest ein Vertrauensprofil muss vorhanden sein) </td>
+ <td>Null mal bis unbeschr&auml;nkt oft</td>
</tr>
<tr>
<td>Erl&auml;uterung</td>
- <td><p> Das Element <code>cfg:</code><code>TrustProfile</code> wird dazu verwendet, um in MOA SP ein Vertrauensprofil f&uuml;r die Signaturpr&uuml;fung einzurichten. Ein Vertrauensprofil besteht aus einer Menge von Vertrauensankern und einer optionalen Menge von explizit erlaubten Signatorzertifikaten. </p>
- <p>Ein Vertrauensanker ist ein CA-Zertifikat, das explizit als vertrauensw&uuml;rdig eingestuft wird. MOA SP versucht bei der Konstruktion einer Zertifikatskette, einen Pfad vom Signatorzertifikat bis hin zu einem der konfigurierten Vertrauensanker zu finden. Gelingt dies, wird auch das Signatorzertifikat als vertrauensw&uuml;rdig betrachtet, ansonsten nicht. </p>
- <p>Wird neben der Menge von Vertrauensankern auch noch eine Menge von explizit erlaubten Signatorzertifikaten angegeben, pr&uuml;ft MOA SP nicht nur, ob sich ein Pfad vom Signatorzertifikat zu einem konfigurierten Vertrauensanker konstruieren l&auml;sst, sondern dar&uuml;ber hinaus auch noch, ob das Signatorzertifikat aus der zu pr&uuml;fenden Signatur in der Menge der explizit erlaubten Signatorzertifikate vorkommt. Explizit erlaubte Signatorzertifikate sollten Sie dann konfigurieren, wenn nicht allen von einer als Vertrauensanker konfigurierten CA ausgestellten Zertifikaten vertraut werden soll, sondern nur ganz bestimmten Zertifikaten dieser CA. </p>
- <p>In MOA SP k&ouml;nnen beliebig viele solcher Vertrauensprofile konfiguriert werden. Der Kunde von MOA SP gibt im Request zur Signaturpr&uuml;fung an, gegen welches Vertrauensprofil MOA SP die Zertifikatspr&uuml;fung vornehmen soll.</p>
- <p>Das Element <code>cfg:</code><code>TrustProfile</code> weist zwei obligatorische und ein optionales Attribut auf und hat keinen Element-Inhalt:</p>
- <ul>
- <li>Attribut <code>id</code>: Dieses Attribut vom Typ <code>xs:token</code> enth&auml;lt einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der XML-Konfigurationsdatei eindeutig sein muss. Dieser Identifikator wird im Request zur Signaturpr&uuml;fung verwendet, um das zu verwendende Vertrauensprofil auszuw&auml;hlen. </li>
- <li>Attribut <code>uri</code>: Dieses Attribut vom Typ <code>xs:anyURI </code> enth&auml;lt eine relative oder absolute URL, die ein Verzeichnis im lokalen Dateisystem referenziert. Eine relative URL wird relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist. Eine absolute URL muss als Protokoll-Teil <code>file</code> verwenden. Das referenzierte Verzeichnis muss eine oder mehrere DER-kodierte Zertifikatsdateien beinhalten. Jede Zertifikatsdatei repr&auml;sentiert einen Vertrauensanker. </li>
- <li>Attribut <code>signerCertsUri</code>: Dieses Attribut vom Typ <code>xs:anyURI </code> enth&auml;lt eine relative oder absolute URL, die ein Verzeichnis im lokalen Dateisystem referenziert. Eine relative URL wird relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist. Eine absolute URL muss als Protokoll-Teil <code>file</code> verwenden. Das referenzierte Verzeichnis muss eine oder mehrere DER-kodierte Zertifikatsdateien beinhalten. Jede Zertifikatsdatei repr&auml;sentiert ein explizit erlaubtes Signatorzertifikat. </li>
- </ul> </td>
+ <td><p>MOA SS erlaubt die Hinterlegung eines vordefinierten Profils f&uuml;r ein Erg&auml;nzungsobjekt,
+ das im Rahmen einer XML-Signaturpr&uuml;fung verwendet werden soll. Im Request zur XML-Signaturpr&uuml;fung reicht es dann aus, auf dieses Profil zu referenzieren, anstatt die Informationen zur Signaturumgebung
+ explizit anzugeben. </p>
+ <p><code>cfg:SupplementProfile</code> enth&auml;lt f&uuml;r ein Datenobjekt in der zu pr&uuml;fenden
+ XML-Signatur ein allenfalls f&uuml;r die Durchf&uuml;hrung der vorgegebenen Transformationen notwendiges
+ Erg&auml;nzungsobjekt (z.B. einen zu importierenden Stylesheet f&uuml;r eine XSL-Transformation).</p>
+ <p><code>cfg:</code><code>SupplementProfile</code> weist folgende obligatorische Kindelemene auf: </p>
+ <ul>
+ <li>Element<code> Id</code>: Dieses Element<code></code> vom Typ <code>xs:token</code> enth&auml;lt
+ einen frei w&auml;hlbaren Identifikator f&uuml;r dieses Konfigurationselement, der innerhalb der
+ XML-Konfigurationsdatei eindeutig sein muss. Dieser Identifikator wird im Request zur Pr&uuml;fung
+ der XML-Signatur verwendet, um das hinterlegte Profil zu referenzieren (vergleiche Element <code>moa:</code><code>SupplementProfileID</code>). </li>
+ <li>Element<code></code> <code>Location</code>: Dieses Element<code></code> vom Typ <code>xs:anyURI</code> enth&auml;lt
+ den Namen der XML-Datei, die das hinterlegte Profil beinhaltet. Der Wert enth&auml;lt eine relative
+ oder absolute URI. Eine relative URI wird von MOA SP als File-URI relativ zum Lage jenes Verzeichnisses
+ interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist. Die XML-Datei muss als
+ Wurzelelement das Element<code> moa:SupplementProfile </code>enthalten.</li>
+ </ul></td>
</tr>
</table>
-
<h1><a name="beispielkonfigurationen"></a>3 Beispielkonfigurationen</h1>
<h2><a name="beispielkonfigurationen_minss" id="beispielkonfigurationen_minss"></a>3.1 Minimale Konfiguration f&uuml;r MOA SS</h2>
- <p>Nachfolgend finden Sie eine zentrale Konfigurationsdatei mit den minimal notwendigen Eintr&auml;gen f&uuml;r den alleinigen Betrieb von MOA SS. Darin enthalten sind folgende Konfigurationselemente:</p>
+ <p>Nachfolgend finden Sie eine zentrale Konfigurationsdatei mit den minimal notwendigen Eintr&auml;gen f&uuml;r
+ den alleinigen Betrieb von MOA SS. Darin sind als Kinder des Wurzelelements <code>cfg:MOAConfiguration</code> folgende
+ Konfigurationselemente enthalten:</p>
<ul>
- <li>Ein Software-Schl&uuml;sselspeicher (<code>cfg:SoftwareKeyModule</code>)</li>
- <li>Eine Schl&uuml;sselgruppe (<code>cfg:KeyGroup</code>)</li>
- <li>Eine Zuordnung dieser Schl&uuml;sselgruppe f&uuml;r einen bestimmten Kunden (<code>cfg:KeyGroupMapping</code>) </li>
+ <li>Ein Software-Schl&uuml;sselspeicher (<code>cfg:SignatureCreation/cfg:KeyModules/cfg:SoftwareKeyModule</code>);</li>
+ <li>Eine Schl&uuml;sselgruppe (<code>cfg:SignatureCreation/</code><code>cfg:KeyGroup</code>);</li>
+ <li>Eine Zuordnung dieser Schl&uuml;sselgruppe f&uuml;r einen bestimmten Kunden (<code>cfg:SignatureCreation/cfg:KeyGroupMapping</code>). </li>
</ul>
<p><a href="../../conf/moa-spss/ss.minimum.config.xml">Minimale Konfiguration f&uuml;r MOA SS</a> </p>
<h2><a name="beispielkonfigurationen_minsp" id="beispielkonfigurationen_minsp"></a>3.2 Minimale Konfiguration f&uuml;r MOA SP</h2>
- <p>Nachfolgend finden Sie eine zentrale Konfigurationsdatei mit den minimal notwendigen Eintr&auml;gen f&uuml;r den alleinigen Betrieb von MOA SP. Darin enthalten sind folgende Konfigurationselemente:</p>
+ <p>Nachfolgend finden Sie eine zentrale Konfigurationsdatei mit den minimal notwendigen Eintr&auml;gen f&uuml;r
+ den alleinigen Betrieb von MOA SP. Darin sind als Kinder des Wurzelelements <code>cfg:MOAConfiguration</code> folgende
+ Konfigurationselemente enthalten:</p>
<ul>
- <li>Ein Vertrauensprofil (<code>cfg:TrustProfile</code>) </li>
+ <li>Einstellungen betreffend die Konstruktion des Zertifikatspfades (<code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathConstruction</code>);</li>
+ <li>Einstellungen betreffend die Validierung des Zertifikatspfades (<code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathValidation</code>),
+ unter anderem ein Vertrauensprofil (<code>cfg:TrustProfile</code>);</li>
+ <li>Einstellungen betreffend die Widerrufspr&uuml;fung von Zertifikaten des Zertifikatspfades (<code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking</code>) . </li>
</ul>
<p><a href="../../conf/moa-spss/sp.minimum.config.xml">Minimale Konfiguration f&uuml;r MOA SP</a> </p>
<h2><a name="beispielkonfigurationen_typspss" id="beispielkonfigurationen_typspss"></a>3.3 Typische Konfiguration f&uuml;r MOA SP/SS</h2>