aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgregor <gregor@d688527b-c9ab-4aba-bd8d-4036d912da1d>2006-04-06 09:02:08 +0000
committergregor <gregor@d688527b-c9ab-4aba-bd8d-4036d912da1d>2006-04-06 09:02:08 +0000
commitffb2df7d075045936cdd4e02fbbdf43503f0f8c2 (patch)
treed07e5688bf57d3e097ed131611e7a21ac19af758
parentc62b56dbce7c8936802c61a3f6b17a0e526a6023 (diff)
downloadmoa-id-spss-ffb2df7d075045936cdd4e02fbbdf43503f0f8c2.tar.gz
moa-id-spss-ffb2df7d075045936cdd4e02fbbdf43503f0f8c2.tar.bz2
moa-id-spss-ffb2df7d075045936cdd4e02fbbdf43503f0f8c2.zip
Initial commit.
git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@701 d688527b-c9ab-4aba-bd8d-4036d912da1d
-rw-r--r--spss.slinterface/handbook/common/LogoBKA.pngbin0 -> 8062 bytes
-rw-r--r--spss.slinterface/handbook/common/LogoMoa4c.jpgbin0 -> 45624 bytes
-rw-r--r--spss.slinterface/handbook/common/LogoMoaBw.jpgbin0 -> 41375 bytes
-rw-r--r--spss.slinterface/handbook/common/MOA.css300
-rw-r--r--spss.slinterface/handbook/conf/log4j/log4j.properties0
-rw-r--r--spss.slinterface/handbook/conf/moa-sl/moa-sl.properties0
-rw-r--r--spss.slinterface/handbook/conf/tomcat/server.xml0
-rw-r--r--spss.slinterface/handbook/index.html41
-rw-r--r--spss.slinterface/handbook/operation/config.html1014
-rw-r--r--spss.slinterface/handbook/operation/operation.html449
-rw-r--r--spss.slinterface/handbook/system/system.html486
11 files changed, 2290 insertions, 0 deletions
diff --git a/spss.slinterface/handbook/common/LogoBKA.png b/spss.slinterface/handbook/common/LogoBKA.png
new file mode 100644
index 000000000..6a92647fd
--- /dev/null
+++ b/spss.slinterface/handbook/common/LogoBKA.png
Binary files differ
diff --git a/spss.slinterface/handbook/common/LogoMoa4c.jpg b/spss.slinterface/handbook/common/LogoMoa4c.jpg
new file mode 100644
index 000000000..a1102090b
--- /dev/null
+++ b/spss.slinterface/handbook/common/LogoMoa4c.jpg
Binary files differ
diff --git a/spss.slinterface/handbook/common/LogoMoaBw.jpg b/spss.slinterface/handbook/common/LogoMoaBw.jpg
new file mode 100644
index 000000000..5a31e3e15
--- /dev/null
+++ b/spss.slinterface/handbook/common/LogoMoaBw.jpg
Binary files differ
diff --git a/spss.slinterface/handbook/common/MOA.css b/spss.slinterface/handbook/common/MOA.css
new file mode 100644
index 000000000..b8428d58d
--- /dev/null
+++ b/spss.slinterface/handbook/common/MOA.css
@@ -0,0 +1,300 @@
+body
+{
+ font-family: "Times New Roman", Times, serif;
+ font-size: medium;
+ font-weight: normal;
+ margin-left: 2.5em;
+ margin-right: 2.5em;
+}
+
+p
+{
+ margin-top: 0pt;
+ margin-bottom: 0.5em;
+ text-align: justify
+}
+
+pre
+{
+ font-family: "Courier New", monospace;
+ font-size: 90%;
+ background-color: #cccccc;
+ color: #000000;
+ margin-left:1.5%;
+ margin-right:1.5%;
+ margin-top: 1em;
+ margin-bottom: 1em;
+ border: #008000 none;
+}
+
+hr
+{
+ color: #000080;
+ background-color: #000080;
+ margin-top: 0.5em;
+ margin-bottom: 0.5em;
+}
+
+table.fixedWidth
+{
+ width: 97%;
+ margin-left:1.5%;
+ margin-right:1.5%;
+ margin-top: 1em;
+ margin-bottom: 1em;
+}
+
+
+table.varWidth
+{
+ margin-left:1.5%;
+ margin-top: 1em;
+ margin-bottom: 1em;
+}
+
+th
+{
+ text-align: left;
+}
+
+h1
+{
+ color: #000080;
+ text-align: left;
+ font-size: 167%;
+ font-family: Arial, Helvetica, sans-serif;
+ font-weight: normal
+}
+
+h2
+{
+ color: #000080;
+ font-size: 150%;
+ font-family: Arial, Helvetica, sans-serif;
+ font-weight: normal
+}
+
+h3
+{
+ color: #000080;
+ font-size: 133%;
+ font-family: Arial, Helvetica, sans-serif;
+ font-weight: normal
+}
+
+h4
+{
+ color: #000080;
+ font-size: 116%;
+ font-family: Arial, Helvetica, sans-serif;
+ font-weight: normal
+}
+
+h5
+{
+ color: #000080;
+ font-size: 100%;
+ font-family: Arial, Helvetica, sans-serif;
+ font-weight: normal
+}
+
+h6
+{
+ color: #000080;
+ font-size: 83%;
+ font-family: Arial, Helvetica, sans-serif;
+ font-weight: normal
+}
+
+code
+{
+ font-family: "Courier New", Courier, monospace;
+ font-size: 90%;
+ color: #000000
+}
+
+dd
+{
+ margin-top: 0.8em;
+ margin-bottom: 0.8em;
+ text-align: justify
+
+}
+
+dt
+{
+ margin-top: 0.8em;
+ font-family: Arial, Helvetica, sans-serif;
+ color: #000080
+}
+
+ol
+{
+ margin-top: 0.5em;
+ margin-bottom: 0.5em
+}
+
+ol.alpha
+{
+ list-style-type: lower-alpha
+}
+
+li
+{
+ margin-top: 0.25em;
+ margin-bottom: 0.25em;
+ text-align: justify
+}
+
+a:hover
+{
+ color: #990000
+}
+
+
+.title
+{
+ text-align: left;
+ font-size: 167%;
+ color: #000080;
+ font-family: Arial, Helvetica, sans-serif;
+ margin-top: 0.4em;
+ margin-bottom: 0.4em
+}
+
+.subtitle
+{
+ text-align: left;
+ font-size: 133%;
+ color: #000080;
+ font-family: Arial, Helvetica, sans-serif;
+ margin-top: 0.4em;
+ margin-bottom: 0.4em
+}
+
+.glossaryTerm
+{
+ font-style: italic;
+ color: #006699
+}
+
+.example
+{
+ font-family: "Courier New", monospace;
+ background-color: #CCFFFF;
+ color: #000000;
+ margin: 0pt 0pt;
+ border: #008000 none
+}
+
+.schema
+{
+ font-family: "Courier New", monospace;
+ background-color: #FFFFCC;
+ color: #000000;
+ margin: 0pt 0pt;
+ border: #008000 none
+}
+
+.documentinfo
+{
+ font-family: Arial, Helvetica, sans-serif;
+ font-size: 100%;
+}
+
+.ol-contents
+{
+ font-size: 100%;
+ margin-top: 0.0em;
+ margin-bottom: 0.0em;
+}
+
+.li-contents
+{
+ font-size: 100%;
+ margin-top: 0.0em;
+ margin-bottom: 0.0em;
+}
+
+.logoTitle
+{
+ text-align: center;
+ font-size: 133%;
+ color: #000080;
+ font-family: Arial, Helvetica, sans-serif;
+}
+
+.logoTable
+{
+ margin-bottom: 0px;
+ margin-left: 0px
+}
+
+.superscript
+{
+ vertical-align: super;
+ font-size: 66%;
+}
+
+.term
+{
+ font-style: italic;
+}
+
+.comment
+{
+ color: #000000;
+ background: #ffff00;
+ font-style: italic
+}
+
+.addedErrata12
+{
+ color: #FF0000;
+ background-color: #FFEEEE;
+ text-decoration: underline
+}
+
+.deletedErrata12
+{
+ color: #999999;
+ background-color: #EEEEEE;
+ text-decoration: line-through
+}
+
+.added12
+{
+ color: #FF0000;
+ text-decoration: underline
+; background-color: #F8F0FF
+}
+
+.deleted12
+{
+ color: #999999;
+ text-decoration: line-through
+; background-color: #f8f0ff
+}
+
+.rfc2119Keyword
+{
+ font-variant: small-caps;
+ font-style: normal;
+}
+
+.remark { font-style: italic}
+
+li.faq
+{
+ margin-top: 1.5em;
+ margin-bottom: 1.5em;
+}
+
+.faq-question
+{
+ color: #000080;
+ font-size: 100%;
+ font-family: Arial, Helvetica, sans-serif;
+ font-weight: normal;
+ margin-bottom: 0.4em;
+}
diff --git a/spss.slinterface/handbook/conf/log4j/log4j.properties b/spss.slinterface/handbook/conf/log4j/log4j.properties
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/spss.slinterface/handbook/conf/log4j/log4j.properties
diff --git a/spss.slinterface/handbook/conf/moa-sl/moa-sl.properties b/spss.slinterface/handbook/conf/moa-sl/moa-sl.properties
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/spss.slinterface/handbook/conf/moa-sl/moa-sl.properties
diff --git a/spss.slinterface/handbook/conf/tomcat/server.xml b/spss.slinterface/handbook/conf/tomcat/server.xml
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/spss.slinterface/handbook/conf/tomcat/server.xml
diff --git a/spss.slinterface/handbook/index.html b/spss.slinterface/handbook/index.html
new file mode 100644
index 000000000..e8b496563
--- /dev/null
+++ b/spss.slinterface/handbook/index.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html>
+<head>
+ <title>MOA SL - &Uuml;bersicht</title>
+ <meta content="Evrsoft First Page" name="GENERATOR">
+ <meta http-equiv="content-type" content="text/html; charset=us-ascii">
+ <link href="./common/MOA.css" type="text/css" rel="stylesheet">
+</head>
+
+<body text="#000000" vlink="#666666" alink="#CC9966" link="#990000" bgcolor="white">
+ <table class="logoTable" cellspacing="0" cellpadding="10" width="100%" border="0">
+ <tbody>
+ <tr>
+ <td class="logoTitle" align="middle" width="267"><img height="37" alt="Logo BKA" src="common/LogoBKA.png" width="267" align="left"></td>
+
+ <td class="logoTitle" align="middle">Open Source<br>
+ f&uuml;r das E-Government</td>
+
+ <td class="logoTitle" align="middle" width="123"><img height="138" alt="Logo MOA" src="common/LogoMoa4c.jpg" width="123" align="right"></td>
+ </tr>
+ </tbody>
+ </table>
+ <hr>
+
+ <p class="title">MOA: Serverseitige Signaturpr&uuml;fung (SL) </p>
+
+ <p class="subtitle">&Uuml;bersicht zur Dokumentation der Version 1.0</p>
+ <hr>
+
+ <dl>
+ <dt><a href="./operation/operation.html">Betriebshandbuch </a></dt>
+
+ <dd>Detaillierte Anleitung f&uuml;r die Installation sowie Erl&auml;uterung aller Konfigurationsoptionen.</dd>
+
+ <dt><a href="./system/system.html">Systemhandbuch</a></dt>
+
+ <dd>Beschreibung der einzelnen Komponenten von MOA SL und ihrem Zusammenspiel.</dd>
+ </dl>
+</body>
+</html>
diff --git a/spss.slinterface/handbook/operation/config.html b/spss.slinterface/handbook/operation/config.html
new file mode 100644
index 000000000..f1097e55a
--- /dev/null
+++ b/spss.slinterface/handbook/operation/config.html
@@ -0,0 +1,1014 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+ <title>MOA SS und SP - Konfiguration</title>
+ <link rel="stylesheet" href="../common/MOA.css" type="text/css">
+</head>
+<body bgcolor="white" text="#000000" link="#990000" vlink="#666666" alink="#cc9966">
+ <table class="logoTable" width="100%" border="0" cellspacing="0" cellpadding="10">
+ <tr>
+ <td align="center" class="logoTitle" width="267"><img src="../common/LogoBKA.png" alt="Logo BKA" width="267" height="37" align="left"></td>
+ <td align="center" class="logoTitle">Open Source<br>
+ f&uuml;r das E-Government</td>
+ <td align="center" class="logoTitle" width="123"><img src="../common/LogoMoa4c.jpg" alt="Logo MOA" width="123" height="138" align="right"></td>
+ </tr>
+ </table>
+ <hr/>
+ <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>
+ <ol>
+ <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>
+ </ol>
+ </li>
+ <li><a href="#&#252;bersicht_bekanntmachung">Bekanntmachung der Konfigurationsdatei
+ </a>
+ <ol>
+ <li><a href="#&#252;bersicht_bekanntmachung_laufenderbetrieb">Aktualisierung der Konfiguration im laufenden Betrieb</a></li>
+ </ol>
+ </li>
+ <li><a href="#&#252;bersicht_logging">Konfiguration des Loggings</a></li>
+ </ol>
+ </li>
+ <li><a href="#konfigurationsparameter">Konfigurationsparameter</a>
+ <ol>
+ <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_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>
+ <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>
+ </ol>
+ </li>
+ <li><a href="#beispielkonfigurationen">Beispielkonfigurationen</a>
+ <ol>
+ <li><a href="#beispielkonfigurationen_minss">Minimale Konfiguration f&uuml;r MOA SS</a></li>
+ <li><a href="#beispielkonfigurationen_minsp">Minimale Konfiguration f&uuml;r MOA SP</a></li>
+ <li><a href="#beispielkonfigurationen_typspss">Typische Konfiguration f&uuml;r MOA SP/SS</a></li>
+ </ol>
+ </li>
+ </ol>
+ <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="&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.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>
+ <p>Wenn Sie von einer &auml;lteren Version von MOA SP/SS auf die Version 1.3 wechseln und Ihre bestehende
+ Konfiguration beibehalten wollen, steht Ihnen ein einfaches Kommandozeilenwerkzeug zur Verf&uuml;gung, mit dem
+ Sie Ihre Konfigurationsdatei vom bisherigen auf das neue Format migrieren k&ouml;nnen. </p>
+ <p>Dieses Werkzeug k&ouml;nnen Sie durch Ausf&uuml;hren des Scripts <code>configtool</code> aus dem Verzeichnis
+ <code>tools</code> im MOA-Installationsverzeichnis verwenden:</p>
+ <pre>configtool c:\pfad\zur\konfiguration\config.alt.xml c:\pfad\zur\konfiguration\config.neu.xml</pre>
+ <p>Der erste Parameter f&uuml;r das Script gibt also Pfad und Dateiname der bestehenden, alten Konfigurationsdatei
+ 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.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.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.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>
+ Weitere Informationen zur Konfiguration des Loggings erhalten Sie in <a href="../install/install.html#webservice_basisinstallation_logging">Abschnitt 2.1.3</a> des Installationshandbuchs.
+<p></p>
+ <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>
+ <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>
+ <td>Name</td>
+ <td><code>cfg:Common/cfg:HardwareCryptoModule</code></td>
+ </tr>
+ <tr>
+ <td> Gebrauch</td>
+ <td>Null mal bis unbeschr&auml;nkt oft </td>
+ </tr>
+ <tr>
+ <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>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:KeyModules/cfg:HardwareKeyModule</code></td>
+ </tr>
+ <tr>
+ <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>
+ <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:SignatureCreation/cfg:KeyModules/cfg:SoftwareKeyModule</code></td>
+ </tr>
+ <tr>
+ <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 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>
+ <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:SignatureCreation/cfg:KeyGroup</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>einmal bis unbeschr&auml;nkt oft </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_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>
+ <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>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:KeyGroupMapping</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>einmal bis unbeschr&auml;nkt oft </td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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>
+ <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>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:XMLDSig/cfg:CanonicalizationAlgorithm</code></td>
+ </tr>
+ <tr>
+ <td> Gebrauch</td>
+ <td>Null mal oder einmal </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>
+ </tr>
+ </table>
+ <table class="fixedWidth" border="1" cellpadding="2">
+ <tr>
+ <td>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:XMLDSig/cfg:DigestMethodAlgorithm</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>Null mal oder einmal </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>
+ </tr>
+ </table>
+ <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>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:CreateTransformsInfoProfile</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>Null mal bis unbeschr&auml;nkt oft</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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>
+ <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>Name</td>
+ <td><code>cfg:SignatureCreation/cfg:CreateSignatureEnvironmentProfile</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>Null mal bis unbeschr&auml;nkt oft</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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>
+ <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> Name </td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathConstruction/cfg:AutoAddCertificates</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>genau einmal</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</td>
+ <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>
+ </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> Name </td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathConstruction/cfg:UseAuthorityInfoAccess</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>genau einmal</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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> Name </td>
+ <td><code>cfg:SignatureVerification/cfg:CertificateValidation/cfg:PathConstruction/cfg:CertificateStore/cfg:DirectoryStore/cfg:Location</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>genau einmal</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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>
+ <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:SignatureVerification/cfg:CertificateValidation/cfg:PathValidation/cfg:ChainingMode</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>genau einmal </td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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>
+ <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:SignatureVerification/cfg:CertificateValidation/cfg:PathValidation/cfg:TrustProfile</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>einmal bis unbeschr&auml;nkt oft (zumindest ein Vertrauensprofil muss vorhanden sein) </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 folgende Kindelemente
+ auf:</p>
+ <ul>
+ <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>
+ <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:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:EnableChecking</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>genau einmal </td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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>
+ <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:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:MaxRevocationAge</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>genau einmal</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</td>
+ <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>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>
+ <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:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:ServiceOrder</code></td>
+ </tr>
+ <tr>
+ <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 (CRL,
+ OCSP).</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>genau einmal </td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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>
+
+ <table class="fixedWidth" border="1" cellpadding="2">
+ <tr>
+ <td>Name</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> Name </td>
+ <td><code> cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:Archiving/cfg:Archive</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</td>
+ <td>Null mal oder einmal </td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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>
+ <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:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:DistributionPoint</code></td>
+ </tr>
+ <tr>
+ <td>Gebrauch</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 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 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_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>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>
+ <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>
+
+ <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:SignatureVerification/cfg:VerifyTransformsInfoProfile</code></td>
+ </tr>
+ <tr>
+ <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>Null mal bis unbeschr&auml;nkt oft</td>
+ </tr>
+ <tr>
+ <td>Erl&auml;uterung</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 sind als Kinder des Wurzelelements <code>cfg:MOAConfiguration</code> folgende
+ Konfigurationselemente enthalten:</p>
+ <ul>
+ <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 sind als Kinder des Wurzelelements <code>cfg:MOAConfiguration</code> folgende
+ Konfigurationselemente enthalten:</p>
+ <ul>
+ <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>
+ <p>Nachfolgend finden Sie eine typische zentrale Konfigurationsdatei mit Eintr&auml;gen f&uuml;r den kombinierten Betrieb von MOA SP und SS. Diese Datei wird auch als Konfiguration von MOA SP und SS verwendet, die f&uuml;r das Ausf&uuml;hren der Beispiele des <a href="../usage/usage.html">Anwenderhandbuchs</a> notwendig ist.</p>
+ <p><a href="../../conf/moa-spss/spss.config.xml">Typische Konfiguration f&uuml;r MOA SP/SS</a> </p>
+ <p>&nbsp; </p>
+</body>
+</html>
diff --git a/spss.slinterface/handbook/operation/operation.html b/spss.slinterface/handbook/operation/operation.html
new file mode 100644
index 000000000..fbdda0b9e
--- /dev/null
+++ b/spss.slinterface/handbook/operation/operation.html
@@ -0,0 +1,449 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+ <title>MOA SL - Betriebshandbuch</title>
+ <link rel="stylesheet" href="../common/MOA.css" type="text/css">
+</head>
+<body bgcolor="white" text="#000000" link="#990000" vlink="#666666" alink="#cc9966">
+ <table class="logoTable" width="100%" border="0" cellspacing="0" cellpadding="10">
+ <tr>
+ <td align="center" class="logoTitle" width="267"><img src="../common/LogoBKA.png" alt="Logo BKA" width="267" height="37" align="left"></td>
+ <td align="center" class="logoTitle">Open Source<br>
+ f&uuml;r das E-Government</td>
+ <td align="center" class="logoTitle" width="123"><img src="../common/LogoMoa4c.jpg" alt="Logo MOA" width="123" height="138" align="right"></td>
+ </tr>
+ </table>
+ <hr/>
+ <p class="title"><a href="../index.html">MOA: Serverseitige Signaturpr&uuml;fung (SL), V 1.0</a></p>
+ <p class="subtitle">Betriebshandbuch</p>
+ <hr/>
+ <h1>Inhalt</h1>
+ <ol>
+ <li>
+ <p><a href="#&#220;bersicht">&Uuml;bersicht</a></p>
+ </li>
+ <li>Installation
+ <ol>
+ <li>Einf&uuml;hrung</li>
+ </ol>
+ </li>
+ <li>Konfiguration</li>
+ <li>
+ <p><a href="#webservice">Webservice</a></p>
+ <ol>
+ <li><a href="#webservice_basisinstallation">Basisinstallation</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_einf&#252;hrung">Einf&uuml;hrung</a></li>
+ <li><a href="#webservice_basisinstallation_installation">Installation</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_installation_vorbereitung">Vorbereitung</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig">Konfiguration von Apache Tomcat</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig_httpconn">Konfiguration des HTTP Connectors</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig_httpsconn">Konfiguration des HTTPS Connectors</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig_moaadmin">Einrichten des MOA SP/SS Administrators</a></li>
+ </ol>
+ </li>
+ <li><a href="#webservice_basisinstallation_installation_spssdeploy">Einsatz des MOA SP/SS Webservices in Tomcat</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig_httpsconn">Starten und Stoppen von Tomcat</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_installation_tomcatstartstop_windows">Unter Windows</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatstartstop_unix">Unter Unix</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatstartstop_verify">Pr&uuml;fen des erfolgreichen Starts</a> </li>
+ </ol>
+ </li>
+ <li><a href="#webservice_basisinstallation_installation_changeonthefly">&Auml;nderung der Konfiguration im laufenden Betrieb</a></li>
+ </ol>
+ </li>
+ <li><a href="#webservice_basisinstallation_logging">Logging</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_logging_format">Format der Log-Meldungen</a></li>
+ <li><a href="#webservice_basisinstallation_logging_messages">Wichtige Log-Meldungen</a></li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten">Erweiterungsm&ouml;glichkeiten</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver">Vorgeschalteter Webserver</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis">Microsoft Internet Information Server (MS IIS)</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis_jk">Konfiguration von <span class="term">Jakarta mod_jk</span> im MS IIS</a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis_tomcat">Konfiguration von Tomcat</a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis_ssl">Konfiguration von SSL</a></li>
+ </ol>
+ </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_apache">Apache</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_apache_jk">Konfiguration von <span class="term">Jakarta mod_jk</span> im Apache </a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_apache_tomcat">Konfiguration von Tomcat</a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_apache_ssl">Konfiguration von SSL mit <span class="term">mod_SSL</span></a></li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank">Datenbank</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql">PostgreSQL</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql_benutzer">Anlegen eines Benutzers und einer Datenbank f&uuml;r MOA SP/SS</a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql_crls">Archivierung von CRLs</a> </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql_logging">Logging</a></li>
+ </ol>
+ </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_andere">Andere Datenbanken</a> </li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ </ol>
+ <li><a href="#klassenbibliothek">Klassenbibliothek</a>
+ <ol>
+ <li><a href="#klassenbibliothek_basisinstallation">Basisinstallation</a>
+ <ol>
+ <li><a href="#klassenbibliothek_basisinstallation_einfuehrung">Einf&uuml;hrung</a></li>
+ <li><a href="#klassenbibliothek_basisinstallation_vorbereitung">Vorbereitung</a></li>
+ <li><a href="#klassenbibliothek_basisinstallation_verwendung">Verwendung</a></li>
+ <li><a href="#klassenbibliothek_basisinstallation_logging">Logging</a></li>
+ </ol>
+ </li>
+ <li><a href="#klassenbibliothek_erweiterungsm&#246;glichkeiten">Erweiterungsm&ouml;glichkeiten</a></li>
+ </ol>
+ </li>
+ </ol>
+ <ol type="A">
+ <li><a href="#referenzierte_software">Referenzierte Software</a></li>
+ </ol>
+ <hr/>
+ <h1><a name="übersicht" id="übersicht"></a>1 &Uuml;bersicht</h1>
+ <p> Das Modul Serverseitige Signaturpr&uuml;fung (SL) ist als plattformunabh&auml;ngiges Modul ausgelegt, das als Webservice &uuml;ber HTTP bzw. HTTPS angesprochen werden kann. </p>
+ <p>Dieses Handbuch beschreibt einerseits die Installation des Moduls, andererseits werden die Konfigurationsm&ouml;glichkeiten dargestellt. F&uuml;r eine funktionale Beschreibung des Moduls siehe <a href="../system/system.html">Systemhandbuch</a>. </p>
+ <h1><a name="installation" id="installation"></a>2 Installation</h1>
+ <h2><a name="installation_einf&uuml;hrung" id="installation_einf&uuml;hrung"></a>2.1 Einf&uuml;hrung </h2>
+ <p>Das MOA SL Webservice wurde plattformunabh&auml;nig konzipiert und in Java entwickelt. Es ben&ouml;tigt als Ablaufumgebung eine Java 2 Standard Edition (J2SE SDK, Version <a href="http://java.sun.com/j2se/1.4.2/">1.4.2</a> oder <a href="http://java.sun.com/j2se/1.5.0/">5.0</a>) sowie einen Java Servlet Container, der die <span class="comment">Java Servlet Specification</span> in der Version <span class="comment">x.y</span> erf&uuml;llt.</p>
+ <p>In diesem Betriebshandbuch wird davon ausgegangen, dass MOA SL <a href="http://jakarta.apache.org/tomcat/index.html">Apache Tomcat</a> (Version 4.1 oder h&ouml;her) als Servlet Container verwendet. Die Verwendung eines anderen Servlet Containers ist grunds&auml;tzlich m&ouml;glich, wurde aber nicht getestet und ist auch nicht Gegenstand dieses Betriebshandbuchs. </p>
+ <p>Weiters wird davon ausgegangen, dass Apache Tomcat gleichzeitig als HTTP- bzw. HTTPS-Endpunkt f&uuml;r das MOA SL Webservice dient, d.h. beide Protokolle werden direkt in Tomcat konfiguriert. Die Verwendung eines vor Apache Tomcat geschalteten Webservers ist grunds&auml;tzlich m&ouml;glich. So werden etwa als Teil des Apache Tomcat Projekts <span class="comment">Module</span> zur Verbindung mit einem vorgeschalteten Microsoft Internet Information Server oder mit einem vorgeschalteten Apache Webserver angeboten. Die Beschreibung der m&ouml;glichen Vorschaltungen ist jedoch nicht Teil dieses Betriebshandbuchs. </p>
+ <p>Das MOA SL Webservice nimmt Signaturpr&uuml;fungsrequests f&uuml;r XML-Signaturen entsprechend der Spezifikation des Security-Layers zur &ouml;sterreichischen B&uuml;rgerkarte in den Versionen 1.1 und 1.2 entgegen. F&uuml;r die Durchf&uuml;hrung der Signaturpr&uuml;fung bedient sich MOA SL des Moduls MOA Signaturpr&uuml;fung (SP). F&uuml;r den Betrieb von MOA SL ist daher die Verf&uuml;gbarkeit einer Webservice-Installation von MOA SP in der Version 1.2 oder h&ouml;her Voraussetzung. </p>
+ <p>Als Logging Toolkit verwendet das MOA SL Webservice <a href="http://logging.apache.org/log4j/">Apache Log4j</a>. </p>
+ <h2><a name="installation_vorbereitung" id="installation_vorbereitung"></a>2.2 Vorbereitung</h2>
+ <p>Die folgenden Schritte dienen der Vorbereitung der Installation.</p>
+ <dl>
+ <dt>Installation von J2SE SDK</dt>
+ <dd>Installieren Sie <a href="http://java.sun.com/j2se/1.4.2/">J2SE 1.4.2 SDK</a> oder <a href="http://java.sun.com/j2se/1.5.0/">J2SE 5.0 SDK</a> in ein beliebiges Verzeichnis. Das Wurzelverzeichnis der J2SE SDK Installation wird im weiteren Verlauf als <code>$JAVA_HOME</code> bezeichnet. </dd>
+ <dt>Installation von Apache Tomcat</dt>
+ <dd> Installieren Sie <a href="http://jakarta.apache.org/tomcat/index.html">Apache Tomcat</a> 4.1.31 oder h&ouml;her in ein Verzeichnis, das keine Leerzeichen im Pfadnamen enth&auml;lt. Verwenden Sie bitte die zu Ihrem J2SE SDK passende Distribution von Tomcat. Das Wurzelverzeichnis der Tomcat-Installation wird im weiteren Verlauf als <code>$CATALINA_HOME</code> bezeichnet.</dd>
+ <dt>Installation von MOA SP </dt>
+ <dd>Installieren Sie das <span class="comment">Kombinationsmodul MOA SPSS</span> Version 1.2 oder h&ouml;her entsprechend seiner Installationsanleitung. Sie ben&ouml;tigen die Webservice-Schnittstelle von MOA SP. Es ist ausreichend, mittels entsprechender Konfigurationseinstellungen ausschlie&szlig;lich MOA SP zu aktivieren; MOA SS kann deaktiviert bleiben. Wenn Sie sowohl f&uuml;r MOA SPSS als auch f&uuml;r MOA SL Apache Tomcat als Servlet Container verwenden m&ouml;chten, empfehlen wir, MOA SPSS und MOA SL in jeweils eigenst&auml;ndigen Instanzen von Apache Tomcat zu betreiben. </dd>
+ <dt>Entpacken der MOA SL Distribution</dt>
+ <dd> Entpacken Sie die Datei <code>moa-sl-1.0.x.zip</code> in ein beliebiges Verzeichnis. Dieses Verzeichnis wird im weiteren Verlauf als <code>$MOA_SL_INST</code> bezeichnet. </dd>
+</dl>
+ <h2><a name="installation_tomcatconfig" id="installation_tomcatconfig"></a>2.3 Konfiguration von Apache Tomcat</h2>
+ <p> Die zentrale Konfigurations-Datei von Tomcat ist <code>$CATALINA_HOME/conf/server.xml</code>. Tomcat wird grunds&auml;tzlich mit einer funktionierenden Default-Konfiguration ausgeliefert, die jedoch einiges an Ballast enth&auml;lt und viele Ports offen l&auml;sst. </p>
+ <h3><a name="installation_tomcatconfig_httpconn" id="installation_tomcatconfig_httpconn"></a>2.3.1 Konfiguration des HTTP Connectors</h3>
+ <p> Die Datei <code>$MOA_SL_INST/conf/tomcat/server.xml</code> enth&auml;lt eine minimale Tomcat-Konfiguration, die ausschlie&szlig;lich den Connector f&uuml;r HTTP auf Port 8080 freischaltet. Durch kopieren dieser Datei nach <code>$CATALINA_HOME/conf/server.xml</code> kann Tomcat mit dieser Konfiguration gestartet werden. Wir empfehlen diese Konfiguration nur f&uuml;r F&auml;lle, in denen das MOA SL Webservice in einer abgeschlossenen Netzwerkumgebung betrieben wird. </p>
+ <h3><a name="installation_tomcatconfig_httpsconn" id="installation_tomcatconfig_httpsconn"></a>2.3.2 Konfiguration des HTTPS Connectors</h3>
+ <p>Wird das MOA SL Webservice in einer nicht abgeschlossenen Umgebung (z.B. Erreichbarkeit &uuml;ber das Internet) betrieben, ist es f&uuml;r den Benutzer von MOA SL essentiell, die Identit&auml;t des Webservice eindeutig feststellen zu k&ouml;nnen, denn er vertraut dem Webservice ja die Pr&uuml;fung einer elektronischen Signatur an. Diese Identit&auml;tspr&uuml;fung kann mit hoher Qualit&auml;t vorgenommen werden, wenn die Erreichbarkeit des Webservice auf HTTPS mit Serverauthentisierung eingeschr&auml;nkt wird. </p>
+ <p>F&uuml;r die dazu notwendige Konfiguration kann die im vorigen Abschnitt besprochene minimale Tomcat-Konfiguration als Ausgangspunkt verwendet werden: Zun&auml;chst ist der HTTP Connector abzuschalten (auszukommentieren). Anschlie&szlig;end ist der HTTPS Connector zu konfigurieren. Das Dokument <a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/ssl-howto.html">Tomcat SSL Configuration HOW-TO </a> gibt einen guten &Uuml;berblick dazu. Grob zusammengefasst sind folgende Schritte durchzuf&uuml;hren: </p>
+ <ul>
+ <li>Erstellung eines <span class="term">Server-Keystores</span>, der den privaten Schl&uuml;ssel sowie das zugeh&ouml;rige Zertifikat des Webservices enth&auml;lt, mit dem es sich bei Aufbau einer SSL-Verbindung gegen&uuml;ber dem Kunden ausweist. Sie k&ouml;nnen diesen Keystore z.B. mit <code>keytool</code> erstellen, einem Programm, das Ihrem J2SE SDK beiliegt.</li>
+ <li>Erstellung eines <span class="term">Client-Keystores</span>, der die Zertifikate aller Kunden des Webservices enth&auml;lt. Nur Kunden des MOA SL Webservices, die sich beim Aufbau einer SSL-Verbindung gegen&uuml;ber dem Webservice mit einem im <span class="term">Client-Keystore</span> enthaltenen Zertifikat ausweisen, erhalten Zugriff zu den Diensten des MOA SL Webservices. Auch dieser Keystore kann z.B. mit <code>keytool</code> erstellt werden. Dieser Keystore ist optional und braucht nur erstellt zu werden, wenn sich die Kunden gegen&uuml;ber dem MOA SL Webservice authentisieren m&uuml;ssen. </li>
+ <li>Konfiguration des HTTPS Connectors in <code>$CATALINA_HOME/conf/server.xml</code>.</li>
+ </ul>
+ <p>Die Konfiguration des HTTPS Connectors kann entfallen, wenn Tomcat ein Webserver vorgeschaltet ist, und dieser die SSL-Kommunikation mit dem Kunden &uuml;bernimmt (siehe <a href="#installation_einführung">Abschnitt 2.1</a>).</p>
+ <h2><a name="webservice_basisinstallation_installation_spssdeploy" id="webservice_basisinstallation_installation_spssdeploy"></a>2.4 Einsatz des MOA SL Webservices in Tomcat</h2>
+ <p> Um das MOA SL Webservice in Tomcat f&uuml;r den Einsatz vorzubereiten, sind folgende Schritte notwendig:</p>
+ <ul>
+ <li>Die Datei <code>$MOA_SL_INST/moa-sl.war</code> enth&auml;lt das einsatzfertige MOA SL Webarchiv und muss ins Verzeichnis <code>$CATALINA_HOME/webapps</code> kopiert werden. Dort wird sie beim ersten Start von Tomcat automatisch ins Verzeichnis <code>$CATALINA_HOME/webapps/moa-sl</code> entpackt. </li>
+ <li>Die zentrale Konfigurationsdatei f&uuml;r MOA SL muss in ein beliebiges Verzeichnis im Dateisystem kopiert werden (z.B. <code>$CATALINA_HOME/conf/moa-sl</code>). Eine funktionsf&auml;hige Konfiguration, die als Ausgangspunkt f&uuml;r die Konfiguration des MOA SL Webservices dienen kann, finden Sie <a href="../conf/moa-sl/moa-sl.properties">hier</a>. </li>
+ <li>Die Dateien <code>xalan.jar</code>, <code>xercesImpl.jar</code> und <code>xmlParserAPIs.jar</code> aus dem Verzeichnis <code>$MOA_SL_INST/endorsed14</code> m&uuml;ssen in das Tomcat-Verzeichnis <code>$CATALINA_HOME/common/endorsed</code> kopiert werden. Sind gleichnamige Dateien dort bereits vorhanden, m&uuml;ssen sie &uuml;berschrieben werden. Die ggf. in diesem Verzeichnis vorhandene Datei <code>xml-apis.jar</code> muss gel&ouml;scht werden.</li>
+ <li>Folgende <span class="term">System Properties</span> m&uuml;ssen bzw. k&ouml;nnen gesetzt werden (werden beim Starten von Tomcat der <span class="term">Java Virtual Machine</span> in der Umgebungsvariablen <code>CATALINA_OPTS</code> in der Form <code>-D&lt;name&gt;=&lt;wert&gt;</code> &uuml;bergeben):
+ <ul>
+ <li id="klein"><code>at.gv.egovernment.moa.spss.slinterface.PropertiesLocation</code>: Pfad und Name der zentralen Konfigurationsdatei f&uuml;r MOA SL. Eine beispielhafte Konfigurationsdatei finden Sie <a href="../conf/moa-sl/moa-sl.properties">hier</a>. Wird ein relativer Pfad angegeben, wird zuerst versucht, diesen relativ zum Wurzelverzeichnis der Webapplikation (also <code>$CATALINA_HOME/webapps/moa-sl</code>) zu interpretieren. Klappt das nicht, wird dann versucht, den relativen Pfad relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> zu interpretieren. Diese <span class="term">System Property</span> muss jedenfalls gesetzt werden.</li>
+ <li id="klein"><code>log4j.configuration</code>: URL der Log4j Konfigurationsdatei. Eine beispielhafte Log4j-Konfiguration finden Sie <a href="../conf/log4j/log4j.properties">hier</a>. Wird eine relative URL angegeben, wird diese als File-URL relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert. <span class="comment">Ist diese System Property nicht gesetzt, wird automatisch eine im Webarchiv unter <code>WEB-INF/classes</code> enthaltene Default-Konfiguration herangezogen.</span></li>
+ <li id="klein"><code>javax.net.ssl.trustStore</code>: Pfad und Dateiname des <span class="term">Truststores</span> f&uuml;r vertrauensw&uuml;rdige SSL Client-Zertifikate (optional; nur wenn kein Webserver vor Tomcat geschalten wird und SSL Client-Authentisierung durchgef&uuml;hrt werden soll). Ein relativer Pfad werden relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert.</li>
+ <li id="klein"><code>javax.net.ssl.trustStorePassword</code>: Passwort f&uuml;r den <span class="term">Truststore</span> (optional; nur wenn kein Webserver vor Tomcat geschalten wird und SSL Client-Authentisierung durchgef&uuml;hrt werden soll). </li>
+ <li id="klein"><code>javax.net.ssl.trustStoreType</code>: Truststore-Typ (optional; nur wenn kein Webserver vor Tomcat geschalten wird und SSL Client-Authentisierung durchgef&uuml;hrt werden soll). Je nach verwendetem Keystore-Typ muss <code>jks</code> (<span class="term">Java Key Store</span>) oder <code>pkcs12</code> (PKCS#12-Datei) angegeben werden.</li>
+ </ul>
+ </li>
+</ul>
+ <h2><a name="installation_tomcatstartstop" id="installation_tomcatstartstop"></a>2.5 Starten und Stoppen von Tomcat</h2>
+ <h3><a name="installation_tomcatstartstop_windows" id="installation_tomcatstartstop_windows"></a>2.5.1 Unter Windows</h3>
+ <p>Das Verzeichnis <code>$MOA_SL_INST/conf/tomcat/win32</code> enth&auml;lt Script-Dateien zum Starten und Stoppen von Tomcat. Vor der erstmaligen Verwendung der Scripts m&uuml;ssen in den ersten Zeilen die Umgebungsvariablen <code>JAVA_HOME</code> (Basisverzeichnis des eingesetzten J2SE SDK) und <code>CATALINA_HOME</code> (Basisverzeichnis der eingesetzten Tomcat-Installation) angepasst werden. Evtl. m&uuml;ssen Sie auch noch die in den Script-Dateien gesetzten, in <a href="#webservice_basisinstallation_installation_spssdeploy">Abschnitt 2.4</a> besprochenen <span class="term">System Properties</span> anpassen. </p>
+ <h3><a name="webservice_basisinstallation_installation_tomcatstartstop_unix" id="webservice_basisinstallation_installation_tomcatstartstop_unix"></a>2.5.2 Unter Unix</h3>
+ <p>Zun&auml;chst m&uuml;ssen die in <a href="#webservice_basisinstallation_installation_spssdeploy">Abschnitt 2.4</a> besprochenen <span class="term">System Properties</span> mit Hilfe der Umgebungsvariablen <code>CATALINA_OPTS</code> gesetzt wrden. Die Datei <code>$MOA_SL_INST/tomcat/unix/moa-env.sh</code> enth&auml;lt ein Beispiel daf&uuml;r. Weiters m&uuml;ssen noch die Umgebungsvariablen <code>JAVA_HOME</code> (Basisverzeichnis des eingesetzten J2SE SDK) und <code>CATALINA_HOME</code> (Basisverzeichnis der eingesetzten Tomcat-Installation) angepasst werden.</p>
+ <p>Nun kann Tomcat aus seinem Basisverzeichnis mit </p>
+<pre>bin/catalina.sh start</pre>
+gestartet werden. Das Stoppen von Tomcat erfolgt analog mit
+<pre>bin/catalina.sh stop</pre>
+<h3><a name="installation_tomcatstartstop_verify" id="installation_tomcatstartstop_verify"></a><span class="comment">2.5.3 Pr&uuml;fen des erfolgreichen Starts </span></h3>
+
+ <p>Ein erfolgreicher Start des MOA SL Webservices ist an folgender Log-Meldung ersichtlich: </p>
+
+ <pre>INFO | 18 10:09:45,155 | main | TID=startup NID=&lt;null&gt; MSG=MOA Konfiguration erfolgreich geladen
+</pre>
+<p>Bei leichten Fehlern in der Konfiguration geben <code>WARN</code> Log-Meldungen unmittelbar davor Aufschluss &uuml;ber fehlerhafte Konfigurations-Eintr&auml;ge.
+ Nach dem Starten von Tomcat steht das MOA SP/SS Webservice f&uuml;r die Server-Signatur und Signatur-Pr&uuml;fung unter den Endpunkten </p>
+<pre>http://&lt;host&gt;:&lt;port&gt;/moa-spss/services/SignatureCreation
+</pre>
+<p>bzw.
+</p>
+<pre>http://&lt;host&gt;:&lt;port&gt;/moa-spss/services/SignatureVerification
+</pre>
+<p>zur Verf&uuml;gung. Die Verf&uuml;gbarkeit des Services k&ouml;nnen Sie einfach &uuml;berpr&uuml;fen, indem Sie die Endpunkte mit einem Web-Browser aufgerufen; dies sollte nach erfolgreichem Start zur Anzeige einer Informationsseite f&uuml;hren. </p>
+<p>Konnte das MOA SP/SS Webservice nicht ordnungsgem&auml;&szlig; gestartet werden, f&uuml;hrt das zu folgender Log-Meldung:</p>
+<pre>FATAL | 18 10:17:03,475 | main | TID=startup NID=&lt;null&gt; <br> MSG=Fehler beim Lesen der MOA Konfiguration: das Service steht nicht zur Verf&uuml;gung
+</pre>
+In diesem Fall geben die <code>WARN</code> bzw. <code>ERROR</code> Log-Meldungen unmittelbar davor Aufschluss &uuml;ber den genaueren Grund.
+<h3><a name="webservice_basisinstallation_logging" id="webservice_basisinstallation_logging"></a>2.1.3 Logging </h3>
+<p>Das MOA SL Webservice verwendet <a href="http://logging.apache.org/log4j/">Apache Log4j</a><a href="#referenziertesoftware"></a> f&uuml;r die Ausgabe von Log-Meldungen am Bildschirm bzw. in Log-Dateien. Log4j bietet zahlreiche Konfigurationsm&ouml;glichkeiten, die ausf&uuml;hrlich im <a href="http://logging.apache.org/log4j/">Apache Log4j</a><a href="#referenziertesoftware"></a> Handbuch beschrieben sind. Unter anderem gibt es die M&ouml;glichkeit, folgende Einstellungen vorzunehmen:
+<ul>
+ <li id="klein">
+ <p>Das verwendete Log-Level (<code>DEBUG</code>, <code>INFO</code>, <code>WARN</code>, <code>ERROR</code>, <code>FATAL</code>);</p>
+ </li>
+ <li id="klein">
+ <p>Name und maximale Gr&ouml;&szlig;e der Log-Datei(en);</p>
+ </li>
+ <li id="klein">
+ <p>Das Aussehen der Log-Eintr&auml;ge.</p>
+ </li>
+</ul>
+ <p>Das MOA SL Webservice verwendet folgende Log-Hierarchien: </p>
+ <ul>
+ <li>
+ <p><code>moa.spss.server</code> f&uuml;r alle Log-Meldungen aus dem MOA/SPSS Webservice; </p>
+ </li>
+ <li>
+ <p><code>iaik.server</code> f&uuml;r alle Log-Meldungen aus den SIC/IAIK Kryptographie-Modulen. </p>
+ </li>
+</ul>
+ <p>Eine f&uuml;r MOA SP/SS passende Konfigurationsdatei f&uuml;r Log4j finden Sie <a href="../../conf/moa-spss/log4j.properties">hier</a>. Wird diese Datei als Logging-Konfiguration verwendet, so werden alle Log-Meldungen sowohl in die Konsole, als auch in die Datei <code>moa-spss.log</code> geschrieben. </p>
+ <h4><a name="webservice_basisinstallation_logging_format" id="webservice_basisinstallation_logging_format"></a>2.1.3.1 Format der Log-Meldungen</h4>
+ <p> Anhand einer konkreten Log-Meldung wird das Format der MOA SP/SS Log-Meldungen erl&auml;utert: </p>
+ <pre>INFO | 01 21:25:26,540 | Thread-3 | TID=1049225059594-100 NID=node1
+ MSG=Starte neue Transaktion: TID=1049225059594-100, Service=SignatureVerification
+</pre>
+<p> Der Wert <code>INFO</code> besagt, dass die Log-Meldung im Log-Level <code>INFO</code> entstanden ist. Folgende Log-Levels existieren:</p>
+ <ul>
+ <li>
+ <p><code>DEBUG</code>: Log-Meldungen im Log-Level <code>DEBUG</code> geben Auskunft &uuml;ber die innere Arbeitsweise des Systems. Sie sind haupts&auml;chlich f&uuml;r Entwickler interessant.</p>
+ </li>
+ <li>
+ <p><code>INFO</code>: Diese Log-Meldungen geben Status-Informationen &uuml;ber den Ablauf des Webservices, wie z.B. &uuml;ber das Einlangen einer neuen Anfrage.</p>
+ </li>
+ <li>
+ <p><code>WARN</code>: Bei der Ausf&uuml;hrung einer Anfrage sind leichte Fehler aufgetreten. Der Ablauf des Webservices ist nicht weiter beeintr&auml;chtigt.</p>
+ </li>
+ <li>
+ <p><code>ERROR</code>: Die Ausf&uuml;hrung einer Anfrage musste abgebrochen werden. Das Webservice ist davon nicht beeintr&auml;chtigt. </p>
+ </li>
+ <li>
+ <p><code>FATAL</code>: Es ist ein Fehler aufgetreten, der den weiteren Betrieb des Webservices nicht mehr erlaubt.</p>
+ </li>
+ </ul>
+ <p>Der n&auml;chste Wert <code>01 21:25:26,540</code> gibt den Zeitpunkt an, zu dem die Log-Meldung generiert wurde (in diesem Fall den 1. Tag im aktuellen Monat, sowie die genaue Uhrzeit). </p>
+ <p> Der Wert <code>Thread-3</code> bezeichnet den Thread, von dem die Anfrage bearbeitet wird.</p>
+ <p> Der Wert von <code>TID</code> gibt die f&uuml;r jede Anfrage eindeutige Transaktions-ID an. Log-Meldungen, die bei der Abarbeitung dieser Anfrage geschrieben werden, enthalten alle einen Hinweis auf die entsprechende Transaktions-ID.</p>
+ <p> Der Wert von <code>NID</code> gibt den Rechner-Knoten an, auf dem das MOA SP/SS Webservice l&auml;uft (bei <code>NID=&lt;null&gt;</code> ist dieser Wert nicht konfiguriert, vergleiche Abschnitt <a href="#webservice_basisinstallation_installation_spssdeploy">2.1.2.3</a>).</p>
+ <p> Der Rest der Zeile einer Log-Meldung ist der eigentliche Text, mit dem das System bestimmte Informationen anzeigt. Im Fehlerfall ist h&auml;ufig ein Java Stack-Trace angef&uuml;gt, der eine genauere Ursachen-Forschung erm&ouml;glicht.</p>
+ <h4> <a name="webservice_basisinstallation_logging_messages" id="webservice_basisinstallation_logging_messages"></a>2.1.3.2 Wichtige Log-Meldungen</h4>
+ <p> Neben den im Abschnitt <a href="#webservice_basisinstallation_installation_tomcatstartstop_verify">2.1.2.4.3</a> beschriebenen Log-Meldungen, die anzeigen, ob das Service ordnungsgem&auml;&szlig; gestartet wurde, geben nachfolgenden Log-Meldungen Aufschluss &uuml;ber die Abarbeitung von Anfragen. </p>
+ <p>Die Entgegennahme einer Anfrage wird angezeigt durch:
+
+ </p>
+ <pre>INFO | 01 21:25:26,540 | Thread-3 | TID=1049225059594-100 NID=&lt;null&gt;
+ MSG=Starte neue Transaktion: TID=1049225059594-100, Service=SignatureVerification
+INFO | 01 21:25:26,540 | Thread-3 | TID=1049225059594-100 NID=&lt;null&gt;
+ MSG=Aufruf von Adresse=127.0.0.1
+INFO | 01 21:25:26,540 | Thread-3 | TID=1049225059594-100 NID=&lt;null&gt;
+ MSG=Client-Zertifikat nicht verf&uuml;gbar</pre>
+ <p> Die dritte Log-Meldung besagt, dass f&uuml;r die Abarbeitung dieser Anfrage kein Client-Zertifikat verf&uuml;gbar ist (entweder, weil die Anfrage &uuml;ber HTTP eingelangt ist, oder weil die SSL Client-Authentisierung nicht eingeschaltet ist). Bei erfolgreicher SSL Client-Authentisierung, gibt beispielsweise folgende Log-Meldung Informationen &uuml;ber das Client-Zertifikat aus:
+ <pre>INFO | 12 13:58:08,772 | Thread-10 | TID=1045054687159-2 NID=&lt;null&gt;
+ MSG=Client-Zertifikat: Subject=CN=Testuser, OU=MOA, O=BRZ, L=Vienna, ST=Vienna, C=AT,
+ Serial=1.039.104.204, Issuer=CN=TestCA, OU=MOA, O=BRZ, L=Vienna, ST=Vienna, C=AT</pre>
+ <p>Eine erfolgreich abgearbeitete Anfrage wird angezeigt durch:
+ </p>
+ <pre>INFO | 01 21:25:53,168 | Thread-3 | TID=1049225059594-106 NID=&lt;null&gt;
+ MSG=Anfrage erfolgreich abgearbeitet</pre>
+ <p>Ein Fehler beim Abarbeiten der Anfrage wird angezeigt durch: </p>
+ <pre>INFO | 01 21:25:27,642 | Thread-3 | TID=1049225059594-100 NID=&lt;null&gt;
+ MSG=Fehler beim Abarbeiten der Anfrage</pre>
+ <div id="block">
+ <p>In diesem Fall gibt der mitgeloggte Stacktrace Auskunft &uuml;ber die Art des Fehlers. Der Aufrufer des MOA SP/SS Webservices bekommt einen Fehlercode sowie eine kurze Beschreibung des Fehlers als Antwort zur&uuml;ck. </p>
+ <p> Die Tats&auml;chlich &uuml;bertragenen Anfragen bzw. Antworten werden aus Effizienzgr&uuml;nden nur im Log-Level <code>DEBUG</code> angezeigt. </p>
+ </div>
+ <h2><a name="webservice_erweiterungsmöglichkeiten" id="webservice_erweiterungsmöglichkeiten"></a>2.2 Erweiterungsm&ouml;glichkeiten</h2>
+<p>Ausgehend von der <a href="#webservice_basisinstallation">Basisinstallation</a> k&ouml;nnen die optionalen Erweiterungen, die in den nachfolgenden Abschnitten beschrieben werden, unabh&auml;ngig und in beliebiger Kombination aufgesetzt werden.</p>
+ <h3><a name="webservice_erweiterungsmöglichkeiten_webserver" id="webservice_erweiterungsmöglichkeiten_webserver"></a>2.2.1 Vorgeschalteter Webserver</h3>
+ <h4><a name="webservice_erweiterungsmöglichkeiten_webserver_iis" id="webservice_erweiterungsmöglichkeiten_webserver_iis"></a>2.2.1.1 Microsoft Internet Information Server (MS IIS) </h4>
+ <p>Den MOA SP/SS Webservices kann optional ein MS IIS vorgeschaltet sein. In diesem Fall &uuml;bernimmt der MS IIS die HTTP- bzw. HTTPS-Kommunikation mit dem Aufrufer des Webservices. Die Kommunikation zwischen MS IIS und dem in Tomcat eingerichteten MOA SP/SS Webservice wird durch <span class="term">Jakarta mod_jk</span> durchgef&uuml;hrt. Die angef&uuml;hrten Konfigurationsschritte gehen von einer MS IIS Standard-Installation aus.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_iis_jk" id="webservice_erweiterungsmöglichkeiten_webserver_iis_jk"></a>2.2.1.1.1 Konfiguration von <span class="term">Jakarta mod_jk</span> im MS IIS</h5>
+ <p> F&uuml;r die Kommunikation des MS IIS mit dem im Tomcat eingerichteten MOA SP/SS Webservice wird das <span class="term">ISAPI</span>-Modul von <span class="term">Jakarta mod_jk</span> im MS IIS installiert und konfiguriert. Eine detaillierte Installations- und Konfigurationsanleitung gibt das <span class="term"><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/howto/iis.html" target="_blank">mod_jk</a></span><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/jk/iishowto.html"> IIS HowTo</a>. Beispiele f&uuml;r <code>workers.properties</code> und <code>uriworkermap.properties</code> Dateien liegen im Verzeichnis <code>$MOA_SL_INST/tomcat</code> bei.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_iis_tomcat" id="webservice_erweiterungsmöglichkeiten_webserver_iis_tomcat"></a>2.2.1.1.2 Konfiguration von Tomcat</h5>
+ <p> Damit Tomcat die Aufrufe entgegennehmen kann, die von MS IIS mittels <span class="term">Jakarta mod_jk</span> weiterleitet werden, muss in <code>$CATALINA_HOME/conf/server.xml</code> der <span class="term">AJP 1.3 Connector</span> aktiviert werden. Im Gegenzug k&ouml;nnen die Konnektoren f&uuml;r HTTP und HTTPS deaktiviert werden. Das geschieht am einfachsten durch Ein- bzw. Auskommentieren der entsprechenden <code>Connector</code> Konfigurations-Elemente in dieser Datei. Die Datei <code>$MOA_SL_INST/tomcat/server.mod_jk.xml</code> enth&auml;lt eine Konfiguration, die ausschlie&szlig;lich den Port f&uuml;r den <span class="term">AJP 1.3 Connector</span> offen l&auml;sst.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_iis_ssl" id="webservice_erweiterungsmöglichkeiten_webserver_iis_ssl"></a>2.2.1.1.3 Konfiguration von SSL</h5>
+ <p> Die Dokumentation zum Einrichten von SSL auf dem MS IIS steht nach Installation des IIS unter http://localhost/iisHelp/ oder aber auch auf den Websiten vo Mircrosoft zur Verf&uuml;gung. </p>
+ <h4><a name="webservice_erweiterungsm&ouml;glichkeiten_webserver_apache" id="webservice_erweiterungsm&ouml;glichkeiten_webserver_apache"></a>2.2.1.2 Apache</h4>
+ <p>Den MOA SP/SS Webservices kann ein Apache Webserver vorgeschaltet sein. Das Prinzip funktioniert wie bei MS IIS, auch hier wird <span class="term">Jakarta mod_jk</span> f&uuml;r die Kommunikation zwischen Webserver und Tomcat eingesetzt. Die angef&uuml;hrten Konfigurationsschritte gehen von einer Standard-Installation des Apache Webservers aus und sind ident f&uuml;r die Versionen 1.3.x und 2.0.x.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_apache_jk" id="webservice_erweiterungsmöglichkeiten_webserver_apache_jk"></a>2.2.1.2.1 Konfiguration von <span class="term">Jakarta mod_jk</span> im Apache </h5>
+ <p>Um das MOA-SPSS Webservice hinter einem Apache Webserver zu betreiben, ist die Konfiguration des Apache-Moduls <span class="term">mod_jk</span> erforderlich. Eine detaillierte Installations- und Konfigurationsanleitung gibt das <span class="term"><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/howto/apache.html" target="_blank">mod_jk</a></span><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/howto/apache.html" target="_blank"> Apache HowTo</a>. Ein Beispiel f&uuml;r eine <code>workers.properties</code> Datei liegt im Verzeichnis <code>$MOA_SL_INST/tomcat</code> bei.</p>
+ <p>Um das MOA SP/SS Webservice dem Apache Webserver bekannt zu machen, sind zumindest folgende Eintr&auml;ge im globalen Kontext der Apache-Konfigurationsdatei notwendig:</p>
+ <pre>LoadModule jk_module /usr/lib/apache/mod_jk.so<br>AddModule jk_module<br>JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories<br>JkWorkersFile conf/workers.properties <br>JkMount /moa-spss/* moaworker </pre>
+ <p>Die Pfad- und Dateinamen k&ouml;nnen je nach existierender Apache Installation geringf&uuml;gig variieren.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_apache_tomcat" id="webservice_erweiterungsmöglichkeiten_webserver_apache_tomcat"></a>2.2.1.2.2 Konfiguration von Tomcat</h5>
+ <p>Die Konfiguration von Tomcat ist analog zu Abschnitt <a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis_tomcat">2.2.1.1.2</a> durchzuf&uuml;hren.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_apache_ssl" id="webservice_erweiterungsmöglichkeiten_webserver_apache_ssl"></a>2.2.1.2.2 Konfiguration von SSL mit <span class="term">mod_SSL</span></h5>
+ <p>Apache kann in Verbindung mit <span class="term">mod_SSL</span> als SSL-Endpunkt f&uuml;r das MOA SP/SS Webservice fungieren. In diesem Fall entf&auml;llt die SSL-Konfiguration in Tomcat, da Apache und Tomcat auch im Fall von SSL Daten via <span class="term">mod_jk</span> austauschen. Eine detaillierte Installations- und Konfigurationsanleitung enth&auml;lt die <a href="http://www.modssl.org/docs/" target="_blank">Online-Dokumentation</a> von <span class="term">mod_SSL</span>.</p>
+ <p>Bei der Verwendung von Client-Authentisierung muss darauf geachtet werden, dass <span class="term">mod_ssl</span> die HTTP-Header mit den Informationen &uuml;ber das Client-Zertifikat exportiert. Dies wird durch Angabe der folgenden Option in der Apache-Konfiguration erreicht: </p>
+ <pre>SSLOptions +ExportCertData +StdEnvVars</pre>
+ <p>Je nach vorhandener SSL-Konfiguration des Apache Webservers kann diese Option im globalen Kontext, im Kontext des Virtual Hosts oder im Kontexts eines Verzeichnisses spezifiziert werden.</p>
+ <h3><a name="webservice_erweiterungsmöglichkeiten_datenbank" id="webservice_erweiterungsmöglichkeiten_datenbank"></a>2.2.2 Datenbank</h3>
+ <p>Die MOA SP/SS Module k&ouml;nnen eine Datenbank zum Archivieren von Certificate Revocation Lists (CRLs), sowie zum Abspeichern von Log-Meldungen verwenden. In beiden F&auml;llen wird eine installierte und konfigurierte Datenbank vorausgesetzt.</p>
+ <h4><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql"></a>2.2.2.1 PostgreSQL</h4>
+ <p>Eine detaillierte &Uuml;bersicht &uuml;ber die Installation und Konfiguration von <span class="term">PostgreSQL</span> gibt die <a href="http://techdocs.postgresql.org/" target="_blank">Online-Dokumentation</a>. </p>
+ <p class="term">Bitte beachten Sie: Eine M&ouml;glichkeit, PostgreSQL unter MS Windows zu installieren, besteht darin, <a href="http://sources.redhat.com/cygwin/" target="_blank">Cygwin</a> mit dem PostgreSQL-Package zu installieren. Alternative Installationsvarianten werden auf <a href="http://techdocs.postgresql.org/guides/Windows" target="_blank">dieser Seite</a> angef&uuml;hrt.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_benutzer" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_benutzer"></a>2.2.2.1.1 Anlegen eines Benutzers und einer Datenbank f&uuml;r MOA SP/SS</h5>
+ <p>Damit die MOA SP/SS Module eine Verbindung zu <span class="term">PostgreSQL</span> aufbauen kann, m&uuml;ssen der Name eines <span class="term">PostgreSQL</span>-Benutzers und einer <span class="term">PostgreSQL</span>-Datenbank bekannt sein. Sollten diese nicht vorhanden sein, kann mit folgenden Kommandos ein Benutzer namens <code>moa</code> und eine Datenbank namens <code>moadb</code> angelegt werden:</p>
+ <pre>createuser -U postgres -d -A -P moa<br>createdb -U moa moadb</pre>
+ <p>Da die MOA SP/SS Module &uuml;ber <span class="term">JDBC</span> mit der Datenbank kommunizieren, ist in der Folge die Angabe einer <span class="term">JDBC</span>-URL notwendig, welche die Verbindungsparameter enth&auml;lt. Wurden der Benutzer und die Datenbank wie im obigen Beispiel angelegt, ist folgende <span class="term">JDBC</span>-URL anzugeben (Annahme: als Passwort f&uuml;r den Benutzer moa wurde moapass gew&auml;hlt):</p>
+ <pre> jdbc:postgresql://host/moadb?user=moa&amp;password=moapass</pre>
+ <p>Die Zeichen <code>jdbc:postgresql://</code> sind unver&auml;nderliche Bestandteile einer <span class="term">PostgreSQL</span> <span class="term">JDBC</span>-URL. <code>host</code> gibt den Rechner an, auf dem <span class="term">PostgreSQL</span> l&auml;uft. <code>moadb</code> identifiziert den Namen der Datenbank. &Uuml;ber die Parameter <code>user=</code> und <code>pass=</code> werden Benutzername und Passwort f&uuml;r den DB-User bekanntgegeben.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_crls" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_crls"></a>2.2.2.1.2 Archivierung von CRLs</h5>
+ <p>Zum Archivieren von CRLs m&uuml;ssen in der MOA SP/SS Konfigurationsdatei die Kinder des Elements <code>cfg:MOAConfiguration/cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:Archiving</code> entsprechend
+ konfiguriert werden: </p>
+ <ul>
+ <li><code>cfg:EnableArchiving</code> muss auf den Wert <code>true</code> gesetzt sein;</li>
+ <li><code>cfg:ArchiveDuration</code> muss als nichtnegative Ganzzahl die maximale Archivierungsdauer in Tagen enthalten;</li>
+ <li><code>cfg:Archive</code> muss genau ein Element <code>cfg:DatabaseArchive</code> enthalten, das wiederum aus zwei Elementen
+ bestehen muss:
+ <ul>
+ <li><code>cfg:JDBCURL</code> muss eine g&uuml;ltige JDBC-URL enthalten, mit der auf die Datenbank zur Archivierung
+ zugegriffen werden kann (<span class="remark">Hinweis: da es sich hierbei um einen Eintrag
+ in eine XML-Datei handelt, muss das Zeichen <code>&amp;</code> in der in Abschnitt <a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql_benutzer">2.2.2.1.1</a> gezeigten
+ JDBC-URL
+ durch die Zeichenfolge <code>&amp;amp;</code> ersetzt werden.</span>);</li>
+ <li><code>cfg:JDBCDriverClassName</code> muss den vollst&auml;ndig qualifizierten Java-Klassennamen des JDBC-Treibers
+ enthalten. </li>
+ </ul>
+ </li>
+ </ul>
+ <p>Vergleiche auch Abschnitt <a href="../config/config.html#konfigurationsparameter_sp_certificatevalidation_revocationchecking_archiving">2.3.1.3.4</a> im
+ Konfigurationshandbuch.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_logging" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_logging"></a>2.2.2.1.3 Logging</h5>
+ <p>F&uuml;r das Logging in eine <span class="term">PostgreSQL</span> Datenbank mittels <span class="term">Jakarta Log4j</span> muss zun&auml;chst eine Tabelle f&uuml;r die Log-Meldungen angelegt werden. Dies kann mit folgendem SQL-Statement erreicht werden:</p>
+ <pre> create table spss_log (log_time timestamp, log_level varchar(5), log_msg text);</pre>
+ <p>Damit <span class="term">Log4j</span> die Log-Meldungen in diese Datenbanktabelle schreibt, muss die <span class="term">Log4j</span>-Konfiguration adaptiert werden. Die mit MOA SP/SS mitgelieferte, beispielhafte <a href="../../conf/moa-spss/log4j.properties">Log4j-Konfiguration</a> enth&auml;lt bereits die notwendigen Eintr&auml;ge f&uuml;r das Logging in eine PostgreSQL Datenbank, die jedoch standardm&auml;&szlig;ig ausgeschaltet sind. </p>
+ <p>Wie beim Caching von CRLs ist auch hier die Angabe einer <span class="term">JDBC</span>-URL notwendig, damit die MOA SP/SS Module eine Verbindung zur Datenbank aufnehmen k&ouml;nnen.</p>
+ <p><span class="remark">Bitte beachten Sie: Bei Tests hat sich das Logging in eine Datenbank mit Jakarta Log4j als Performance-Engpass herausgestellt. Es wird deshalb empfohlen, dieses Feature mit Bedacht einzusetzen.</span></p>
+ <h4><a name="webservice_erweiterungsmöglichkeiten_datenbank_andere" id="webservice_erweiterungsmöglichkeiten_datenbank_andere"></a>2.2.2.2 Andere Datenbanken </h4>
+ <p>&Uuml;ber die generische Anbindung JDBC k&ouml;nnen auch andere Datenbanken f&uuml;r die Archivierung von CRLs bzw. f&uuml;r die Speicherung der Log-Meldungen eingesetzt werden. Hinweise zu bestimmten Datenbanken finden Sie in den <a href="../faq/faq.html">FAQ</a>. </p>
+ <p>Die in Abschnitt <a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql">2.2.2.1</a> gemachten Angaben zu Archivierung von CRLs bzw. zur Speicherung von Log-Meldungen gelten sinngem&auml;&szlig;. </p>
+ <h3><a name="webservice_erweiterungsmöglichkeiten_hsm" id="webservice_erweiterungsmöglichkeiten_hsm"></a>2.2.3 Hardware Security Module (HSM)</h3>
+ <p>MOA SS kann f&uuml;r die Erstellung von Signaturen auf die Dienste eines HSM zur&uuml;ckgreifen. Voraussetzung daf&uuml;r ist, dass f&uuml;r das HSM eine Implementierung der Schnittstelle PCKS#11 (PKCS#11-Bibliothek) angeboten wird. </p>
+ <p>F&uuml;r die Einbindung des HSM in MOA SS m&uuml;ssen zun&auml;chst die Bibliotheken aus <code>$MOA_SL_INST/pkcs11</code> in ein beliebiges Verzeichnis kopiert werden, welches dann in den Libray-Pfad des jeweiligen Betriebssystems aufgenommen werden muss (Windows: Umgebungsvariable <code>PATH</code>; Linux: Umgebungsvariable <code>LD_LIBRARY_PATH</code>). </p>
+ <p>Der Name der f&uuml;r das HSM spezifischen PKCS#11-Bibliothek muss in der Konfigurationsdatei eingetragen werden (vergleiche Abschnitt <a href="../config/config.html#konfigurationsparameter_ss_keymodules_hardwarekeymodule">2.2.1.1</a> des Konfigurationshandbuchs).</p>
+ <h1><a name="klassenbibliothek"></a>3 Klassenbibliothek</h1>
+ <p>Dieser Abschnitt beschreibt die Verwendung von MOA SP/SS als Klassenbibliothek. Im ersten Unterkapitel wird eine minimale Basisinstallation beschrieben. Das zweite Unterkapitel zeigt eine Reihe von optionalen Erweiterungsm&ouml;glichkeiten auf.</p>
+ <h2><a name="klassenbibliothek_basisinstallation" id="klassenbibliothek_basisinstallation"></a>3.1 Basisinstallation</h2>
+ <h3><a name="klassenbibliothek_basisinstallation_einfuehrung" id="klassenbibliothek_basisinstallation_einfuehrung"></a>3.1.1 Einf&uuml;hrung </h3>
+ <p>Die Basisinstallation der Klassenbibliothek stellt einerseits die minimalen Anforderungen f&uuml;r den Einsatz von MOA SP/SS als Klassenbibliothek dar, andererseits dient sie als Ausgangspunkt f&uuml;r optionale Erweiterungsm&ouml;glichkeiten.</p>
+ <p> Folgende Software ist Voraussetzung f&uuml;r die Basisinstallation der Klassenbibliothek: </p>
+ <ul>
+ <li><a href="#referenziertesoftware">J2SE 1.3.1 JRE</a> oder <a href="#referenziertesoftware">J2SE 1.4.2 JRE</a> oder <a href="#referenziertesoftware">J2SE 5.0 JRE</a> </li>
+ </ul>
+ <h3><a name="klassenbibliothek_basisinstallation_vorbereitung" id="klassenbibliothek_basisinstallation_vorbereitung"></a>3.1.2 Vorbereitung </h3>
+ <p>Die folgenden Schritte dienen der Vorbereitung der Installation.</p>
+ <dl>
+ <dt>Installation von J2SE SDK</dt>
+ <dd>Installieren Sie <a href="#referenziertesoftware">J2SE 1.3.1 SDK</a> oder <a href="#referenziertesoftware">J2SE 1.4.2 SDK</a> oder <a href="#referenziertesoftware">J2SE 5.0 SDK</a> in ein beliebiges Verzeichnis. Wir empfehlen die Installation von <a href="#referenziertesoftware">J2SE 5.0 SDK</a>. Das Wurzelverzeichnis der J2SE SDK Installation wird im weiteren Verlauf als <code>$JAVA_HOME</code> bezeichnet. </dd>
+ <dt>Entpacken der MOA SP/SS Klassenbibliotheks-Distribution</dt>
+ <dd> Entpacken Sie die Datei <code>moa-spss-1.2.x-lib.zip</code> in ein beliebiges Verzeichnis. Dieses Verzeichnis wird im weiteren Verlauf als <code>$MOA_SL_INST</code> bezeichnet. </dd>
+ <dt>Installation der Krypographiebibliotheken von SIC/IAIK</dt>
+ <dd>
+ <p>Die Installation der Kryptographiebibliotheken von <a href="http://jce.iaik.tugraz.at/" target="_blank">SIC/IAIK</a> ist abh&auml;ngig vom eingesetzten J2SE SDK:</p>
+ <dl>
+ <dt>J2SE 1.3.1 SDK</dt>
+ <dd>Kopieren Sie alle Dateien aus dem Verzeichnis <code>$MOA_SL_INST/ext13</code> in das Verzeichnis <code>$JAVA_HOME/jre/lib/ext</code>.</dd>
+ <dt>J2SE 1.4.2 SDK oder JSE 5.0 SDK </dt>
+ <dd>Kopieren Sie alle Dateien aus dem Verzeichnis <code>$MOA_SL_INST/ext14</code> in das Verzeichnis <code>$JAVA_HOME/jre/lib/ext</code>. Zus&auml;tzlich m&uuml;ssen Sie die Rechtedateien Ihres J2SE 1.4.2 SDK bzw. J2SE 5.0 SDK austauschen. Laden Sie dazu die <span class="term">Unlimited Strength Jurisdiction Policy Files</span> von der <a href="http://java.sun.com/j2se/1.4.2/download.html" target="_blank">J2SE 1.4.2 SDK Downloadseite</a> bzw. <a href="http://java.sun.com/j2se/1.5.0/download.html">J2SE 5.0 SDK Downloadseite</a> und folgen Sie der darin enthaltenen Installationsanweisung. </dd>
+ </dl>
+ </dd>
+ </dl>
+ <h3><a name="klassenbibliothek_basisinstallation_verwendung" id="klassenbibliothek_basisinstallation_verwendung"></a>3.1.3 Verwendung</h3>
+ <p> Um die MOA SP/SS Klassenbibliothek in einer Applikation verwenden zu k&ouml;nnen, m&uuml;ssen die mit MOA SP/SS ausgelieferten Bibliotheken in den Java Klassenpfad der Applikation eingebunden werden. </p>
+ <p>Die nachfolgende Tabelle listet diese Klassenbibliotheken auf; die Eintr&auml;ge in der Spalte Dateien sind relativ zum Verzeichnis <code>$MOA_SL_INST</code> zu interpretieren.</p>
+<table class="fixedWidth" border="1" cellpadding="2">
+<tbody><tr>
+<th>Klassenbibliothek</th><th>Version</th><th>Dateien</th>
+
+</tr><tr>
+<td>MOA SP/SS</td>
+<td>1.2.x&nbsp; </td>
+<td><code>moa-spss.jar</code>, <code>moa-common.jar</code></td>
+</tr><tr>
+<td>MOA IAIK</td>
+<td>1.0.7&nbsp; </td>
+<td><p><code>lib/iaik_moa_full.jar</code>, <code>lib/iaik_Pkcs11Wrapper.jar</code>,
+ <code>lib/iaik_cms.jar</code>, <code>lib/iaik_ixsil.jar</code></p>
+ </td>
+</tr><tr>
+<td>JAXP</td><td>1.2_01&nbsp; </td><td><code>lib/jaxp-api.jar</code>, <code>lib/sax.jar</code>, <code>lib/dom.jar</code></td>
+
+</tr><tr>
+<td>Xerces-J</td><td>2.4.0&nbsp; </td><td><code>lib/xercesImpl.jar</code>, <code>lib/xmlParserAPIs.jar</code></td>
+</tr><tr>
+<td>Xalan-J</td><td>2.5.1&nbsp; </td><td><p><code>lib/xalan.jar</code></p>
+ <p class="remark">Bitte beachten Sie: Wenn Sie J2SE 1.4.2 JRE oder J2SE 5.0 JRE verwenden, m&uuml;ssen Sie diese Bibliothek der Java VM als endorsed bekanntgeben. Sie k&ouml;nnen dies tun, indem Sie entweder</p>
+ <ul>
+ <li class="remark">die Bibliothek in das (ggf. vorher anzulegende) Verzeichnis <code>$JAVA_HOME/jre/lib/endorsed/</code> kopieren; oder</li>
+ <li class="remark">die System Property <code>java.endorsed.dirs</code> verwenden, und als Wert den Pfad zu jenem Verzeichnis angeben, in dem Sie die Bibliothek vorhalten (also z.B. <code>java.endorsed.dirs=c:/mylibdir</code>).</li>
+ </ul></td>
+</tr><tr>
+<td>Jaxen</td><td>1.0&nbsp; </td><td><code>lib/jaxen-core.jar</code>, <code>lib/jaxen-dom.jar</code>, <code>lib/saxpath.jar</code></td>
+
+</tr><tr>
+<td>Commons-Logging</td>
+<td>1.0.4&nbsp; </td>
+<td><code>lib/commons-logging-api.jar</code>, <code>lib/commons-logging.jar</code></td>
+</tr><tr>
+<td>Log4j</td><td>1.2.7&nbsp; </td><td><code>lib/log4j-1.2.7.jar</code></td>
+</tr><tr>
+<td>Commons-Discovery</td><td>0.2&nbsp; </td><td><code>lib/commons-discovery.jar</code></td>
+
+</tr><tr>
+<td>JSSE</td><td>1.0.3_01&nbsp; </td>
+<td><p>Diese Bibliotheken ben&ouml;tigen Sie nur, wenn Sie J2SE 1.3.1 verwenden:</p>
+ <p><code>lib/ext13/jsse.jar</code>, <code>lib/ext13/jcert.jar</code>, <code>lib/ext13/jnet.jar</code></p>
+ <p class="remark">Bitte beachten Sie: Diese Bibliotheken ben&ouml;tigen Sie nur, wenn Sie J2SE 1.3.1 verwenden.</p> </td>
+</tr><tr>
+<td>Postgres JDBC2</td><td>7.3&nbsp; </td><td><p><code>lib/pg73jdbc2.jar</code></p>
+ <p><span class="remark">Bitte beachten Sie: Wenn Sie keine Datenbank f&uuml;r MOA SP/SS verwenden (vergleiche </span><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank">2.2.2</a><span class="remark">), ben&ouml;tigen Sie diese Bibliothek nicht.</span></p></td>
+</tr><tr>
+</tr>
+</tbody></table>
+
+ <h3><a name="klassenbibliothek_basisinstallation_logging" id="klassenbibliothek_basisinstallation_logging"></a>3.1.4 Logging</h3>
+ <p> Die MOA SP/SS Klassenbibliothek verwendet <a href="#referenziertesoftware">Jakarta Log4j</a> f&uuml;r die Ausgabe von Log-Meldungen am Bildschirm bzw. in Log-Dateien. Die im Abschnitt <a href="#webservice_basisinstallation_logging">2.1.3</a> gemachten Aussagen lassen sich gro&szlig;teils auf den Einsatz der MOA SP/SS Klassenbibliothek &uuml;bertragen. </p>
+ <h2><a name="klassenbibliothek_erweiterungsmöglichkeiten" id="klassenbibliothek_erweiterungsmöglichkeiten"></a>3.2 Erweiterungsm&ouml;glichkeiten </h2>
+ <p>Die im Abschnitt <a href="#webservice_erweiterungsm&#246;glichkeiten">2.2</a> angef&uuml;hrten Erweiterungsm&ouml;glichkeiten f&uuml;r die MOA SP/SS Webservices gelten in analoger Weise auch f&uuml;r die Klassenbibliothek.</p>
+ <h1><a name="referenzierte_software"></a>A Referenzierte Software</h1>
+<p>Auf folgende Software-Pakete wird in diesem Handbuch verwiesen:</p>
+<table class="fixedWidth" border="1" cellpadding="2">
+ <tr>
+ <th scope="col">Name</th>
+ <th scope="col">Beschreibung</th>
+ </tr>
+ <tr>
+ <td><a href="http://jakarta.apache.org/tomcat/index.html" target="_blank">Apache Tomcat 4.1.x </a></td>
+ <td>Servlet-Container des Apache Jakarta Projekts in der Version 4.1.x </td>
+ </tr>
+ <tr>
+ <td><a href="http://java.sun.com/j2se/1.4.2/" target="_blank">J2SE 1.4.2 SDK/JRE</a></td>
+ <td>Java 2 Standard Edition in der Version 1.4.2 (Software Development Kit bzw. Java Runtime Environment) </td>
+ </tr>
+ <tr>
+ <td><a href="http://java.sun.com/j2se/1.5.0/" target="_blank">J2SE 5.0 SDK/JRE</a> </td>
+ <td>Java 2 Standard Edition in der Version 5.0 (Software Development Kit bzw. Java Runtime Environment) </td>
+ </tr>
+ <tr>
+ <td><a href="http://logging.apache.org/log4j/" target="_blank">Apache Log4J </a></td>
+ <td>Logging Framework des Apache Projekts </td>
+ </tr>
+</table>
+</body>
+</html>
diff --git a/spss.slinterface/handbook/system/system.html b/spss.slinterface/handbook/system/system.html
new file mode 100644
index 000000000..eb287ee8a
--- /dev/null
+++ b/spss.slinterface/handbook/system/system.html
@@ -0,0 +1,486 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+ <title>MOA SS und SP - Installation</title>
+ <link rel="stylesheet" href="../common/MOA.css" type="text/css">
+</head>
+<body bgcolor="white" text="#000000" link="#990000" vlink="#666666" alink="#cc9966">
+ <table class="logoTable" width="100%" border="0" cellspacing="0" cellpadding="10">
+ <tr>
+ <td align="center" class="logoTitle" width="267"><img src="../common/LogoBKA.png" alt="Logo BKA" width="267" height="37" align="left"></td>
+ <td align="center" class="logoTitle">Open Source<br>
+ f&uuml;r das E-Government</td>
+ <td align="center" class="logoTitle" width="123"><img src="../common/LogoMoa4c.jpg" alt="Logo MOA" width="123" height="138" align="right"></td>
+ </tr>
+ </table>
+ <hr/>
+ <p class="title"><a href="../index.html">MOA: Serversignatur (SS) und Signaturpr&uuml;fung (SP), V 1.3</a></p>
+ <p class="subtitle">Installation</p>
+ <hr/>
+ <h1>Inhalt</h1>
+ <ol>
+ <li>
+ <p><a href="#&#220;bersicht">&Uuml;bersicht</a></p>
+ </li>
+ <li>
+ <p><a href="#webservice">Webservice</a></p>
+ <ol>
+ <li><a href="#webservice_basisinstallation">Basisinstallation</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_einf&#252;hrung">Einf&uuml;hrung</a></li>
+ <li><a href="#webservice_basisinstallation_installation">Installation</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_installation_vorbereitung">Vorbereitung</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig">Konfiguration von Apache Tomcat</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig_httpconn">Konfiguration des HTTP Connectors</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig_httpsconn">Konfiguration des HTTPS Connectors</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig_moaadmin">Einrichten des MOA SP/SS Administrators</a></li>
+ </ol>
+ </li>
+ <li><a href="#webservice_basisinstallation_installation_spssdeploy">Einsatz des MOA SP/SS Webservices in Tomcat</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatconfig_httpsconn">Starten und Stoppen von Tomcat</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_installation_tomcatstartstop_windows">Unter Windows</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatstartstop_unix">Unter Unix</a></li>
+ <li><a href="#webservice_basisinstallation_installation_tomcatstartstop_verify">Pr&uuml;fen des erfolgreichen Starts</a> </li>
+ </ol>
+ </li>
+ <li><a href="#webservice_basisinstallation_installation_changeonthefly">&Auml;nderung der Konfiguration im laufenden Betrieb</a></li>
+ </ol>
+ </li>
+ <li><a href="#webservice_basisinstallation_logging">Logging</a>
+ <ol>
+ <li><a href="#webservice_basisinstallation_logging_format">Format der Log-Meldungen</a></li>
+ <li><a href="#webservice_basisinstallation_logging_messages">Wichtige Log-Meldungen</a></li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten">Erweiterungsm&ouml;glichkeiten</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver">Vorgeschalteter Webserver</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis">Microsoft Internet Information Server (MS IIS)</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis_jk">Konfiguration von <span class="term">Jakarta mod_jk</span> im MS IIS</a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis_tomcat">Konfiguration von Tomcat</a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis_ssl">Konfiguration von SSL</a></li>
+ </ol>
+ </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_apache">Apache</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_apache_jk">Konfiguration von <span class="term">Jakarta mod_jk</span> im Apache </a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_apache_tomcat">Konfiguration von Tomcat</a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_apache_ssl">Konfiguration von SSL mit <span class="term">mod_SSL</span></a></li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank">Datenbank</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql">PostgreSQL</a> <ol>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql_benutzer">Anlegen eines Benutzers und einer Datenbank f&uuml;r MOA SP/SS</a></li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql_crls">Archivierung von CRLs</a> </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql_logging">Logging</a></li>
+ </ol>
+ </li>
+ <li><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_andere">Andere Datenbanken</a> </li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ </ol>
+ <li><a href="#klassenbibliothek">Klassenbibliothek</a>
+ <ol>
+ <li><a href="#klassenbibliothek_basisinstallation">Basisinstallation</a>
+ <ol>
+ <li><a href="#klassenbibliothek_basisinstallation_einfuehrung">Einf&uuml;hrung</a></li>
+ <li><a href="#klassenbibliothek_basisinstallation_vorbereitung">Vorbereitung</a></li>
+ <li><a href="#klassenbibliothek_basisinstallation_verwendung">Verwendung</a></li>
+ <li><a href="#klassenbibliothek_basisinstallation_logging">Logging</a></li>
+ </ol>
+ </li>
+ <li><a href="#klassenbibliothek_erweiterungsm&#246;glichkeiten">Erweiterungsm&ouml;glichkeiten</a></li>
+ </ol>
+ </li>
+ </ol>
+ <ol type="A">
+ <li><a href="#referenzierte_software">Referenzierte Software</a></li>
+ </ol>
+ <hr/>
+ <h1><a name="übersicht" id="übersicht"></a>1 &Uuml;bersicht</h1>
+ <p> Die Module Signaturpr&uuml;fung (SP) und Serversignatur (SS) sind als plattformunabh&auml;ngige Module ausgelegt, die entweder als Webservice &uuml;ber HTTP bzw. HTTPS oder als Klassenbibliothek &uuml;ber ein API angesprochen werden k&ouml;nnen. Dieses Handbuch beschreibt die Installation der beiden Module als Webservice oder als Klassenbibliothek, sowie die Einrichtung der Systemumgebung.</p>
+ <h1><a name="webservice"></a>2 Webservice </h1>
+ <p>Dieser Abschnitt beschreibt die Installation von MOA SP/SS als Webservice. Im ersten Unterkapitel wird eine minimale Basisinstallation beschrieben. Das zweite Unterkapitel zeigt eine Reihe von optionalen Erweiterungsm&ouml;glichkeiten auf.</p>
+ <h2><a name="webservice_basisinstallation" id="webservice_basisinstallation"></a>2.1 Basisinstallation</h2>
+ <h3><a name="webservice_basisinstallation_einführung" id="webservice_basisinstallation_einführung"></a>2.1.1 Einf&uuml;hrung </h3>
+ <p> Die Basisinstallation des Webservices stellt einerseits die minimalen Anforderungen f&uuml;r den Betrieb von MOA SP/SS als Webservices dar, andererseits dient sie als Ausgangspunkt f&uuml;r optionale <a href="#webservice_erweiterungsm&#246;glichkeiten">Erweiterungsm&ouml;glichkeiten</a>.</p>
+ <p> Folgende Software ist Voraussetzung f&uuml;r die Basisinstallation des Webservices: </p>
+ <ul>
+ <li><a href="#referenziertesoftware">J2SE 1.3.1 SDK oder J2SE 1.4.2 SDK oder J2SE 5.0 SDK </a></li>
+ <li><a href="#referenziertesoftware">Apache Tomcat 4.1.18 oder h&ouml;her </a></li>
+ </ul>
+ <p>In diesem Betriebs-Szenario wird das MOA SP/SS Webservice in Tomcat zum Einsatz gebracht. Tomcat fungiert gleichzeitig als HTTP- und HTTPS-Endpunkt f&uuml;r das MOA SP/SS Webservice. Beide Protokolle werden direkt in Tomcat konfiguriert. Das MOA SP/SS Webservice verwendet Log4j als Logging Toolkit.</p>
+ <h3><a name="webservice_basisinstallation_installation" id="webservice_basisinstallation_installation"></a>2.1.2 Installation</h3>
+ <h4><a name="webservice_basisinstallation_installation_vorbereitung" id="webservice_basisinstallation_installation_vorbereitung"></a>2.1.2.1 Vorbereitung</h4>
+ <p>Die folgenden Schritte dienen der Vorbereitung der Installation.</p>
+ <dl>
+ <dt>Installation von J2SE SDK</dt>
+ <dd>Installieren Sie <a href="#referenziertesoftware">J2SE 1.3.1 SDK</a> oder <a href="#referenziertesoftware">J2SE 1.4.2 SDK</a> oder <a href="#referenziertesoftware">J2SE 5.0 SDK</a> in ein beliebiges Verzeichnis. Wir empfehlen die Installation von <a href="#referenziertesoftware">J2SE 5.0 SDK</a>. Das Wurzelverzeichnis der J2SE SDK Installation wird im weiteren Verlauf als <code>$JAVA_HOME</code> bezeichnet. </dd>
+ <dt>Installation von Apache Tomcat 4.1</dt>
+ <dd> Installieren Sie <a href="#referenziertesoftware">Apache Tomcat 4.1.18</a> oder h&ouml;her in ein Verzeichnis, das keine Leerzeichen im Pfadnamen enth&auml;lt. Wir empfehlen die Installation von <a href="#referenziertesoftware">Apache Tomcat 4.1.31</a>. Verwenden Sie bitte die zu Ihrem J2SE SDK passende Distribution von Tomcat. Das Wurzelverzeichnis der Tomcat-Installation wird im weiteren Verlauf als <code>$CATALINA_HOME</code> bezeichnet.</dd>
+ <dt>Entpacken der MOA SP/SS Webservice Distribution</dt>
+ <dd> Entpacken Sie die Datei <code>moa-spss-1.2.x.zip</code> in ein beliebiges Verzeichnis. Dieses Verzeichnis wird im weiteren Verlauf als <code>$MOA_SPSS_INST</code> bezeichnet. </dd>
+ <dt>Installation der Krypographiebibliotheken von SIC/IAIK</dt>
+ <dd>
+ <p>Die Installation der Kryptographiebibliotheken von <a href="http://jce.iaik.tugraz.at/" target="_blank">SIC/IAIK</a> ist abh&auml;ngig vom eingesetzten J2SE SDK:</p>
+ <dl>
+ <dt>J2SE 1.3.1 SDK</dt>
+ <dd>Kopieren Sie alle Dateien aus dem Verzeichnis
+
+
+ <code>$MOA_SPSS_INST/ext13</code> in das Verzeichnis <code>$JAVA_HOME/jre/lib/ext</code>.</dd>
+ <dt>J2SE 1.4.2 SDK oder JSE 5.0 SDK </dt>
+ <dd>Kopieren Sie alle Dateien aus dem Verzeichnis <code>$MOA_SPSS_INST/ext14</code> in das Verzeichnis <code>$JAVA_HOME/jre/lib/ext</code>. Zus&auml;tzlich m&uuml;ssen Sie die Rechtedateien Ihres J2SE 1.4.2 SDK bzw. J2SE 5.0 SDK austauschen. Laden Sie dazu die <span class="term">Unlimited Strength
+
+
+ Jurisdiction Policy Files</span> von der <a href="http://java.sun.com/j2se/1.4.2/download.html" target="_blank">J2SE 1.4.2 SDK Downloadseite</a> bzw. <a href="http://java.sun.com/j2se/1.5.0/download.html">J2SE 5.0 SDK Downloadseite</a> und folgen Sie der darin enthaltenen Installationsanweisung. </dd>
+ </dl>
+ </dd>
+ </dl>
+ <h4><a name="webservice_basisinstallation_installation_tomcatconfig" id="webservice_basisinstallation_installation_tomcatconfig"></a>2.1.2.2 Konfiguration von Apache Tomcat</h4>
+ <p> Die zentrale Konfigurations-Datei von Tomcat ist <code>$CATALINA_HOME/conf/server.xml</code>. Tomcat wird grunds&auml;tzlich mit einer funktionierenden Default-Konfiguration ausgeliefert, die jedoch einiges an Ballast enth&auml;lt und viele Ports offen l&auml;sst. </p>
+ <h5><a name="webservice_basisinstallation_installation_tomcatconfig_httpconn" id="webservice_basisinstallation_installation_tomcatconfig_httpconn"></a>2.1.2.2.1 Konfiguration des HTTP Connectors</h5>
+ <p> Die Datei <code>$MOA_SPSS_INST/tomcat/server.xml</code> enth&auml;lt eine minimale Tomcat-Konfiguration, die ausschlie&szlig;lich den Connector f&uuml;r HTTP auf Port 8080 freischaltet. Durch kopieren dieser Datei nach <code>$CATALINA_HOME/conf/server.xml</code> kann Tomcat mit dieser Konfiguration gestartet werden. Wir empfehlen diese Konfiguration nur f&uuml;r F&auml;lle, in denen das MOA SP/SS Webservice in einer abgeschlossenen Netzwerkumgebung betrieben wird. </p>
+ <h5><a name="webservice_basisinstallation_installation_tomcatconfig_httpsconn" id="webservice_basisinstallation_installation_tomcatconfig_httpsconn"></a>2.1.2.2.2 Konfiguration des HTTPS Connectors</h5>
+ <p>Wird das MOA SP/SS Webservice in einer nicht abgeschlossenen Umgebung (z.B. Erreichbarkeit &uuml;ber das Internet) betrieben, ist die gegenseitige Identit&auml;tsfeststellung von Kunde und Webservice essentiell: </p>
+ <ul>
+ <li> Nutzt ein Kunde MOA SP, ist es f&uuml;r ihn wichtig, die Identit&auml;t des Webservice eindeutig feststellen zu k&ouml;nnen, denn er vertraut dem Webservice ja die Pr&uuml;fung einer elektronischen Signatur an.</li>
+ <li>Nutzt ein Kunde MOA SS, ist es f&uuml;r ihn wesentlich, dass nur er Zugriff auf die f&uuml;r ihn vom Webservice verwalteten privaten Schl&uuml;ssel hat, um elektronische Signaturen zu erstellen. Das Webservice muss also die Identit&auml;t des Kunden pr&uuml;fen. </li>
+ </ul>
+ <p>Beide Identit&auml;tspr&uuml;fungen k&ouml;nnen mit hoher Qualit&auml;t vorgenommen werden, wenn die Erreichbarkeit des Webservice auf SSL mit Server- (f&uuml;r MOA SP) bzw. Client- und Serverauthentisierung (f&uuml;r MOA SS) eingeschr&auml;nkt wird. </p>
+ <p>F&uuml;r die dazu notwendige Konfiguration kann die im vorigen Abschnitt besprochene minimale Tomcat-Konfiguration als Ausgangspunkt verwendet werden: Zun&auml;chst ist der HTTP Connector abzuschalten (auszukommentieren). Anschlie&szlig;end ist der HTTPS Connector zu konfigurieren. Das Dokument <a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/ssl-howto.html">Tomcat SSL Configuration HOW-TO </a> gibt einen guten &Uuml;berblick dazu. Grob zusammengefasst sind folgende Schritte durchzuf&uuml;hren: </p>
+ <ul>
+ <li>Erstellung eines <span class="term">Server-Keystores</span>, der den privaten Schl&uuml;ssel sowie das zugeh&ouml;rige Zertifikat des Webservices enth&auml;lt, mit dem es sich bei Aufbau einer SSL-Verbindung gegen&uuml;ber dem Kunden ausweist.sowie das dazugeh&ouml;rige ZertiServer-Zertifikat enth&auml;lt. Sie k&ouml;nnen diesen Keystore z.B. mit <code>keytool</code> erstellen, einem Programm, das Ihrem J2SE SDK beiliegt.</li>
+ <li>Erstellung eines <span class="term">Client-Keystores</span>, der die Zertifikate aller Kunden des Webservices enth&auml;lt. Nur Kunden des Webservices, die sich beim Aufbau einer SSL-Verbindung gegen&uuml;ber dem Webservice mit einem im <span class="term">Client-Keystore</span> enthaltenen Zertifikat ausweisen, erhalten grunds&auml;tzlich Zugriff zu den Diensten des Webservices (f&uuml;r die Konfiguration, welcher Kunde welche Schl&uuml;ssel von MOA SS verwenden darf, siehe <a href="../config/config.html#konfigurationsparameter_ss_keygroupmapping">Abschnitt 2.2.3 des Konfigurationshandbuchs</a>). Auch dieser Keystore kann z.B. mit <code>keytool</code> erstellt werden. Dieser Keystore ist optional und braucht nur erstellt zu werden, wenn sich die Kunden gegen&uuml;ber dem Webservice authentisieren m&uuml;ssen. </li>
+ <li>Konfiguration des HTTPS Connectors in <code>$CATALINA_HOME/conf/server.xml</code>.</li>
+ </ul>
+ <p>Die Konfiguration des HTTPS Connectors kann entfallen, wenn Tomcat ein Webserver vorgeschaltet ist, und dieser die SSL-Kommunikation mit dem Kunden &uuml;bernimmt (siehe <a href="#webservice_erweiterungsm&#246;glichkeiten_webserver">Abschnitt 2.2.1</a>).</p>
+ <h5><a name="webservice_basisinstallation_installation_tomcatconfig_moaadmin" id="webservice_basisinstallation_installation_tomcatconfig_moaadmin"></a>2.1.2.2.3 Einrichten des MOA SP/SS Administrators </h5>
+ <p>Das MOA SP/SS Webservice kann <span class="term">remote</span> durch den Aufruf einer speziellen URL des Webservices dazu veranlasst werden, seine Konfiguration neu einzulesen (vergleiche Abschnitt <a href="#webservice_basisinstallation_installation_changeonthefly">2.1.2.5</a>). Der Zugriff auf diese URL ist durch eine Passwort-Abfrage gesch&uuml;tzt, und kann nur von Tomcat-Benutzern aufgerufen werden, denen die Tomcat-Benutzer-Rolle <code>moa-admin</code> zugeordnet wurde.</p>
+ <p> Um diese Benutzer-Rolle und einen oder mehrere Benutzer einzurichten, m&uuml;ssen in der Datei <code>$CATALINA_HOME/conf/tomcat-users.xml </code>unter dem Element <code>&lt;tomcat-users&gt;</code> sinngem&auml;&szlig; folgende Eintr&auml;ge hinzugef&uuml;gt werden: </p>
+ <p>
+ <pre>&lt;role rolename="moa-admin"/&gt;
+&lt;user username="moa-chief" password="openSesam" roles="moa-admin"/&gt; </pre>
+<p>Soll der Aufruf dieser URL niemandem erm&ouml;glicht werden, sind die oben beschriebenen Eintr&auml;ge einfach nicht vorzunehmen.</p>
+
+<h4><a name="webservice_basisinstallation_installation_spssdeploy" id="webservice_basisinstallation_installation_spssdeploy"></a>2.1.2.3 Einsatz des MOA SP/SS Webservices in Tomcat</h4>
+<p> Um das MOA SP/SS Webservice in Tomcat f&uuml;r den Einsatz vorzubereiten, sind folgende Schritte notwendig:</p>
+<ul>
+ <li>Die Datei <code>$MOA_SPSS_INST/moa-spss.war</code> enth&auml;lt das einsatzfertige MOA SP/SS Webarchiv und muss ins Verzeichnis <code>$CATALINA_HOME/webapps</code> kopiert werden. Dort wird sie beim ersten Start von Tomcat automatisch ins Verzeichnis <code>$CATALINA_HOME/webapps/ moa-spss</code> entpackt. </li>
+ <li>Die zentrale Konfigurationsdatei f&uuml;r MOA SP/SS und die zugeh&ouml;rigen Profil-Verzeichnisse m&uuml;ssen in ein beliebiges Verzeichnis im Dateisystem kopiert werden (z.B. <code>$CATALINA_HOME/conf/moa-spss</code>). Eine funktionsf&auml;hige Konfiguration, die als Ausgangspunkt f&uuml;r die Konfiguration des MOA SP/SS Webservices dienen kann, finden Sie <a href="../../conf/moa-spss/spss.config.xml">hier</a>. </li>
+ <li>Wird Tomcat unter J2SE 1.4.x SDK oder höher betrieben, müssen die Dateien <code>xalan.jar</code>, <code>xercesImpl.jar</code> und <code>xmlParserAPIs.jar</code> aus dem Verzeichnis <code>$MOA_SPSS_INST/endorsed14</code> in das Tomcat-Verzeichnis <code>$CATALINA_HOME/common/endorsed</code> kopiert werden. Sind gleichnamige Dateien dort bereits vorhanden, m&uuml;ssen sie &uuml;berschrieben werden. Die ggf. in diesem Verzeichnis vorhandene Datei <code>xml-apis.jar</code> muss gel&ouml;scht werden.</li>
+ <li>Folgende <span class="term">System Properties</span> k&ouml;nnen gesetzt werden (wird beim Starten von Tomcat der <span class="term">Java Virtual Machine</span> in der Umgebungsvariablen <code>CATALINA_OPTS</code> in der Form <code>-D&lt;name&gt;=&lt;wert&gt;</code> &uuml;bergeben):
+ <ul>
+ <li id="klein"><code>moa.spss.server.configuration</code>: Pfad und Name der zentralen Konfigurationsdatei f&uuml;r MOA SP/SS. Eine beispielhafte Konfigurationsdatei finden Sie <a href="../../conf/moa-spss/spss.config.xml">hier</a>. Wird ein relativer Pfad angegeben, wird dieser relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert. Ist diese <span class="term">System Property</span> nicht gesetzt, wird automatisch eine im Webarchiv unter <code>WEB-INF/conf</code> enthaltene Default-Konfiguration herangezogen.</li>
+ <li id="klein"><code>log4j.configuration</code>: URL der Log4j Konfigurationsdatei. Eine beispielhafte Log4j-Konfiguration finden Sie <a href="../../conf/moa-spss/log4j.properties">hier</a>. Wird eine relative URL angegeben, wird diese als File-URL relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert. Ist diese <span class="term">System Property</span> nicht gesetzt, wird automatisch eine im Webarchiv unter <code>WEB-INF/classes</code> enthaltene Default-Konfiguration herangezogen.</li>
+ <li id="klein"><code>moa.node.id</code>: Frei w&auml;hlbarer Name des Rechner-Knotens, auf dem MOA SP/SS l&auml;uft. Der Name des Knotens wird bei Log-Ausgaben von MOA SP/SS angef&uuml;hrt und dient zur Unterscheidung mehrerer gleichzeitig betriebener MOA SP/SS Webservice-Instanzen. </li>
+ <li id="klein"><code>javax.net.ssl.trustStore</code>: Pfad und Dateiname des <span class="term">Truststores</span> f&uuml;r vertrauensw&uuml;rdige SSL Client-Zertifikate (optional; nur, wenn SSL Client-Authentisierung durchgef&uuml;hrt werden soll). Ein relativer Pfad werden relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert.</li>
+ <li id="klein"><code>javax.net.ssl.trustStorePassword</code>: Passwort f&uuml;r den <span class="term">Truststore</span> (optional; nur, wenn SSL Client-Authentisierung durchgef&uuml;hrt werden soll). </li>
+ <li id="klein"><code>javax.net.ssl.trustStoreType</code>: Truststore-Typ (optional; nur, wenn SSL Client-Authentisierung durchgef&uuml;hrt werden soll). Je nach verwendetem Keystore-Typ muss <code>jks</code> (<span class="term">Java Key Store</span>) oder <code>pkcs12</code> (PKCS#12-Datei) angegeben werden.</li>
+ </ul>
+ </li>
+</ul>
+<h4><a name="webservice_basisinstallation_installation_tomcatstartstop" id="webservice_basisinstallation_installation_tomcatstartstop"></a>2.1.2.4 Starten und Stoppen von Tomcat</h4>
+<h5><a name="webservice_basisinstallation_installation_tomcatstartstop_windows" id="webservice_basisinstallation_installation_tomcatstartstop_windows"></a>2.1.2.4.1 Unter Windows</h5>
+<div id="block">
+ <p>Das Verzeichnis <code>$MOA_SPSS_INST/tomcat/win32</code> enth&auml;lt Script-Dateien zum Starten und Stoppen von Tomcat. Vor der erstmaligen Verwendung der Scripts m&uuml;ssen in den ersten Zeilen die Umgebungsvariablen <code>JAVA_HOME</code> (Basisverzeichnis des eingesetzten J2SE SDK) und <code>CATALINA_HOME</code> (Basisverzeichnis der eingesetzten Tomcat-Installation) angepasst werden. Evtl. m&uuml;ssen Sie auch noch die in den Script-Dateien gesetzten, in Abschnitt 2.1.2.3 besprochenen <span class="term">System Properties</span> anpassen. </p>
+</div>
+<h5><a name="webservice_basisinstallation_installation_tomcatstartstop_unix" id="webservice_basisinstallation_installation_tomcatstartstop_unix"></a>2.1.2.4.2 Unter Unix</h5>
+<p>Zun&auml;chst m&uuml;ssen die in Abschnitt 2.1.2.3 besprochenen <span class="term">System Properties</span> mit Hilfe der Umgebungsvariablen <code>CATALINA_OPTS</code> gesetzt sein. Die Datei <code>$MOA_SPSS_INST/tomcat/unix/moa-env.sh</code> enth&auml;lt ein Beispiel daf&uuml;r. Weiters m&uuml;ssen noch die Umgebungsvariablen <code>JAVA_HOME</code> (Basisverzeichnis des eingesetzten J2SE SDK) und <code>CATALINA_HOME</code> (Basisverzeichnis der eingesetzten Tomcat-Installation) angepasst werden.</p>
+<p>Nun kann Tomcat aus seinem Basisverzeichnis mit </p>
+<pre>bin/catalina.sh start</pre>
+gestartet werden. Das Stoppen von Tomcat erfolgt analog mit
+<pre>bin/catalina.sh stop</pre>
+<h5><a name="webservice_basisinstallation_installation_tomcatstartstop_verify" id="webservice_basisinstallation_installation_tomcatstartstop_verify"></a>2.1.2.4.3 Pr&uuml;fen des erfolgreichen Starts </h5>
+<div id="block">
+ <p>Ein erfolgreicher Start des MOA SP/SS Webservices ist an folgender Log-Meldung ersichtlich: <br>
+ </p>
+</div>
+<pre>INFO | 18 10:09:45,155 | main | TID=startup NID=&lt;null&gt; MSG=MOA Konfiguration erfolgreich geladen
+</pre>
+<p>Bei leichten Fehlern in der Konfiguration geben <code>WARN</code> Log-Meldungen unmittelbar davor Aufschluss &uuml;ber fehlerhafte Konfigurations-Eintr&auml;ge.
+ Nach dem Starten von Tomcat steht das MOA SP/SS Webservice f&uuml;r die Server-Signatur und Signatur-Pr&uuml;fung unter den Endpunkten </p>
+<pre>http://&lt;host&gt;:&lt;port&gt;/moa-spss/services/SignatureCreation
+</pre>
+<p>bzw.
+</p>
+<pre>http://&lt;host&gt;:&lt;port&gt;/moa-spss/services/SignatureVerification
+</pre>
+<p>zur Verf&uuml;gung. Die Verf&uuml;gbarkeit des Services k&ouml;nnen Sie einfach &uuml;berpr&uuml;fen, indem Sie die Endpunkte mit einem Web-Browser aufgerufen; dies sollte nach erfolgreichem Start zur Anzeige einer Informationsseite f&uuml;hren. </p>
+<p>Konnte das MOA SP/SS Webservice nicht ordnungsgem&auml;&szlig; gestartet werden, f&uuml;hrt das zu folgender Log-Meldung:</p>
+<pre>FATAL | 18 10:17:03,475 | main | TID=startup NID=&lt;null&gt; <br> MSG=Fehler beim Lesen der MOA Konfiguration: das Service steht nicht zur Verf&uuml;gung
+</pre>
+In diesem Fall geben die <code>WARN</code> bzw. <code>ERROR</code> Log-Meldungen unmittelbar davor Aufschluss &uuml;ber den genaueren Grund.
+<h4><a name="webservice_basisinstallation_installation_changeonthefly" id="webservice_basisinstallation_installation_changeonthefly"></a>2.1.2.5 &Auml;nderung der Konfiguration im laufenden Betrieb </h4>
+<p> Sie k&ouml;nnen die Konfiguration f&uuml;r MOA SP/SS im laufenden Betrieb aktualisieren, in dem Sie mittels eines Web-Browsers folgende URL aufrufen:</p>
+<pre> http://&lt;host&gt;:&lt;port&gt;/moa-spss/ConfigurationUpdate </pre>
+<p>Damit dies funktioniert, muss in der Konfiguration von Tomcat ein spezieller Benutzer sowie eine spezielle Benutzerrolle eingerichtet werden (vergleiche Abschnitt <a href="#webservice_basisinstallation_installation_tomcatconfig_moaadmin">2.1.2.2.3</a>). </p>
+<h3><a name="webservice_basisinstallation_logging" id="webservice_basisinstallation_logging"></a>2.1.3 Logging </h3>
+<p>Das MOA SP/SS Webservice verwendet <a href="#referenziertesoftware">Jakarta Log4j</a> f&uuml;r die Ausgabe von Log-Meldungen am Bildschirm bzw. in Log-Dateien. Log4j bietet zahlreiche Konfigurationsm&ouml;glichkeiten, die ausf&uuml;hrlich im <a href="#referenziertesoftware">Jakarta Log4j</a> Handbuch beschrieben sind. Unter anderem gibt es die M&ouml;glichkeit, folgende Einstellungen vorzunehmen:
+<ul>
+ <li id="klein">
+ <p>Das verwendete Log-Level (<code>DEBUG</code>, <code>INFO</code>, <code>WARN</code>, <code>ERROR</code>, <code>FATAL</code>);</p>
+ </li>
+ <li id="klein">
+ <p>Name und maximale Gr&ouml;&szlig;e der Log-Datei(en);</p>
+ </li>
+ <li id="klein">
+ <p>Das Aussehen der Log-Eintr&auml;ge.</p>
+ </li>
+</ul>
+ <p>Das MOA SP/SS Webservice verwendet folgende Log-Hierarchien: </p>
+<ul>
+ <li>
+ <p><code>moa.spss.server</code> f&uuml;r alle Log-Meldungen aus dem MOA/SPSS Webservice; </p>
+ </li>
+ <li>
+ <p><code>iaik.server</code> f&uuml;r alle Log-Meldungen aus den SIC/IAIK Kryptographie-Modulen. </p>
+ </li>
+</ul>
+ <p>Eine f&uuml;r MOA SP/SS passende Konfigurationsdatei f&uuml;r Log4j finden Sie <a href="../../conf/moa-spss/log4j.properties">hier</a>. Wird diese Datei als Logging-Konfiguration verwendet, so werden alle Log-Meldungen sowohl in die Konsole, als auch in die Datei <code>moa-spss.log</code> geschrieben. </p>
+ <h4><a name="webservice_basisinstallation_logging_format" id="webservice_basisinstallation_logging_format"></a>2.1.3.1 Format der Log-Meldungen</h4>
+ <p> Anhand einer konkreten Log-Meldung wird das Format der MOA SP/SS Log-Meldungen erl&auml;utert: </p>
+ <pre>INFO | 01 21:25:26,540 | Thread-3 | TID=1049225059594-100 NID=node1
+ MSG=Starte neue Transaktion: TID=1049225059594-100, Service=SignatureVerification
+</pre>
+<p> Der Wert <code>INFO</code> besagt, dass die Log-Meldung im Log-Level <code>INFO</code> entstanden ist. Folgende Log-Levels existieren:</p>
+ <ul>
+ <li>
+ <p><code>DEBUG</code>: Log-Meldungen im Log-Level <code>DEBUG</code> geben Auskunft &uuml;ber die innere Arbeitsweise des Systems. Sie sind haupts&auml;chlich f&uuml;r Entwickler interessant.</p>
+ </li>
+ <li>
+ <p><code>INFO</code>: Diese Log-Meldungen geben Status-Informationen &uuml;ber den Ablauf des Webservices, wie z.B. &uuml;ber das Einlangen einer neuen Anfrage.</p>
+ </li>
+ <li>
+ <p><code>WARN</code>: Bei der Ausf&uuml;hrung einer Anfrage sind leichte Fehler aufgetreten. Der Ablauf des Webservices ist nicht weiter beeintr&auml;chtigt.</p>
+ </li>
+ <li>
+ <p><code>ERROR</code>: Die Ausf&uuml;hrung einer Anfrage musste abgebrochen werden. Das Webservice ist davon nicht beeintr&auml;chtigt. </p>
+ </li>
+ <li>
+ <p><code>FATAL</code>: Es ist ein Fehler aufgetreten, der den weiteren Betrieb des Webservices nicht mehr erlaubt.</p>
+ </li>
+ </ul>
+ <p>Der n&auml;chste Wert <code>01 21:25:26,540</code> gibt den Zeitpunkt an, zu dem die Log-Meldung generiert wurde (in diesem Fall den 1. Tag im aktuellen Monat, sowie die genaue Uhrzeit). </p>
+ <p> Der Wert <code>Thread-3</code> bezeichnet den Thread, von dem die Anfrage bearbeitet wird.</p>
+ <p> Der Wert von <code>TID</code> gibt die f&uuml;r jede Anfrage eindeutige Transaktions-ID an. Log-Meldungen, die bei der Abarbeitung dieser Anfrage geschrieben werden, enthalten alle einen Hinweis auf die entsprechende Transaktions-ID.</p>
+ <p> Der Wert von <code>NID</code> gibt den Rechner-Knoten an, auf dem das MOA SP/SS Webservice l&auml;uft (bei <code>NID=&lt;null&gt;</code> ist dieser Wert nicht konfiguriert, vergleiche Abschnitt <a href="#webservice_basisinstallation_installation_spssdeploy">2.1.2.3</a>).</p>
+ <p> Der Rest der Zeile einer Log-Meldung ist der eigentliche Text, mit dem das System bestimmte Informationen anzeigt. Im Fehlerfall ist h&auml;ufig ein Java Stack-Trace angef&uuml;gt, der eine genauere Ursachen-Forschung erm&ouml;glicht.</p>
+ <h4> <a name="webservice_basisinstallation_logging_messages" id="webservice_basisinstallation_logging_messages"></a>2.1.3.2 Wichtige Log-Meldungen</h4>
+ <p> Neben den im Abschnitt <a href="#webservice_basisinstallation_installation_tomcatstartstop_verify">2.1.2.4.3</a> beschriebenen Log-Meldungen, die anzeigen, ob das Service ordnungsgem&auml;&szlig; gestartet wurde, geben nachfolgenden Log-Meldungen Aufschluss &uuml;ber die Abarbeitung von Anfragen. </p>
+ <p>Die Entgegennahme einer Anfrage wird angezeigt durch:
+
+ </p>
+ <pre>INFO | 01 21:25:26,540 | Thread-3 | TID=1049225059594-100 NID=&lt;null&gt;
+ MSG=Starte neue Transaktion: TID=1049225059594-100, Service=SignatureVerification
+INFO | 01 21:25:26,540 | Thread-3 | TID=1049225059594-100 NID=&lt;null&gt;
+ MSG=Aufruf von Adresse=127.0.0.1
+INFO | 01 21:25:26,540 | Thread-3 | TID=1049225059594-100 NID=&lt;null&gt;
+ MSG=Client-Zertifikat nicht verf&uuml;gbar</pre>
+ <p> Die dritte Log-Meldung besagt, dass f&uuml;r die Abarbeitung dieser Anfrage kein Client-Zertifikat verf&uuml;gbar ist (entweder, weil die Anfrage &uuml;ber HTTP eingelangt ist, oder weil die SSL Client-Authentisierung nicht eingeschaltet ist). Bei erfolgreicher SSL Client-Authentisierung, gibt beispielsweise folgende Log-Meldung Informationen &uuml;ber das Client-Zertifikat aus:
+ <pre>INFO | 12 13:58:08,772 | Thread-10 | TID=1045054687159-2 NID=&lt;null&gt;
+ MSG=Client-Zertifikat: Subject=CN=Testuser, OU=MOA, O=BRZ, L=Vienna, ST=Vienna, C=AT,
+ Serial=1.039.104.204, Issuer=CN=TestCA, OU=MOA, O=BRZ, L=Vienna, ST=Vienna, C=AT</pre>
+ <p>Eine erfolgreich abgearbeitete Anfrage wird angezeigt durch:
+ </p>
+ <pre>INFO | 01 21:25:53,168 | Thread-3 | TID=1049225059594-106 NID=&lt;null&gt;
+ MSG=Anfrage erfolgreich abgearbeitet</pre>
+ <p>Ein Fehler beim Abarbeiten der Anfrage wird angezeigt durch: </p>
+ <pre>INFO | 01 21:25:27,642 | Thread-3 | TID=1049225059594-100 NID=&lt;null&gt;
+ MSG=Fehler beim Abarbeiten der Anfrage</pre>
+ <div id="block">
+ <p>In diesem Fall gibt der mitgeloggte Stacktrace Auskunft &uuml;ber die Art des Fehlers. Der Aufrufer des MOA SP/SS Webservices bekommt einen Fehlercode sowie eine kurze Beschreibung des Fehlers als Antwort zur&uuml;ck. </p>
+ <p> Die Tats&auml;chlich &uuml;bertragenen Anfragen bzw. Antworten werden aus Effizienzgr&uuml;nden nur im Log-Level <code>DEBUG</code> angezeigt. </p>
+ </div>
+ <h2><a name="webservice_erweiterungsmöglichkeiten" id="webservice_erweiterungsmöglichkeiten"></a>2.2 Erweiterungsm&ouml;glichkeiten</h2>
+<p>Ausgehend von der <a href="#webservice_basisinstallation">Basisinstallation</a> k&ouml;nnen die optionalen Erweiterungen, die in den nachfolgenden Abschnitten beschrieben werden, unabh&auml;ngig und in beliebiger Kombination aufgesetzt werden.</p>
+ <h3><a name="webservice_erweiterungsmöglichkeiten_webserver" id="webservice_erweiterungsmöglichkeiten_webserver"></a>2.2.1 Vorgeschalteter Webserver</h3>
+ <h4><a name="webservice_erweiterungsmöglichkeiten_webserver_iis" id="webservice_erweiterungsmöglichkeiten_webserver_iis"></a>2.2.1.1 Microsoft Internet Information Server (MS IIS) </h4>
+ <p>Den MOA SP/SS Webservices kann optional ein MS IIS vorgeschaltet sein. In diesem Fall &uuml;bernimmt der MS IIS die HTTP- bzw. HTTPS-Kommunikation mit dem Aufrufer des Webservices. Die Kommunikation zwischen MS IIS und dem in Tomcat eingerichteten MOA SP/SS Webservice wird durch <span class="term">Jakarta mod_jk</span> durchgef&uuml;hrt. Die angef&uuml;hrten Konfigurationsschritte gehen von einer MS IIS Standard-Installation aus.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_iis_jk" id="webservice_erweiterungsmöglichkeiten_webserver_iis_jk"></a>2.2.1.1.1 Konfiguration von <span class="term">Jakarta mod_jk</span> im MS IIS</h5>
+ <p> F&uuml;r die Kommunikation des MS IIS mit dem im Tomcat eingerichteten MOA SP/SS Webservice wird das <span class="term">ISAPI</span>-Modul von <span class="term">Jakarta mod_jk</span> im MS IIS installiert und konfiguriert. Eine detaillierte Installations- und Konfigurationsanleitung gibt das <span class="term"><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/howto/iis.html" target="_blank">mod_jk</a></span><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/jk/iishowto.html"> IIS HowTo</a>. Beispiele f&uuml;r <code>workers.properties</code> und <code>uriworkermap.properties</code> Dateien liegen im Verzeichnis <code>$MOA_SPSS_INST/tomcat</code> bei.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_iis_tomcat" id="webservice_erweiterungsmöglichkeiten_webserver_iis_tomcat"></a>2.2.1.1.2 Konfiguration von Tomcat</h5>
+ <p> Damit Tomcat die Aufrufe entgegennehmen kann, die von MS IIS mittels <span class="term">Jakarta mod_jk</span> weiterleitet werden, muss in <code>$CATALINA_HOME/conf/server.xml</code> der <span class="term">AJP 1.3 Connector</span> aktiviert werden. Im Gegenzug k&ouml;nnen die Konnektoren f&uuml;r HTTP und HTTPS deaktiviert werden. Das geschieht am einfachsten durch Ein- bzw. Auskommentieren der entsprechenden <code>Connector</code> Konfigurations-Elemente in dieser Datei. Die Datei <code>$MOA_SPSS_INST/tomcat/server.mod_jk.xml</code> enth&auml;lt eine Konfiguration, die ausschlie&szlig;lich den Port f&uuml;r den <span class="term">AJP 1.3 Connector</span> offen l&auml;sst.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_iis_ssl" id="webservice_erweiterungsmöglichkeiten_webserver_iis_ssl"></a>2.2.1.1.3 Konfiguration von SSL</h5>
+ <p> Die Dokumentation zum Einrichten von SSL auf dem MS IIS steht nach Installation des IIS unter http://localhost/iisHelp/ oder aber auch auf den Websiten vo Mircrosoft zur Verf&uuml;gung. </p>
+ <h4><a name="webservice_erweiterungsm&ouml;glichkeiten_webserver_apache" id="webservice_erweiterungsm&ouml;glichkeiten_webserver_apache"></a>2.2.1.2 Apache</h4>
+ <p>Den MOA SP/SS Webservices kann ein Apache Webserver vorgeschaltet sein. Das Prinzip funktioniert wie bei MS IIS, auch hier wird <span class="term">Jakarta mod_jk</span> f&uuml;r die Kommunikation zwischen Webserver und Tomcat eingesetzt. Die angef&uuml;hrten Konfigurationsschritte gehen von einer Standard-Installation des Apache Webservers aus und sind ident f&uuml;r die Versionen 1.3.x und 2.0.x.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_apache_jk" id="webservice_erweiterungsmöglichkeiten_webserver_apache_jk"></a>2.2.1.2.1 Konfiguration von <span class="term">Jakarta mod_jk</span> im Apache </h5>
+ <p>Um das MOA-SPSS Webservice hinter einem Apache Webserver zu betreiben, ist die Konfiguration des Apache-Moduls <span class="term">mod_jk</span> erforderlich. Eine detaillierte Installations- und Konfigurationsanleitung gibt das <span class="term"><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/howto/apache.html" target="_blank">mod_jk</a></span><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/howto/apache.html" target="_blank"> Apache HowTo</a>. Ein Beispiel f&uuml;r eine <code>workers.properties</code> Datei liegt im Verzeichnis <code>$MOA_SPSS_INST/tomcat</code> bei.</p>
+ <p>Um das MOA SP/SS Webservice dem Apache Webserver bekannt zu machen, sind zumindest folgende Eintr&auml;ge im globalen Kontext der Apache-Konfigurationsdatei notwendig:</p>
+ <pre>LoadModule jk_module /usr/lib/apache/mod_jk.so<br>AddModule jk_module<br>JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories<br>JkWorkersFile conf/workers.properties <br>JkMount /moa-spss/* moaworker </pre>
+ <p>Die Pfad- und Dateinamen k&ouml;nnen je nach existierender Apache Installation geringf&uuml;gig variieren.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_apache_tomcat" id="webservice_erweiterungsmöglichkeiten_webserver_apache_tomcat"></a>2.2.1.2.2 Konfiguration von Tomcat</h5>
+ <p>Die Konfiguration von Tomcat ist analog zu Abschnitt <a href="#webservice_erweiterungsm&#246;glichkeiten_webserver_iis_tomcat">2.2.1.1.2</a> durchzuf&uuml;hren.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_webserver_apache_ssl" id="webservice_erweiterungsmöglichkeiten_webserver_apache_ssl"></a>2.2.1.2.2 Konfiguration von SSL mit <span class="term">mod_SSL</span></h5>
+ <p>Apache kann in Verbindung mit <span class="term">mod_SSL</span> als SSL-Endpunkt f&uuml;r das MOA SP/SS Webservice fungieren. In diesem Fall entf&auml;llt die SSL-Konfiguration in Tomcat, da Apache und Tomcat auch im Fall von SSL Daten via <span class="term">mod_jk</span> austauschen. Eine detaillierte Installations- und Konfigurationsanleitung enth&auml;lt die <a href="http://www.modssl.org/docs/" target="_blank">Online-Dokumentation</a> von <span class="term">mod_SSL</span>.</p>
+ <p>Bei der Verwendung von Client-Authentisierung muss darauf geachtet werden, dass <span class="term">mod_ssl</span> die HTTP-Header mit den Informationen &uuml;ber das Client-Zertifikat exportiert. Dies wird durch Angabe der folgenden Option in der Apache-Konfiguration erreicht: </p>
+ <pre>SSLOptions +ExportCertData +StdEnvVars</pre>
+ <p>Je nach vorhandener SSL-Konfiguration des Apache Webservers kann diese Option im globalen Kontext, im Kontext des Virtual Hosts oder im Kontexts eines Verzeichnisses spezifiziert werden.</p>
+ <h3><a name="webservice_erweiterungsmöglichkeiten_datenbank" id="webservice_erweiterungsmöglichkeiten_datenbank"></a>2.2.2 Datenbank</h3>
+ <p>Die MOA SP/SS Module k&ouml;nnen eine Datenbank zum Archivieren von Certificate Revocation Lists (CRLs), sowie zum Abspeichern von Log-Meldungen verwenden. In beiden F&auml;llen wird eine installierte und konfigurierte Datenbank vorausgesetzt.</p>
+ <h4><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql"></a>2.2.2.1 PostgreSQL</h4>
+ <p>Eine detaillierte &Uuml;bersicht &uuml;ber die Installation und Konfiguration von <span class="term">PostgreSQL</span> gibt die <a href="http://techdocs.postgresql.org/" target="_blank">Online-Dokumentation</a>. </p>
+ <p class="term">Bitte beachten Sie: Eine M&ouml;glichkeit, PostgreSQL unter MS Windows zu installieren, besteht darin, <a href="http://sources.redhat.com/cygwin/" target="_blank">Cygwin</a> mit dem PostgreSQL-Package zu installieren. Alternative Installationsvarianten werden auf <a href="http://techdocs.postgresql.org/guides/Windows" target="_blank">dieser Seite</a> angef&uuml;hrt.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_benutzer" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_benutzer"></a>2.2.2.1.1 Anlegen eines Benutzers und einer Datenbank f&uuml;r MOA SP/SS</h5>
+ <p>Damit die MOA SP/SS Module eine Verbindung zu <span class="term">PostgreSQL</span> aufbauen kann, m&uuml;ssen der Name eines <span class="term">PostgreSQL</span>-Benutzers und einer <span class="term">PostgreSQL</span>-Datenbank bekannt sein. Sollten diese nicht vorhanden sein, kann mit folgenden Kommandos ein Benutzer namens <code>moa</code> und eine Datenbank namens <code>moadb</code> angelegt werden:</p>
+ <pre>createuser -U postgres -d -A -P moa<br>createdb -U moa moadb</pre>
+ <p>Da die MOA SP/SS Module &uuml;ber <span class="term">JDBC</span> mit der Datenbank kommunizieren, ist in der Folge die Angabe einer <span class="term">JDBC</span>-URL notwendig, welche die Verbindungsparameter enth&auml;lt. Wurden der Benutzer und die Datenbank wie im obigen Beispiel angelegt, ist folgende <span class="term">JDBC</span>-URL anzugeben (Annahme: als Passwort f&uuml;r den Benutzer moa wurde moapass gew&auml;hlt):</p>
+ <pre> jdbc:postgresql://host/moadb?user=moa&amp;password=moapass</pre>
+ <p>Die Zeichen <code>jdbc:postgresql://</code> sind unver&auml;nderliche Bestandteile einer <span class="term">PostgreSQL</span> <span class="term">JDBC</span>-URL. <code>host</code> gibt den Rechner an, auf dem <span class="term">PostgreSQL</span> l&auml;uft. <code>moadb</code> identifiziert den Namen der Datenbank. &Uuml;ber die Parameter <code>user=</code> und <code>pass=</code> werden Benutzername und Passwort f&uuml;r den DB-User bekanntgegeben.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_crls" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_crls"></a>2.2.2.1.2 Archivierung von CRLs</h5>
+ <p>Zum Archivieren von CRLs m&uuml;ssen in der MOA SP/SS Konfigurationsdatei die Kinder des Elements <code>cfg:MOAConfiguration/cfg:SignatureVerification/cfg:CertificateValidation/cfg:RevocationChecking/cfg:Archiving</code> entsprechend
+ konfiguriert werden: </p>
+ <ul>
+ <li><code>cfg:EnableArchiving</code> muss auf den Wert <code>true</code> gesetzt sein;</li>
+ <li><code>cfg:ArchiveDuration</code> muss als nichtnegative Ganzzahl die maximale Archivierungsdauer in Tagen enthalten;</li>
+ <li><code>cfg:Archive</code> muss genau ein Element <code>cfg:DatabaseArchive</code> enthalten, das wiederum aus zwei Elementen
+ bestehen muss:
+ <ul>
+ <li><code>cfg:JDBCURL</code> muss eine g&uuml;ltige JDBC-URL enthalten, mit der auf die Datenbank zur Archivierung
+ zugegriffen werden kann (<span class="remark">Hinweis: da es sich hierbei um einen Eintrag
+ in eine XML-Datei handelt, muss das Zeichen <code>&amp;</code> in der in Abschnitt <a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql_benutzer">2.2.2.1.1</a> gezeigten
+ JDBC-URL
+ durch die Zeichenfolge <code>&amp;amp;</code> ersetzt werden.</span>);</li>
+ <li><code>cfg:JDBCDriverClassName</code> muss den vollst&auml;ndig qualifizierten Java-Klassennamen des JDBC-Treibers
+ enthalten. </li>
+ </ul>
+ </li>
+ </ul>
+ <p>Vergleiche auch Abschnitt <a href="../config/config.html#konfigurationsparameter_sp_certificatevalidation_revocationchecking_archiving">2.3.1.3.4</a> im
+ Konfigurationshandbuch.</p>
+ <h5><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_logging" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql_logging"></a>2.2.2.1.3 Logging</h5>
+ <p>F&uuml;r das Logging in eine <span class="term">PostgreSQL</span> Datenbank mittels <span class="term">Jakarta Log4j</span> muss zun&auml;chst eine Tabelle f&uuml;r die Log-Meldungen angelegt werden. Dies kann mit folgendem SQL-Statement erreicht werden:</p>
+ <pre> create table spss_log (log_time timestamp, log_level varchar(5), log_msg text);</pre>
+ <p>Damit <span class="term">Log4j</span> die Log-Meldungen in diese Datenbanktabelle schreibt, muss die <span class="term">Log4j</span>-Konfiguration adaptiert werden. Die mit MOA SP/SS mitgelieferte, beispielhafte <a href="../../conf/moa-spss/log4j.properties">Log4j-Konfiguration</a> enth&auml;lt bereits die notwendigen Eintr&auml;ge f&uuml;r das Logging in eine PostgreSQL Datenbank, die jedoch standardm&auml;&szlig;ig ausgeschaltet sind. </p>
+ <p>Wie beim Caching von CRLs ist auch hier die Angabe einer <span class="term">JDBC</span>-URL notwendig, damit die MOA SP/SS Module eine Verbindung zur Datenbank aufnehmen k&ouml;nnen.</p>
+ <p><span class="remark">Bitte beachten Sie: Bei Tests hat sich das Logging in eine Datenbank mit Jakarta Log4j als Performance-Engpass herausgestellt. Es wird deshalb empfohlen, dieses Feature mit Bedacht einzusetzen.</span></p>
+ <h4><a name="webservice_erweiterungsmöglichkeiten_datenbank_andere" id="webservice_erweiterungsmöglichkeiten_datenbank_andere"></a>2.2.2.2 Andere Datenbanken </h4>
+ <p>&Uuml;ber die generische Anbindung JDBC k&ouml;nnen auch andere Datenbanken f&uuml;r die Archivierung von CRLs bzw. f&uuml;r die Speicherung der Log-Meldungen eingesetzt werden. Hinweise zu bestimmten Datenbanken finden Sie in den <a href="../faq/faq.html">FAQ</a>. </p>
+ <p>Die in Abschnitt <a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank_postgresql">2.2.2.1</a> gemachten Angaben zu Archivierung von CRLs bzw. zur Speicherung von Log-Meldungen gelten sinngem&auml;&szlig;. </p>
+ <h3><a name="webservice_erweiterungsmöglichkeiten_hsm" id="webservice_erweiterungsmöglichkeiten_hsm"></a>2.2.3 Hardware Security Module (HSM)</h3>
+ <p>MOA SS kann f&uuml;r die Erstellung von Signaturen auf die Dienste eines HSM zur&uuml;ckgreifen. Voraussetzung daf&uuml;r ist, dass f&uuml;r das HSM eine Implementierung der Schnittstelle PCKS#11 (PKCS#11-Bibliothek) angeboten wird. </p>
+ <p>F&uuml;r die Einbindung des HSM in MOA SS m&uuml;ssen zun&auml;chst die Bibliotheken aus <code>$MOA_SPSS_INST/pkcs11</code> in ein beliebiges Verzeichnis kopiert werden, welches dann in den Libray-Pfad des jeweiligen Betriebssystems aufgenommen werden muss (Windows: Umgebungsvariable <code>PATH</code>; Linux: Umgebungsvariable <code>LD_LIBRARY_PATH</code>). </p>
+ <p>Der Name der f&uuml;r das HSM spezifischen PKCS#11-Bibliothek muss in der Konfigurationsdatei eingetragen werden (vergleiche Abschnitt <a href="../config/config.html#konfigurationsparameter_ss_keymodules_hardwarekeymodule">2.2.1.1</a> des Konfigurationshandbuchs).</p>
+ <h1><a name="klassenbibliothek"></a>3 Klassenbibliothek</h1>
+ <p>Dieser Abschnitt beschreibt die Verwendung von MOA SP/SS als Klassenbibliothek. Im ersten Unterkapitel wird eine minimale Basisinstallation beschrieben. Das zweite Unterkapitel zeigt eine Reihe von optionalen Erweiterungsm&ouml;glichkeiten auf.</p>
+ <h2><a name="klassenbibliothek_basisinstallation" id="klassenbibliothek_basisinstallation"></a>3.1 Basisinstallation</h2>
+ <h3><a name="klassenbibliothek_basisinstallation_einfuehrung" id="klassenbibliothek_basisinstallation_einfuehrung"></a>3.1.1 Einf&uuml;hrung </h3>
+ <p>Die Basisinstallation der Klassenbibliothek stellt einerseits die minimalen Anforderungen f&uuml;r den Einsatz von MOA SP/SS als Klassenbibliothek dar, andererseits dient sie als Ausgangspunkt f&uuml;r optionale Erweiterungsm&ouml;glichkeiten.</p>
+ <p> Folgende Software ist Voraussetzung f&uuml;r die Basisinstallation der Klassenbibliothek: </p>
+ <ul>
+ <li><a href="#referenziertesoftware">J2SE 1.3.1 JRE</a> oder <a href="#referenziertesoftware">J2SE 1.4.2 JRE</a> oder <a href="#referenziertesoftware">J2SE 5.0 JRE</a> </li>
+ </ul>
+ <h3><a name="klassenbibliothek_basisinstallation_vorbereitung" id="klassenbibliothek_basisinstallation_vorbereitung"></a>3.1.2 Vorbereitung </h3>
+ <p>Die folgenden Schritte dienen der Vorbereitung der Installation.</p>
+ <dl>
+ <dt>Installation von J2SE SDK</dt>
+ <dd>Installieren Sie <a href="#referenziertesoftware">J2SE 1.3.1 SDK</a> oder <a href="#referenziertesoftware">J2SE 1.4.2 SDK</a> oder <a href="#referenziertesoftware">J2SE 5.0 SDK</a> in ein beliebiges Verzeichnis. Wir empfehlen die Installation von <a href="#referenziertesoftware">J2SE 5.0 SDK</a>. Das Wurzelverzeichnis der J2SE SDK Installation wird im weiteren Verlauf als <code>$JAVA_HOME</code> bezeichnet. </dd>
+ <dt>Entpacken der MOA SP/SS Klassenbibliotheks-Distribution</dt>
+ <dd> Entpacken Sie die Datei <code>moa-spss-1.2.x-lib.zip</code> in ein beliebiges Verzeichnis. Dieses Verzeichnis wird im weiteren Verlauf als <code>$MOA_SPSS_INST</code> bezeichnet. </dd>
+ <dt>Installation der Krypographiebibliotheken von SIC/IAIK</dt>
+ <dd>
+ <p>Die Installation der Kryptographiebibliotheken von <a href="http://jce.iaik.tugraz.at/" target="_blank">SIC/IAIK</a> ist abh&auml;ngig vom eingesetzten J2SE SDK:</p>
+ <dl>
+ <dt>J2SE 1.3.1 SDK</dt>
+ <dd>Kopieren Sie alle Dateien aus dem Verzeichnis <code>$MOA_SPSS_INST/ext13</code> in das Verzeichnis <code>$JAVA_HOME/jre/lib/ext</code>.</dd>
+ <dt>J2SE 1.4.2 SDK oder JSE 5.0 SDK </dt>
+ <dd>Kopieren Sie alle Dateien aus dem Verzeichnis <code>$MOA_SPSS_INST/ext14</code> in das Verzeichnis <code>$JAVA_HOME/jre/lib/ext</code>. Zus&auml;tzlich m&uuml;ssen Sie die Rechtedateien Ihres J2SE 1.4.2 SDK bzw. J2SE 5.0 SDK austauschen. Laden Sie dazu die <span class="term">Unlimited Strength Jurisdiction Policy Files</span> von der <a href="http://java.sun.com/j2se/1.4.2/download.html" target="_blank">J2SE 1.4.2 SDK Downloadseite</a> bzw. <a href="http://java.sun.com/j2se/1.5.0/download.html">J2SE 5.0 SDK Downloadseite</a> und folgen Sie der darin enthaltenen Installationsanweisung. </dd>
+ </dl>
+ </dd>
+ </dl>
+ <h3><a name="klassenbibliothek_basisinstallation_verwendung" id="klassenbibliothek_basisinstallation_verwendung"></a>3.1.3 Verwendung</h3>
+ <p> Um die MOA SP/SS Klassenbibliothek in einer Applikation verwenden zu k&ouml;nnen, m&uuml;ssen die mit MOA SP/SS ausgelieferten Bibliotheken in den Java Klassenpfad der Applikation eingebunden werden. </p>
+ <p>Die nachfolgende Tabelle listet diese Klassenbibliotheken auf; die Eintr&auml;ge in der Spalte Dateien sind relativ zum Verzeichnis <code>$MOA_SPSS_INST</code> zu interpretieren.</p>
+<table class="fixedWidth" border="1" cellpadding="2">
+<tbody><tr>
+<th>Klassenbibliothek</th><th>Version</th><th>Dateien</th>
+
+</tr><tr>
+<td>MOA SP/SS</td>
+<td>1.2.x&nbsp; </td>
+<td><code>moa-spss.jar</code>, <code>moa-common.jar</code></td>
+</tr><tr>
+<td>MOA IAIK</td>
+<td>1.0.7&nbsp; </td>
+<td><p><code>lib/iaik_moa_full.jar</code>, <code>lib/iaik_Pkcs11Wrapper.jar</code>,
+ <code>lib/iaik_cms.jar</code>, <code>lib/iaik_ixsil.jar</code></p>
+ </td>
+</tr><tr>
+<td>JAXP</td><td>1.2_01&nbsp; </td><td><code>lib/jaxp-api.jar</code>, <code>lib/sax.jar</code>, <code>lib/dom.jar</code></td>
+
+</tr><tr>
+<td>Xerces-J</td><td>2.4.0&nbsp; </td><td><code>lib/xercesImpl.jar</code>, <code>lib/xmlParserAPIs.jar</code></td>
+</tr><tr>
+<td>Xalan-J</td><td>2.5.1&nbsp; </td><td><p><code>lib/xalan.jar</code></p>
+ <p class="remark">Bitte beachten Sie: Wenn Sie J2SE 1.4.2 JRE oder J2SE 5.0 JRE verwenden, m&uuml;ssen Sie diese Bibliothek der Java VM als endorsed bekanntgeben. Sie k&ouml;nnen dies tun, indem Sie entweder</p>
+ <ul>
+ <li class="remark">die Bibliothek in das (ggf. vorher anzulegende) Verzeichnis <code>$JAVA_HOME/jre/lib/endorsed/</code> kopieren; oder</li>
+ <li class="remark">die System Property <code>java.endorsed.dirs</code> verwenden, und als Wert den Pfad zu jenem Verzeichnis angeben, in dem Sie die Bibliothek vorhalten (also z.B. <code>java.endorsed.dirs=c:/mylibdir</code>).</li>
+ </ul></td>
+</tr><tr>
+<td>Jaxen</td><td>1.0&nbsp; </td><td><code>lib/jaxen-core.jar</code>, <code>lib/jaxen-dom.jar</code>, <code>lib/saxpath.jar</code></td>
+
+</tr><tr>
+<td>Commons-Logging</td>
+<td>1.0.4&nbsp; </td>
+<td><code>lib/commons-logging-api.jar</code>, <code>lib/commons-logging.jar</code></td>
+</tr><tr>
+<td>Log4j</td><td>1.2.7&nbsp; </td><td><code>lib/log4j-1.2.7.jar</code></td>
+</tr><tr>
+<td>Commons-Discovery</td><td>0.2&nbsp; </td><td><code>lib/commons-discovery.jar</code></td>
+
+</tr><tr>
+<td>JSSE</td><td>1.0.3_01&nbsp; </td>
+<td><p>Diese Bibliotheken ben&ouml;tigen Sie nur, wenn Sie J2SE 1.3.1 verwenden:</p>
+ <p><code>lib/ext13/jsse.jar</code>, <code>lib/ext13/jcert.jar</code>, <code>lib/ext13/jnet.jar</code></p>
+ <p class="remark">Bitte beachten Sie: Diese Bibliotheken ben&ouml;tigen Sie nur, wenn Sie J2SE 1.3.1 verwenden.</p> </td>
+</tr><tr>
+<td>Postgres JDBC2</td><td>7.3&nbsp; </td><td><p><code>lib/pg73jdbc2.jar</code></p>
+ <p><span class="remark">Bitte beachten Sie: Wenn Sie keine Datenbank f&uuml;r MOA SP/SS verwenden (vergleiche </span><a href="#webservice_erweiterungsm&#246;glichkeiten_datenbank">2.2.2</a><span class="remark">), ben&ouml;tigen Sie diese Bibliothek nicht.</span></p></td>
+</tr><tr>
+</tr>
+</tbody></table>
+
+ <h3><a name="klassenbibliothek_basisinstallation_logging" id="klassenbibliothek_basisinstallation_logging"></a>3.1.4 Logging</h3>
+ <p> Die MOA SP/SS Klassenbibliothek verwendet <a href="#referenziertesoftware">Jakarta Log4j</a> f&uuml;r die Ausgabe von Log-Meldungen am Bildschirm bzw. in Log-Dateien. Die im Abschnitt <a href="#webservice_basisinstallation_logging">2.1.3</a> gemachten Aussagen lassen sich gro&szlig;teils auf den Einsatz der MOA SP/SS Klassenbibliothek &uuml;bertragen. </p>
+ <h2><a name="klassenbibliothek_erweiterungsmöglichkeiten" id="klassenbibliothek_erweiterungsmöglichkeiten"></a>3.2 Erweiterungsm&ouml;glichkeiten </h2>
+ <p>Die im Abschnitt <a href="#webservice_erweiterungsm&#246;glichkeiten">2.2</a> angef&uuml;hrten Erweiterungsm&ouml;glichkeiten f&uuml;r die MOA SP/SS Webservices gelten in analoger Weise auch f&uuml;r die Klassenbibliothek.</p>
+ <h1><a name="referenzierte_software"></a>A Referenzierte Software</h1>
+<p>Auf folgende Software-Pakete wird in diesem Handbuch verwiesen:</p>
+<table class="fixedWidth" border="1" cellpadding="2">
+ <tr>
+ <th scope="col">Name</th>
+ <th scope="col">Beschreibung</th>
+ </tr>
+ <tr>
+ <td><a href="http://jakarta.apache.org/tomcat/index.html" target="_blank">Apache Tomcat 4.1.x </a></td>
+ <td>Servlet-Container des Apache Jakarta Projekts in der Version 4.1.x </td>
+ </tr>
+ <tr>
+ <td><a href="http://java.sun.com/j2se/1.3.1/" target="_blank">J2SE 1.3.1 SDK/JRE</a> </td>
+ <td>Java 2 Standard Edition in der Version 1.3.1 (Software Development Kit bzw. Java Runtime Environment) </td>
+ </tr>
+ <tr>
+ <td><a href="http://java.sun.com/j2se/1.4.2/" target="_blank">J2SE 1.4.2 SDK/JRE</a></td>
+ <td>Java 2 Standard Edition in der Version 1.4.2 (Software Development Kit bzw. Java Runtime Environment) </td>
+ </tr>
+ <tr>
+ <td><a href="http://java.sun.com/j2se/1.5.0/" target="_blank">J2SE 5.0 SDK/JRE</a> </td>
+ <td>Java 2 Standard Edition in der Version 5.0 (Software Development Kit bzw. Java Runtime Environment) </td>
+ </tr>
+ <tr>
+ <td><a href="http://jakarta.apache.org/log4j/" target="_blank">Jakarta Log4J </a></td>
+ <td>Logging Framework des Apache Jakarta Projekts </td>
+ </tr>
+</table>
+</body>
+</html>