diff options
author | gregor <gregor@d688527b-c9ab-4aba-bd8d-4036d912da1d> | 2004-07-02 15:02:28 +0000 |
---|---|---|
committer | gregor <gregor@d688527b-c9ab-4aba-bd8d-4036d912da1d> | 2004-07-02 15:02:28 +0000 |
commit | 2ef860fd91151e72d9863885ccbeaebf45fc092d (patch) | |
tree | fa8287ef657eda306ce1d9e9bc19c14c63e5798e /spss.server/doc/handbook | |
parent | 8620f68d1d5f60b97b961f8e1691bd33e3ce0c5b (diff) | |
download | moa-id-spss-2ef860fd91151e72d9863885ccbeaebf45fc092d.tar.gz moa-id-spss-2ef860fd91151e72d9863885ccbeaebf45fc092d.tar.bz2 moa-id-spss-2ef860fd91151e72d9863885ccbeaebf45fc092d.zip |
Neugliederung Dokumentation - Zwischensicherung
git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@149 d688527b-c9ab-4aba-bd8d-4036d912da1d
Diffstat (limited to 'spss.server/doc/handbook')
-rw-r--r-- | spss.server/doc/handbook/common/LogoBKA.png | bin | 0 -> 8062 bytes | |||
-rw-r--r-- | spss.server/doc/handbook/common/MOA.css | 277 | ||||
-rw-r--r-- | spss.server/doc/handbook/config/MOA-SPSS.config.xsd | 210 | ||||
-rw-r--r-- | spss.server/doc/handbook/config/config.html | 121 | ||||
-rw-r--r-- | spss.server/doc/handbook/index.html | 33 | ||||
-rw-r--r-- | spss.server/doc/handbook/install/install.html | 169 | ||||
-rw-r--r-- | spss.server/doc/handbook/intro/intro.html | 43 | ||||
-rw-r--r-- | spss.server/doc/handbook/spec/MOA-SPSS-1.2.pdf | bin | 0 -> 339034 bytes | |||
-rw-r--r-- | spss.server/doc/handbook/spec/MOA-SPSS-1.2.wsdl | 105 | ||||
-rw-r--r-- | spss.server/doc/handbook/spec/MOA-SPSS-1.2.xsd | 454 |
10 files changed, 1412 insertions, 0 deletions
diff --git a/spss.server/doc/handbook/common/LogoBKA.png b/spss.server/doc/handbook/common/LogoBKA.png Binary files differnew file mode 100644 index 000000000..6a92647fd --- /dev/null +++ b/spss.server/doc/handbook/common/LogoBKA.png diff --git a/spss.server/doc/handbook/common/MOA.css b/spss.server/doc/handbook/common/MOA.css new file mode 100644 index 000000000..9938fdcda --- /dev/null +++ b/spss.server/doc/handbook/common/MOA.css @@ -0,0 +1,277 @@ +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
+}
+
+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}
diff --git a/spss.server/doc/handbook/config/MOA-SPSS.config.xsd b/spss.server/doc/handbook/config/MOA-SPSS.config.xsd new file mode 100644 index 000000000..922c6957f --- /dev/null +++ b/spss.server/doc/handbook/config/MOA-SPSS.config.xsd @@ -0,0 +1,210 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!-- Schema für die zentrale Konfigurationsdatei von MOA SP/SS.
+ Gültig für die Versionen 1.0, 1.1 und 1.2.
+ (c) Stabsstelle IKT-Strategie des Bundes im Bundeskanzleramt, österreich -->
+<xs:schema targetNamespace="http://reference.e-government.gv.at/namespace/moaconfig/20021122#" xmlns:config="http://reference.e-government.gv.at/namespace/moaconfig/20021122#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/>
+ <xs:element name="MOAConfiguration">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CanonicalizationAlgorithm" minOccurs="0">
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="DigestMethodAlgorithm" minOccurs="0">
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SignatureAlgorithm" minOccurs="0">
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="GenericConfiguration" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ <xs:attribute name="value" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="HardwareCryptoModule" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>dient zum Konfigurieren von HW Crypto-Module via PKCS#11 (s. iaik.server.modules.crypto.HarwwareCryptoModuleConfiguration)</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ <xs:attribute name="slotID" type="xs:string" use="optional"/>
+ <xs:attribute name="userPIN" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="HardwareKeyModule" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>dient zum Konfigurieren von HW Key-Module via PKCS#11 (s. iaik.server. modules.crypto.HardwareKeyModuleConfiguration</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ <xs:attribute name="slotID" type="xs:string" use="optional"/>
+ <xs:attribute name="userPIN" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SoftwareKeyModule" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>dient zum Konfigurieren von SW Key-Module via PKCS#12 Dateien (s. iaik. server.modules.crypto.SoftwareKeyModuleConfiguration</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ <xs:attribute name="filename" type="xs:string" use="required"/>
+ <xs:attribute name="password" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="KeyGroup" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>definiert eine Gruppe von Keys</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element name="Key">
+ <xs:annotation>
+ <xs:documentation>Ein Schlüssel wird bezeichnet durch ein Tripel bestehend aus der ID des KeyModules (siehe z.B. SoftwareKeyModule/@id), sowie Issuer und Seriennummer des zum Schlüssel gehörigen Zertifikats</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="KeyModuleID" type="xs:token"/>
+ <xs:element name="KeyCertIssuerSerial" type="dsig:X509IssuerSerialType"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="KeyGroupMapping" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>ordnet oben definierte KeyGroups Online-Applikationen zu, die diese KeyGroups verwenden dürfen</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X509IssuerSerial" type="dsig:X509IssuerSerialType" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>wenn das Element nicht auftritt, dann können die zugeordneten KeyGroups von allen Online-Applikationen verwendet werden</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="KeyGroup" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ChainingModes" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>spezifiziert den Algorithmus ("pkix" oder "chaining") für die Zertifikatspfadvalidierung</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="TrustAnchor">
+ <xs:annotation>
+ <xs:documentation>ein vom SystemDefaultMode abweichender ChiningMode kann für jeden TrustAnchor gesetzt werden</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="dsig:X509IssuerSerialType">
+ <xs:attribute name="mode" type="config:ChainingModeType" use="required"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="systemDefaultMode" type="config:ChainingModeType" use="optional" default="pkix"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CRLArchive" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>spezifiziert die Dauer, die Revozierungsinformation archiviert werden muss in Tagen</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="duration" type="xs:nonNegativeInteger" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CRLDistributionPoint" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>spezifiziert CRL Distribution Points</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CAIssuerDN" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>spezifiziert die CA, für die der u.a. DP verwendet werden soll</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="DistributionPoint" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>das Attribut reasonCodes enthält eine Liste von möglichen reasonCodes lt. RFC 3280: unspecified, keyCompromise, cACompromise, affiliationChanged, superseded, cessationOfOperation, certificateHold, removeFromCRL, privilegeWithdrawn, aACompromise
+</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="reasonCodes" type="xs:NMTOKENS" use="optional"/>
+ <xs:attribute name="uri" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CreateTransformsInfoProfile" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>ordnet eine Datei, die ein CreateTransformsInfoProfile-Element enthält, einer id zu</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ <xs:attribute name="filename" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CreateSignatureEnvironmentProfile" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>ordnet eine Datei, die ein CreateSignatureEnvironmentProfile-Element enthält, einer id zu</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ <xs:attribute name="filename" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="VerifyTransformsInfoProfile" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>ordnet eine Datei, die ein VerifyTransformsInfoProfile-Element enthält, einer id zu</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ <xs:attribute name="filename" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SupplementProfile" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>ordnet eine Datei, die ein SupplementProfile-Element enthält, einer id zu</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ <xs:attribute name="filename" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="TrustProfile" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>ordnet ein Verzeichnis, das vertrauenswürdige Zertifikate enthält einer id zu</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ <xs:attribute name="uri" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:simpleType name="ChainingModeType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="chaining"/>
+ <xs:enumeration value="pkix"/>
+ </xs:restriction>
+ </xs:simpleType>
+</xs:schema>
diff --git a/spss.server/doc/handbook/config/config.html b/spss.server/doc/handbook/config/config.html new file mode 100644 index 000000000..4bd90a527 --- /dev/null +++ b/spss.server/doc/handbook/config/config.html @@ -0,0 +1,121 @@ +<!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>Die österreichische Bürgerkarte - Einführung</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" width="30%"><img src="../common/LogoBKA.png" width="267" height="36" alt="Logo BKA"></td> + <td align="center" class="logoTitle"><div align="right">Open Source + für das E-Government</div></td> + </tr> + </table> + <hr/> + <p class="title"><a href="../index.html">MOA: Serversignatur (SS) und Signaturprüfung (SP), V 1.2 </a></p> + <p class="subtitle">Konfiguration</p> + <hr/> + <h1>Inhalt</h1> + <ol> + <li> + <p><a href="#übersicht">Übersicht</a></p> + <ol> + <li><a href="#übersicht_zentraledatei">Zentrale Konfigurationsdatei</a></li> + <li><a href="#übersicht_bekanntmachung">Bekanntmachung der Konfigurationsdatei + </a> + <ol> + <li><a href="#übersicht_bekanntmachung_laufenderbetrieb">Aktualisierung der Konfiguration im laufenden Betrieb</a></li> + </ol> + </li> + <li><a href="#übersicht_logging">Konfiguration des Loggings</a></li> + </ol> + </li> + <li><a href="#konfigurationsparameter">Konfigurationsparameter</a></li> + <li><a href="#beispielkonfigurationen">Beispielkonfigurationen</a></li> + <li>Typische Konfigurationsaufgaben </li> + </ol> + <hr/> + <h1><a name="übersicht" id="übersicht"></a>1 Übersicht </h1> + <p>Dieses Handbuch beschreibt detailliert die Konfigurationsmöglichkeiten für MOA SP/SS. Wenn nicht anders angegeben, beziehen sich die Erläuterungen sowohl auf die Konfiguration des Webservices als auch auf die Konfiguration von MOA SP/SS für den Einsatz als Klassenbibliothek.</p> + <h2><a name="übersicht_zentraledatei" id="übersicht_zentraledatei"></a>1.1 Zentrale Konfigurationsdatei</h2> + <p>Die Konfiguration von MOA SP/SS erfolgt zentral über eine einzige Konfigurationsdatei. Das Format der Konfigurationsdatei ist XML und muss dem Schema <a href="./MOA-SPSS.config.xsd">MOA-SPSS.config.xsd</a> entsprechen. <a href="#konfigurationsparameter">Abschnitt 2</a> erläutert die Konfigurationsmöglichkeiten im Einzelnen.</p> + <h2><a name="übersicht_bekanntmachung" id="übersicht_bekanntmachung"></a>1.2 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äuft, durch ein <span class="term">VM Argument</span> mitgeteilt. Der Name des <span class="term">VM Argument</span> lautet <code>moa.spss.server.configuration</code>; als Wert des Parameters 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 MOA SP/SS erhalten Sie in <span class="comment">Abschnitt TBD des Installationshandbuchs</span>.</p> +<h3><a name="übersicht_bekanntmachung_laufenderbetrieb" id="übersicht_bekanntmachung_laufenderbetrieb"></a>1.2.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öglich, Änderungen an der Konfigurationsdatei vorzunehmen, und diese Änderungen ohne Neustart des zu Grunde liegenden Servlet Containers in den Betrieb zu übernehmen.</p> +<p>Weitere Informationen zum erneuten Einlesen der Konfigurationsdatei im Webservice-Betrieb erhalten Sie in <span class="comment">Abschnitt TBD des Installationshandbuchs</span>.</p> +<h2><a name="übersicht_logging" id="übersicht_logging"></a>1.3 Konfiguration des Loggings</h2> + <p>MOA SP/SS verwendet als Framework für Logging-Information die Open Source Software <code>log4j</code>. Die Konfiguration der Logging-Information erfolgt nicht direkt durch MOA SP/SS, sondern über eine eigene Konfigurationsdatei, die der <span class="term">Java Virtual Machine</span> durch ein <span class="term">VM Argument</span> mitgeteilt wird. Der Name des <span class="term">VM Argument</span> lautet <code>log4j.configuration</code>; als Wert des Parameters 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 <span class="comment">Abschnitt TBD des Installationshandbuchs</span>. </p> + <h1><a name="konfigurationsparameter"></a>2 Konfigurationsparameter</h1> + <p>Nachfolgend werden die verfügbaren Konfigurationsparameter der zentralen Konfigurationsdatei im Detail erläutert. Die Reihenfolge der Abhandlung entspricht der Reihenfolge des vorgeschriebenen Auftretens in der Konfigurationsdatei. Für beispielhafte Konfigurationsdateien siehe <a href="#beispielkonfigurationen">Abschnitt 3</a>. </p> + <p>Muss der Wert eines Konfigurationsparameters eine URL oder eine Pfadangabe sein, und wird als konkreter Wert eine relative URL bzw. ein relativer Pfad angegeben, so wird diese Angabe relativ zum Pfad jenes Verzeichnisses interpretiert, in dem die zentrale Konfigurationsdatei gespeichert ist.</p> + <p>Präfixe für Namenräume von XML-Elementen werden wie folgt verwendet:</p> + <table class="fixedWidth" border="1" cellpadding="2"> + <tr> + <th scope="col">Prä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> + </table> + <h2><a name="konfigurationsparameter_kanonisierungsalgorithmus" id="konfigurationsparameter_kanonisierungsalgorithmus"></a>2.1 Kanonisierungs-Algorithmus</h2> + <table class="fixedWidth" border="1" cellpadding="2"> + <tr> + <td>Name</td> + <td><code>cfg:CanonicalizationAlgorithm</code></td> + </tr> + <tr> + <td>Gebrauch</td> + <td>optional</td> + </tr> + <tr> + <td>Erläuterung</td> + <td><p> Als Inhalt des Elements kann der Kanonisierungs-Algorithmus, der fü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ü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>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> + <h2><a name="konfigurationsparameter_digestsalgorithmus" id="konfigurationsparameter_digestsalgorithmus"></a>2.2 Digest-Algorithmus</h2> + <table class="fixedWidth" border="1" cellpadding="2"> + <tr> + <td>Name</td> + <td><code>cfg:DigestAlgorithm</code></td> + </tr> + <tr> + <td>Gebrauch</td> + <td>optional</td> + </tr> + <tr> + <td>Erläuterung</td> + <td><p> Als Inhalt des Elements kann der Digest-Algorithmus, der fü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ü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ü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> + <h2> </h2> + <h1><a name="beispielkonfigurationen"></a>3 Beispielkonfigurationen </h1> + <p> </p> +</body> +</html> diff --git a/spss.server/doc/handbook/index.html b/spss.server/doc/handbook/index.html new file mode 100644 index 000000000..51bd0db60 --- /dev/null +++ b/spss.server/doc/handbook/index.html @@ -0,0 +1,33 @@ +<!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>Die österreichische Bürgerkarte - Einführung</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" width="30%"><img src="./common/LogoBKA.png" width="267" height="36" alt="Logo BKA"></td> + <td align="center" class="logoTitle"><div align="right">Open Source + für das E-Government</div></td> + </tr> + </table> + <hr/> + <p class="title">MOA: Serversignatur (SS) und Signaturprüfung (SP) </p> + <p class="subtitle">Übersicht zur Dokumentation der Version 1.2 </p> + <hr/> + <dl> + <dt><a href="./intro/intro.html">Einführung</a></dt> + <dd>Übersicht über die beiden Module.</dd> + <dt><a href="./install/install.html">Installation</a></dt> + <dd>Detaillierte Anleitung für die Installation. </dd> + <dt><a href="./config/config.html">Konfiguration</a></dt> + <dd>Erläuterung aller Konfigurationsoptionen sowie Leitfaden für häufige Konfigurationsaufgaben.</dd> + <dt><a href="./usage/usage.html">Anwendung</a></dt> + <dd>Beispiele zur Verwendung der beiden Module.</dd> + <dt><a href="./faq/faq.html">FAQ</a></dt> + <dd>Häufig gestellte Fragen zu Installation, Konfiguration und Anwendung. </dd> + </dl> +</body> +</html> diff --git a/spss.server/doc/handbook/install/install.html b/spss.server/doc/handbook/install/install.html new file mode 100644 index 000000000..ac9fb1a5c --- /dev/null +++ b/spss.server/doc/handbook/install/install.html @@ -0,0 +1,169 @@ +<!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>Die österreichische Bürgerkarte - Einführung</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" width="30%"><img src="../common/LogoBKA.png" width="267" height="36" alt="Logo BKA"></td> + <td align="center" class="logoTitle"><div align="right">Open Source + für das E-Government</div></td> + </tr> + </table> + <hr/> + <p class="title"><a href="../index.html">MOA: Serversignatur (SS) und Signaturprüfung (SP), V 1.2 </a></p> + <p class="subtitle">Installation</p> + <hr/> + <h1>Inhalt</h1> + <ol> + <li> + <p><a href="#Übersicht">Übersicht</a></p> + + </li> + <li> + <p><a href="#webservice">Webservice</a></p> + </li> + <li><a href="#klassenbibliothek">Klassenbibliothek</a></li> + </ol> +<hr/> + <h1><a name="übersicht" id="übersicht"></a>1 Übersicht</h1> + <p> Die Module Signaturprüfung (SP) und Serversignatur (SS) sind als plattformunabhängige Module ausgelegt, die entweder als Webservice über HTTP bzw. HTTPS oder als Klassenbibliothek über ein API angesprochen werden kö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ö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ührung </h3> + <p> Die Basisinstallation des Webservices stellt einerseits die minimalen Anforderungen für den Betrieb von MOA SP/SS als Webservices dar, andererseits dient sie als Ausgangspunkt für optionale <a href="#webservice_erweiterungsmöglichkeiten">Erweiterungsmöglichkeiten</a>.</p> + <p> Folgende Software ist Voraussetzung für die Basisinstallation des Webservices: </p> + <ul> + <li><a href="referenziertesoftware">J2SE 1.3.1 SDK oder J2SE 1.4.2 SDK </a></li> + <li><a href="#referenziertesoftware">Apache Tomcat 4.1.18 oder hö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ü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> in ein beliebiges Verzeichnis. Wir empfehlen die Installation von <a href="#referenziertesoftware">J2SE 1.4.2 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öher in ein Verzeichnis, das keine Leerzeichen im Pfadnamen enthält. Wir empfehlen die Installation von <a href="#referenziertesoftware">Apache Tomcat 4.1.30</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 mitgelieferten Krypographiebibliotheken</dt> + <dd> + <p>Die Installation der mitgelieferten Kryptographiebibliotheken des <a href="http://jce.iaik.tugraz.at/" target="_blank">IAIK</a> ist abhä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</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ätzlich müssen Sie die Rechtedateien Ihres J2SE 1.4.2 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> 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ätzlich mit einer funktionierenden Default-Konfiguration ausgeliefert, die jedoch einiges an Ballast enthält und viele Ports offen lässt. </p> + <h5>Konfiguration des HTTP Connectors</h5> + <p> Die Datei <code>$MOA_SPSS_INST/tomcat/server.xml</code> enthält eine minimale Tomcat-Konfiguration, die ausschließlich den Connector fü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ür Fälle, in denen das MOA SP/SS Webservice in einer abgeschlossenen Netzwerkumgebung betrieben wird. </p> + <h5>Konfiguration des HTTPS Connectors</h5> + <p>Wird das MOA SP/SS Webservice in einer nicht abgeschlossenen Umgebung (z.B. Erreichbarkeit über das Internet) betrieben, ist die gegenseitige Identitätsfeststellung von Kunde und Webservice essentiell: </p> + <ul> + <li> Nutzt ein Kunde MOA SP, ist es für ihn wichtig, die Identität des Webservice eindeutig feststellen zu können, denn er vertraut dem Webservice ja die Prüfung einer elektronischen Signatur an.</li> + <li>Nutzt ein Kunde MOA SS, ist es für ihn wesentlich, dass nur er Zugriff auf die für ihn vom Webservice verwalteten privaten Schlüssel hat, um elektronische Signaturen zu erstellen. Das Webservice muss also die Identität des Kunden prüfen. </li> + </ul> + <p>Beide Identitätsprüfungen können mit hoher Qualität vorgenommen werden, wenn die Erreichbarkeit des Webservice auf SSL mit Server- (für MOA SP) bzw. Client- und Serverauthentisierung (für MOA SS) eingeschränkt wird. </p> + <p>Für die dazu notwendige Konfiguration kann die im vorigen Abschnitt besprochene minimale Tomcat-Konfiguration als Ausgangspunkt verwendet werden: Zunächst ist der HTTP Connector abzuschalten (auszukommentieren). Anschließ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 Überblick dazu. Grob zusammengefasst sind folgende Schritte durchzuführen: </p> + <ul> + <li>Erstellung eines <span class="term">Server-Keystores</span>, der den privaten Schlüssel sowie das zugehörige Zertifikat des Webservices enthält, mit dem es sich bei Aufbau einer SSL-Verbindung gegenüber dem Kunden ausweist.sowie das dazugehörige ZertiServer-Zertifikat enthält. Sie kö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ält. Nur Kunden des Webservices, die sich beim Aufbau einer SSL-Verbindung gegenüber dem Webservice mit einem im <span class="term">Client-Keystore</span> enthaltenen Zertifikat ausweisen, erhalten grundsätzlich Zugriff zu den Diensten des Webservices (für die Konfiguration, welcher Kunde welche Schlüssel von MOA SS verwenden darf, siehe <span class="comment">TBD</span>). 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über dem Webservice authentisieren mü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 übernimmt (siehe <a href="#webservice_erweiterungsmöglichkeiten_webserver">Abschnitt 2.2.1</a>).</p> + <h5>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. Der Zugriff auf diese URL ist durch eine Passwort-Abfrage geschü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üssen in der Datei <code>$CATALINA_HOME/conf/tomcat-users.xml </code>unter dem Element <code><tomcat-users></code> sinngemäß folgende Einträge hinzugefügt werden: </p> + <p> + <pre><role rolename="moa-admin"/> +<user username="moa-chief" password="openSesam" roles="moa-admin"/> </pre> +<p>Soll der Aufruf dieser URL niemandem ermöglicht werden, sind die oben beschriebenen Einträge einfach nicht vorzunehmen.</p> + <h2><a name="webservice_erweiterungsmöglichkeiten" id="webservice_erweiterungsmöglichkeiten"></a>2.2 Erweiterungsmöglichkeiten</h2> + <p>Ausgehend von der <a href="#webservice_basisinstallation">Basisinstallation</a> können die optionalen Erweiterungen, die in den nachfolgenden Abschnitten beschrieben werden, unabhä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_apache" id="webservice_erweiterungsmöglichkeiten_webserver_apache"></a>2.2.1.1 Apache</h4> + <h4><a name="webservice_erweiterungsmöglichkeiten_webserver_iis" id="webservice_erweiterungsmöglichkeiten_webserver_iis"></a>2.2.1.2 Microsoft Internet Information Server</h4> + <h3><a name="webservice_erweiterungsmöglichkeiten_datenbank" id="webservice_erweiterungsmöglichkeiten_datenbank"></a>2.2.2 Datenbank</h3> + <h4><a name="webservice_erweiterungsmöglichkeiten_datenbank_postgresql" id="webservice_erweiterungsmöglichkeiten_datenbank_postgresql"></a>2.2.2.1 PostgreSQL</h4> + <h4><a name="webservice_erweiterungsmöglichkeiten_datenbank_oracle" id="webservice_erweiterungsmöglichkeiten_datenbank_oracle"></a>2.2.2.2 Oracle</h4> + <h3><a name="webservice_erweiterungsmöglichkeiten_hsm" id="webservice_erweiterungsmöglichkeiten_hsm"></a>2.2.3 Hardware Security Module (HSM)</h3> + <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öglichkeiten auf.</p> + <h2><a name="klassenbibliothek_basisinstallation" id="klassenbibliothek_basisinstallation"></a>3.1 Basisinstallation</h2> + <h3><a name="klassenbibliothek_basisinstallation_einführung" id="klassenbibliothek_basisinstallation_einführung"></a>3.1.1 Einführung </h3> + <p>Die Basisinstallation der Klassenbibliothek stellt einerseits die minimalen Anforderungen für den Einsatz von MOA SP/SS als Klassenbibliothek dar, andererseits dient sie als Ausgangspunkt für optionale Erweiterungsmöglichkeiten.</p> + <p> Folgende Software ist Voraussetzung fü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> </li> + </ul> + <p>Die MOA SP/SS Klassenbibliothek verwendet Log4j als Logging Toolkit.</p> + <h3><a name="klassenbibliothek_basisinstallation_installation" id="klassenbibliothek_basisinstallation_installation"></a>3.2.1 Installation </h3> + <h2><a name="klassenbibliothek_erweiterungsmöglichkeiten" id="klassenbibliothek_erweiterungsmöglichkeiten"></a>3.2 Erweiterungsmöglichkeiten </h2> + <h3><a name="klassenbibliothek_erweiterungsmöglichkeiten_datenbank" id="klassenbibliothek_erweiterungsmöglichkeiten_datenbank"></a>3.2.1 Datenbank</h3> + <h4><a name="klassenbibliothek_erweiterungsmöglichkeiten_datenbank_postgresql" id="klassenbibliothek_erweiterungsmöglichkeiten_datenbank_postgresql"></a>3.2.1.1 PostgreSQL</h4> + <h4><a name="klassenbibliothek_erweiterungsmöglichkeiten_datenbank_oracle" id="klassenbibliothek_erweiterungsmöglichkeiten_datenbank_oracle"></a>3.2.1.2 Oracle</h4> + <h3><a name="klassenbibliothek_erweiterungsmöglichkeiten_hsm" id="klassenbibliothek_erweiterungsmöglichkeiten_hsm"></a>3.2.2 Hardware Security Module (HSM)</h3> + <h1><a name="referenziertesoftware"></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> </td> + <td> </td> + </tr> + <tr> + <td> </td> + <td> </td> + </tr> + <tr> + <td> </td> + <td> </td> + </tr> + <tr> + <td> </td> + <td> </td> + </tr> + <tr> + <td> </td> + <td> </td> + </tr> + <tr> + <td> </td> + <td> </td> + </tr> +</table> +<p> </p> +<p> </p> +</body> +</html> diff --git a/spss.server/doc/handbook/intro/intro.html b/spss.server/doc/handbook/intro/intro.html new file mode 100644 index 000000000..d2828c5a8 --- /dev/null +++ b/spss.server/doc/handbook/intro/intro.html @@ -0,0 +1,43 @@ +<!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>Die österreichische Bürgerkarte - Einführung</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" width="30%"><img src="../common/LogoBKA.png" width="267" height="36" alt="Logo BKA"></td> + <td align="center" class="logoTitle"><div align="right">Open Source + für das E-Government</div></td> + </tr> + </table> + <hr/> + <p class="title"><a href="../index.html">MOA: Serversignatur (SS) und Signaturprüfung (SP), V 1.2 </a></p> + <p class="subtitle">Einführung</p> + <hr/> + <h1>Inhalt</h1> + <ol> + <li> + <p><a href="#allgemeines">Allgemeines</a></p> + </li> + <li> + <p><a href="#ss">Modul Serversignatur (SS) </a></p> + </li> + <li><a href="#sp">Modul Signaturprüfung (SP) </a></li> + </ol> +<hr/> + <h1><a name="allgemeines"></a>1 Allgemeines</h1> + <p> Die Module Serversignatur (SS) und Signaturprüfung (SP) können von Anwendungen verwendet werden, um elektronische Signaturen zu erstellen bzw. vorliegende elektronische Signaturen zu überprüfen.</p> + <p> Die Funktionalität und der Aufbau der Schnittstelle zu den beiden Modulen ist in der <a href="../spec/MOA-SPSS-1.2.pdf" target="_blank" class="term">Spezifikation MOA SP/SS (V1.2)</a> detailliert beschrieben. Da diese Spezifikation auf der <a href="http://www.buergerkarte.at/konzept/securitylayer/spezifikation/20020831/core/Core.html" target="_blank" class="term"> Schnittstellenspezifikation des Security-Layers (V 1.1)</a> aufbaut, ist deren Kenntnis zum Verstehen der Schnittstellen zu SS und SP erforderlich. </p> + <h1><a name="ss"></a>2 Modul Serversignatur (SS) </h1> + <p> Das Modul Serversignatur (SS) dient zum Erstellen von XML-Signaturen in Anlehnung an die <a href="http://www.buergerkarte.at/konzept/securitylayer/spezifikation/20020831/core/Core.html"> </a><a href="http://www.buergerkarte.at/konzept/securitylayer/spezifikation/20020831/core/Core.html" target="_blank" class="term">Schnittstellenspezifikation des Security-Layers (V 1.1)</a>. Eine Signatur kann entweder rein in Software erstellt werden, oder aber unter Zuhilfenahme eines Hardware Security Modules (HSM), das den privaten Schlüssel geschützt enthält und die Signatur berechnet.</p> + <p> Der Zugriff auf einzelne Signaturschlüssel in MOA SS kann basierend auf dem für TLS-Client-Authentisierung verwendeten Zertifikat eingeschränkt werden. </p> + <p> Anwendungen können das Modul entweder als Web-Service oder über ein Java-API ansprechen. </p> + <h1><a name="sp"></a>3 Modul Signaturprüfung (SP) </h1> + <p> Das Modul Signaturprüfung (SP) dient zum Überprüfen von <a href="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/" target="_blank">XML-Signaturen</a> und <a href="http://www.ietf.org/rfc/rfc2630.txt" target="_blank">CMS-Signaturen</a>. </p> + <p>Im Zuge der Verifikation einer XML-Signatur werden die Signatur, gegebenenfalls vorhandene XMLDSIG-Manifeste, als auch die Gültigkeit und Anwendbarkeit des Zertifikats überprüft. Bei XML-Signaturen kann zusätzlich überprüft werden, ob sie den speziellen Anforderungen <a href="http://www.buergerkarte.at/konzept/securitylayer/spezifikation/20020831/core/Core.html" target="_blank" class="term">Schnittstellenspezifikation des Security-Layers (V 1.1)</a> entsprechen (vgl. Signaturmanifest). </p> + <p> Anwendungen können das Modul entweder als Web-Service oder über ein Java-API ansprechen.</p> +</body> +</html> diff --git a/spss.server/doc/handbook/spec/MOA-SPSS-1.2.pdf b/spss.server/doc/handbook/spec/MOA-SPSS-1.2.pdf Binary files differnew file mode 100644 index 000000000..76094b848 --- /dev/null +++ b/spss.server/doc/handbook/spec/MOA-SPSS-1.2.pdf diff --git a/spss.server/doc/handbook/spec/MOA-SPSS-1.2.wsdl b/spss.server/doc/handbook/spec/MOA-SPSS-1.2.wsdl new file mode 100644 index 000000000..b3f252562 --- /dev/null +++ b/spss.server/doc/handbook/spec/MOA-SPSS-1.2.wsdl @@ -0,0 +1,105 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Web Service Description for MOA SP/SS 1.2
+-->
+<definitions name="MOA" targetNamespace="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:moa="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:xsd="http://www.w3.org/1999/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <import namespace="http://reference.e-government.gv.at/namespace/moa/20020822#" location="../resources/schemas/MOA-SPSS-1.2.xsd"/>
+ <message name="CreateXMLSignatureInput">
+ <part name="body" element="moa:CreateXMLSignatureRequest"/>
+ </message>
+ <message name="CreateXMLSignatureOutput">
+ <part name="body" element="moa:CreateXMLSignatureResponse"/>
+ </message>
+ <message name="VerifyCMSSignatureInput">
+ <part name="body" element="moa:VerifyCMSSignatureRequest"/>
+ </message>
+ <message name="VerifyCMSSignatureOutput">
+ <part name="body" element="moa:VerifyCMSSignatureResponse"/>
+ </message>
+ <message name="VerifyXMLSignatureInput">
+ <part name="body" element="moa:VerifyXMLSignatureRequest"/>
+ </message>
+ <message name="VerifyXMLSignatureOutput">
+ <part name="body" element="moa:VerifyXMLSignatureResponse"/>
+ </message>
+ <message name="MOAFault">
+ <part name="body" element="moa:ErrorResponse"/>
+ </message>
+ <portType name="SignatureCreationPortType">
+ <operation name="createXMLSignature">
+ <input message="tns:CreateXMLSignatureInput"/>
+ <output message="tns:CreateXMLSignatureOutput"/>
+ <fault name="MOAFault" message="tns:MOAFault"/>
+ </operation>
+ </portType>
+ <portType name="SignatureVerificationPortType">
+ <operation name="verifyCMSSignature">
+ <input message="tns:VerifyCMSSignatureInput"/>
+ <output message="tns:VerifyCMSSignatureOutput"/>
+ <fault name="MOAFault" message="tns:MOAFault"/>
+ </operation>
+ <operation name="verifyXMLSignature">
+ <input message="tns:VerifyXMLSignatureInput"/>
+ <output message="tns:VerifyXMLSignatureOutput"/>
+ <fault name="MOAFault" message="tns:MOAFault"/>
+ </operation>
+ </portType>
+ <binding name="SignatureCreationBinding" type="tns:SignatureCreationPortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="createXMLSignature">
+ <soap:operation soapAction="urn:CreateXMLSignatureAction"/>
+ <input>
+ <soap:body use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </input>
+ <output>
+ <soap:body use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </output>
+ <fault name="MOAFault">
+ <soap:fault use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </fault>
+ </operation>
+ </binding>
+ <binding name="SignatureVerificationBinding" type="tns:SignatureVerificationPortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="verifyCMSSignature">
+ <soap:operation soapAction="urn:VerifyCMSSignatureAction"/>
+ <input>
+ <soap:body use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </input>
+ <output>
+ <soap:body use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </output>
+ <fault name="MOAFault">
+ <soap:fault use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </fault>
+ </operation>
+ <operation name="verifyXMLSignature">
+ <soap:operation soapAction="urn:VerifyXMLSignatureAction"/>
+ <input>
+ <soap:body use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </input>
+ <output>
+ <soap:body use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </output>
+ <fault name="MOAFault">
+ <soap:fault use="literal" namespace="http://reference.e-government.gv.at/namespace/moa/20020822#"/>
+ </fault>
+ </operation>
+ </binding>
+ <service name="SignatureCreationService">
+ <port name="SignatureCreationPort" binding="tns:SignatureCreationBinding">
+ <!--
+ Please note that the location URL must be adapted to the actual service URL.
+ -->
+ <soap:address location="http://localhost/moa-spss/services/SignatureCreation"/>
+ </port>
+ </service>
+ <service name="SignatureVerificationService">
+ <port name="SignatureVerificationPort" binding="tns:SignatureVerificationBinding">
+ <!--
+ Please note that the location URL must be adapted to the actual service URL.
+ -->
+ <soap:address location="http://localhost/moa-spss/services/SignatureVerification"/>
+ </port>
+ </service>
+</definitions>
diff --git a/spss.server/doc/handbook/spec/MOA-SPSS-1.2.xsd b/spss.server/doc/handbook/spec/MOA-SPSS-1.2.xsd new file mode 100644 index 000000000..d7a06d6e7 --- /dev/null +++ b/spss.server/doc/handbook/spec/MOA-SPSS-1.2.xsd @@ -0,0 +1,454 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ MOA SP/SS 1.2 Schema
+-->
+<xsd:schema targetNamespace="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.2">
+ <xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/>
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <!--########## Create XML Signature ###-->
+ <!--### Create XML Signature Request ###-->
+ <xsd:element name="CreateXMLSignatureRequest">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="CreateXMLSignatureRequestType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="CreateXMLSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="KeyIdentifier" type="KeyIdentifierType"/>
+ <xsd:element name="SingleSignatureInfo" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Ermöglichung der Stapelsignatur durch wiederholte Angabe dieses Elements</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="DataObjectInfo" maxOccurs="unbounded">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="DataObjectInfoType">
+ <xsd:attribute name="ChildOfManifest" type="xsd:boolean" use="optional" default="false"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="CreateSignatureInfo" minOccurs="0">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="CreateSignatureEnvironment" type="ContentOptionalRefType"/>
+ <xsd:choice>
+ <xsd:annotation>
+ <xsd:documentation>Auswahl: Entweder explizite Angabe des Signaturorts sowie ggf. sinnvoller Supplements im Zshg. mit der Signaturumgebung, oder Verweis auf ein benanntes Profil</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element ref="CreateSignatureEnvironmentProfile"/>
+ <xsd:element name="CreateSignatureEnvironmentProfileID" type="ProfileIdentifierType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="SecurityLayerConformity" type="xsd:boolean" use="optional" default="true"/>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Create XML Signature Response ###-->
+ <xsd:complexType name="CreateXMLSignatureResponseType">
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Kardinalität 1..oo erlaubt die Antwort auf eine Stapelsignatur-Anfrage</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element name="SignatureEnvironment">
+ <xsd:annotation>
+ <xsd:documentation>Resultat, falls die Signaturerstellung erfolgreich war</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element ref="ErrorResponse"/>
+ </xsd:choice>
+ </xsd:complexType>
+ <xsd:element name="CreateXMLSignatureResponse" type="CreateXMLSignatureResponseType"/>
+ <!--########## Verify CMS Signature ###-->
+ <!--### Verifiy CMS Signature Request ###-->
+ <xsd:element name="VerifyCMSSignatureRequest">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="VerifyCMSSignatureRequestType">
+ <xsd:attribute name="Signatories" type="SignatoriesType" use="optional" default="1"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="VerifyCMSSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="DateTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="CMSSignature" type="xsd:base64Binary"/>
+ <xsd:element name="DataObject" type="CMSDataObjectOptionalMetaType" minOccurs="0"/>
+ <xsd:element name="TrustProfileID">
+ <xsd:annotation>
+ <xsd:documentation>mit diesem Profil wird eine Menge von vertrauenswürdigen Wurzelzertifikaten spezifiziert</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Verify CMS Signature Response ###-->
+ <xsd:element name="VerifyCMSSignatureResponse" type="VerifyCMSSignatureResponseType"/>
+ <xsd:complexType name="VerifyCMSSignatureResponseType">
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:element name="SignerInfo" type="dsig:KeyInfoType">
+ <xsd:annotation>
+ <xsd:documentation>only ds:X509Data and RetrievalMethod is supported; QualifiedCertificate is included as X509Data/any;publicAuthority is included as X509Data/any</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="SignatureCheck" type="CheckResultType"/>
+ <xsd:element name="CertificateCheck" type="CheckResultType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--########## Verify XML Signature ###-->
+ <!--### Verify XML Signature Request ###-->
+ <xsd:element name="VerifyXMLSignatureRequest" type="VerifyXMLSignatureRequestType"/>
+ <xsd:complexType name="VerifyXMLSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="DateTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="VerifySignatureInfo">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="VerifySignatureEnvironment" type="ContentOptionalRefType"/>
+ <xsd:element name="VerifySignatureLocation" type="xsd:token"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="SupplementProfile"/>
+ <xsd:element name="SupplementProfileID" type="xsd:string"/>
+ </xsd:choice>
+ <xsd:element name="SignatureManifestCheckParams" minOccurs="0">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="ReferenceInfo" type="VerifyTransformsDataType" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Pro dsig:Reference-Element in der zu überprüfenden XML-Signatur muss hier ein ReferenceInfo-Element erscheinen. Die Reihenfolge der einzelnen ReferenceInfo Elemente entspricht jener der dsig:Reference Elemente in der XML-Signatur.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="ReturnReferenceInputData" type="xsd:boolean" use="optional" default="true"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="ReturnHashInputData" minOccurs="0"/>
+ <xsd:element name="TrustProfileID">
+ <xsd:annotation>
+ <xsd:documentation>mit diesem Profil wird eine Menge von vertrauenswürdigen Wurzelzertifikaten spezifiziert</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Verify XML Signature Response ###-->
+ <xsd:element name="VerifyXMLSignatureResponse" type="VerifyXMLSignatureResponseType"/>
+ <xsd:complexType name="VerifyXMLSignatureResponseType">
+ <xsd:sequence>
+ <xsd:element name="SignerInfo" type="dsig:KeyInfoType">
+ <xsd:annotation>
+ <xsd:documentation>only ds:X509Data and ds:RetrievalMethod is supported; QualifiedCertificate is included as X509Data/any; PublicAuthority is included as X509Data/any</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="HashInputData" type="ContentExLocRefBaseType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ReferenceInputData" type="ContentExLocRefBaseType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="SignatureCheck" type="ReferencesCheckResultType"/>
+ <xsd:element name="SignatureManifestCheck" type="ReferencesCheckResultType" minOccurs="0"/>
+ <xsd:element name="XMLDSIGManifestCheck" type="ManifestRefsCheckResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CertificateCheck" type="CheckResultType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:simpleType name="ProfileIdentifierType">
+ <xsd:restriction base="xsd:token"/>
+ </xsd:simpleType>
+ <xsd:complexType name="MetaInfoType">
+ <xsd:sequence>
+ <xsd:element name="MimeType" type="MimeTypeType"/>
+ <xsd:element name="Description" type="xsd:anyURI" minOccurs="0"/>
+ <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="FinalDataMetaInfoType">
+ <xsd:complexContent>
+ <xsd:extension base="MetaInfoType">
+ <xsd:sequence>
+ <xsd:element name="Type" type="xsd:anyURI" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="DataObjectInfoType">
+ <xsd:sequence>
+ <xsd:element name="DataObject">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="ContentOptionalRefType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:annotation>
+ <xsd:documentation>Auswahl: Entweder explizite Angabe EINER Transformationskette inklusive ggf. sinnvoller Supplements oder Verweis auf ein benanntes Profil</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element ref="CreateTransformsInfoProfile"/>
+ <xsd:element name="CreateTransformsInfoProfileID" type="ProfileIdentifierType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="Structure" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="detached"/>
+ <xsd:enumeration value="enveloping"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:complexType name="TransformsInfoType">
+ <xsd:sequence>
+ <xsd:element ref="dsig:Transforms" minOccurs="0"/>
+ <xsd:element name="FinalDataMetaInfo" type="FinalDataMetaInfoType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="XMLDataObjectAssociationType">
+ <xsd:sequence>
+ <xsd:element name="MetaInfo" type="MetaInfoType" minOccurs="0"/>
+ <xsd:element name="Content" type="ContentRequiredRefType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMSDataObjectOptionalMetaType">
+ <xsd:sequence>
+ <xsd:element name="MetaInfo" type="MetaInfoType" minOccurs="0"/>
+ <xsd:element name="Content" type="CMSContentBaseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMSContentBaseType">
+ <xsd:complexContent>
+ <xsd:restriction base="ContentOptionalRefType">
+ <xsd:choice minOccurs="0">
+ <xsd:element name="Base64Content" type="xsd:base64Binary"/>
+ </xsd:choice>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="CheckResultType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:nonNegativeInteger"/>
+ <xsd:element name="Info" type="AnyChildrenType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ReferencesCheckResultType">
+ <xsd:complexContent>
+ <xsd:restriction base="CheckResultType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:nonNegativeInteger"/>
+ <xsd:element name="Info" type="ReferencesCheckResultInfoType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ReferencesCheckResultInfoType" mixed="true">
+ <xsd:complexContent mixed="true">
+ <xsd:restriction base="AnyChildrenType">
+ <xsd:sequence>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="FailedReference" type="xsd:positiveInteger" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ManifestRefsCheckResultType">
+ <xsd:complexContent>
+ <xsd:restriction base="CheckResultType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:nonNegativeInteger"/>
+ <xsd:element name="Info" type="ManifestRefsCheckResultInfoType"/>
+ </xsd:sequence>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ManifestRefsCheckResultInfoType" mixed="true">
+ <xsd:complexContent mixed="true">
+ <xsd:restriction base="AnyChildrenType">
+ <xsd:sequence>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="FailedReference" type="xsd:positiveInteger" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ReferringSigReference" type="xsd:positiveInteger"/>
+ </xsd:sequence>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <!--########## Error Response ###-->
+ <xsd:element name="ErrorResponse" type="ErrorResponseType">
+ <xsd:annotation>
+ <xsd:documentation>Resultat, falls die Signaturerstellung gescheitert ist</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:complexType name="ErrorResponseType">
+ <xsd:sequence>
+ <xsd:element name="ErrorCode" type="xsd:integer"/>
+ <xsd:element name="Info" type="xsd:string"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--########## Auxiliary Types ###-->
+ <xsd:simpleType name="KeyIdentifierType">
+ <xsd:restriction base="xsd:string"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="KeyStorageType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Software"/>
+ <xsd:enumeration value="Hardware"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="MimeTypeType">
+ <xsd:restriction base="xsd:token"/>
+ </xsd:simpleType>
+ <xsd:complexType name="AnyChildrenType" mixed="true">
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="XMLContentType" mixed="true">
+ <xsd:complexContent mixed="true">
+ <xsd:extension base="AnyChildrenType">
+ <xsd:attribute ref="xml:space" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ContentBaseType">
+ <xsd:choice minOccurs="0">
+ <xsd:element name="Base64Content" type="xsd:base64Binary"/>
+ <xsd:element name="XMLContent" type="XMLContentType"/>
+ <xsd:element name="LocRefContent" type="xsd:anyURI"/>
+ </xsd:choice>
+ </xsd:complexType>
+ <xsd:complexType name="ContentExLocRefBaseType">
+ <xsd:complexContent>
+ <xsd:restriction base="ContentBaseType">
+ <xsd:choice minOccurs="0">
+ <xsd:element name="Base64Content" type="xsd:base64Binary"/>
+ <xsd:element name="XMLContent" type="XMLContentType"/>
+ </xsd:choice>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ContentOptionalRefType">
+ <xsd:complexContent>
+ <xsd:extension base="ContentBaseType">
+ <xsd:attribute name="Reference" type="xsd:anyURI" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ContentRequiredRefType">
+ <xsd:complexContent>
+ <xsd:restriction base="ContentOptionalRefType">
+ <xsd:choice minOccurs="0">
+ <xsd:element name="Base64Content" type="xsd:base64Binary"/>
+ <xsd:element name="XMLContent" type="XMLContentType"/>
+ <xsd:element name="LocRefContent" type="xsd:anyURI"/>
+ </xsd:choice>
+ <xsd:attribute name="Reference" type="xsd:anyURI" use="required"/>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="VerifyTransformsDataType">
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Ein oder mehrere Transformationswege können von der Applikation an MOA mitgeteilt werden. Die zu prüfende Signatur hat zumindest einem dieser Transformationswege zu entsprechen. Die Angabe kann explizit oder als Profilbezeichner erfolgen.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element ref="VerifyTransformsInfoProfile"/>
+ <xsd:element name="VerifyTransformsInfoProfileID" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>Profilbezeichner für einen Transformationsweg</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ <xsd:element name="QualifiedCertificate"/>
+ <xsd:element name="PublicAuthority" type="PublicAuthorityType"/>
+ <xsd:complexType name="PublicAuthorityType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:simpleType name="SignatoriesType">
+ <xsd:union memberTypes="AllSignatoriesType">
+ <xsd:simpleType>
+ <xsd:list itemType="xsd:positiveInteger"/>
+ </xsd:simpleType>
+ </xsd:union>
+ </xsd:simpleType>
+ <xsd:simpleType name="AllSignatoriesType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="all"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:complexType name="CreateSignatureLocationType">
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:token">
+ <xsd:attribute name="Index" type="xsd:nonNegativeInteger" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:complexType name="TransformParameterType">
+ <xsd:choice minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>Die Angabe des Transformationsparameters (explizit oder als Hashwert) kann unterlassen werden, wenn die Applikation von der Unveränderlichkeit des Inhalts der in "Transformationsparamter", Attribut "URI" angegebenen URI ausgehen kann.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element name="Base64Content" type="xsd:base64Binary">
+ <xsd:annotation>
+ <xsd:documentation>Der Transformationsparameter explizit angegeben.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="Hash">
+ <xsd:annotation>
+ <xsd:documentation>Der Hashwert des Transformationsparameters.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="dsig:DigestMethod"/>
+ <xsd:element ref="dsig:DigestValue"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:attribute name="URI" type="xsd:anyURI" use="required"/>
+ </xsd:complexType>
+ <xsd:element name="CreateSignatureEnvironmentProfile">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="CreateSignatureLocation" type="CreateSignatureLocationType"/>
+ <xsd:element name="Supplement" type="XMLDataObjectAssociationType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="VerifyTransformsInfoProfile">
+ <xsd:annotation>
+ <xsd:documentation>Explizite Angabe des Transformationswegs</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="dsig:Transforms" minOccurs="0"/>
+ <xsd:element name="TransformParameter" type="TransformParameterType" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Alle impliziten Transformationsparameter, die zum Durchlaufen der oben angeführten Transformationskette bekannt sein müssen, müssen hier angeführt werden. Das Attribut "URI" bezeichnet den Transformationsparameter in exakt jener Weise, wie er in der zu überprüfenden Signatur gebraucht wird.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="Supplement" type="XMLDataObjectAssociationType"/>
+ <xsd:element name="SupplementProfile" type="XMLDataObjectAssociationType"/>
+ <xsd:element name="CreateTransformsInfoProfile">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="CreateTransformsInfo" type="TransformsInfoType"/>
+ <xsd:element ref="Supplement" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+</xsd:schema>
|