diff options
| author | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-01-29 16:39:18 +0100 | 
|---|---|---|
| committer | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-01-29 16:39:18 +0100 | 
| commit | aa8ef6ac6e9f27cde7d009006de639893e0851f3 (patch) | |
| tree | 9aa2d9b209738d42fc5560e10a1c8b11892df42c /spss/server | |
| parent | 648510a0769be3ebc4dc3d2e454172d230d3f217 (diff) | |
| parent | 5ab7e548582a26dd37144df55efb63b7fca4483d (diff) | |
| download | moa-id-spss-aa8ef6ac6e9f27cde7d009006de639893e0851f3.tar.gz moa-id-spss-aa8ef6ac6e9f27cde7d009006de639893e0851f3.tar.bz2 moa-id-spss-aa8ef6ac6e9f27cde7d009006de639893e0851f3.zip | |
Merge remote-tracking branch 'remotes/origin/moa2_0_kstranacher' into moa2_0_tlenz
Conflicts:
	common/pom.xml
	id/server/auth/.settings/org.eclipse.wst.common.component
	id/server/auth/src/main/webapp/index.html
	id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/VerifyCertificateServlet.java
	id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/SAML1AuthenticationServer.java
	id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties
	id/server/idserverlib/src/main/resources/resources/wsdl/MOA-ID-1.x.wsdl
	pom.xml
	spss/handbook/clients/api/pom.xml
	spss/handbook/clients/pom.xml
	spss/handbook/clients/referencedData/pom.xml
	spss/handbook/clients/webservice/pom.xml
	spss/handbook/pom.xml
	spss/pom.xml
	spss/server/pom.xml
	spss/server/serverlib/pom.xml
	spss/server/serverws/.settings/org.eclipse.wst.common.component
	spss/server/serverws/pom.xml
	spss/server/tools/pom.xml
Diffstat (limited to 'spss/server')
21 files changed, 351 insertions, 222 deletions
| diff --git a/spss/server/history.txt b/spss/server/history.txt index 0062376b4..a69bf1211 100644 --- a/spss/server/history.txt +++ b/spss/server/history.txt @@ -1,14 +1,14 @@  ############## -1.5.2 +2.0.0  ##############  - Signaturerstelltung: -  - Unterstützung von XAdES Version 1.4.2 -  - Unterstützung von CMS/CAdES Signaturen Version 2.2.1 -- TSL Unterstützung                                                   -- Libraries aktualisiert bzw. hinzugefügt: +  - Unterstuetzung von XAdES Version 1.4.2 +  - Unterstuetzung von CMS/CAdES Signaturen Version 2.2.1 +- TSL Unterstuetzung                                                   +- Libraries aktualisiert bzw. hinzugef�gt:  	iaik-moa:           Version 1.5 -	iaik-tsl			Versio x.x @TODO +	iaik-tsl			Versio 1.0.0  ############## @@ -16,10 +16,10 @@  ##############  - Sicherheitsupdates -  - Defaultmäßiges Deaktiveren des Auflösens von externen Referenzen -  - Angabe einer Blacklist in der Konfiguration um den Intranetbereich zu schützen, so das Auflösen externer Referenzen aktiviert wird +  - Defaultm��iges Deaktiveren des Aufl�sens von externen Referenzen +  - Angabe einer Blacklist in der Konfiguration um den Intranetbereich zu sch�tzen, so das Aufl�sen externer Referenzen aktiviert wird  - Update der Standard Trustprofile und Standard Konfigurationen -- Standard Trustprofil "OfficialSignature" für Amtssignaturen hinzugefügt                                                   +- Standard Trustprofil "OfficialSignature" f�r Amtssignaturen hinzugef�gt                                                    - Libraries aktualisiert:  	iaik-moa:           Version 1.32  	iaik-ixsil:			Version 1.2.2.5  @@ -41,7 +41,7 @@  ##############  - IAIK Libraries aktualisiert: -	iaik-moa:           Version 1.28 (Unterstützung XAdES Versionen) +	iaik-moa:           Version 1.28 (Unterst�tzung XAdES Versionen)  ##############  1.4.7 @@ -56,7 +56,7 @@  1.4.6  ############## -- Keine Änderung in MOA-SPSS +- Keine �nderung in MOA-SPSS  ##############  1.4.5 @@ -69,10 +69,10 @@  	iaikPkcs11Provider: Version 1.2.6  	iaikPkcs11Wrapper:  Version 1.2.17 -- Überprüfung von ArchiveCutOff und Implementierung eines Retention Intervalls für CRLs. -- Hinzufügen der Möglichkeit Retention Intervalle für bestimmte CAs zu konfigurieren. -  Dadurch wurde auch das Konfigurations Schema geändert. -- Weitere Änderung des Konfigurations Schemas: Bei der ServiceOrder für das Revocation +- �berpr�fung von ArchiveCutOff und Implementierung eines Retention Intervalls f�r CRLs. +- Hinzuf�gen der M�glichkeit Retention Intervalle f�r bestimmte CAs zu konfigurieren. +  Dadurch wurde auch das Konfigurations Schema ge�ndert. +- Weitere �nderung des Konfigurations Schemas: Bei der ServiceOrder f�r das Revocation    Checking kann nun auch nur jeweils ein Dienst (CRL oder OCSP) angegeben werden.  ############## @@ -93,18 +93,18 @@  1.4.3  ############## -- Unnötige Abhängigkeit zu JSSE-Implementierung von Sun wurden entfernt, welcher den Einsatz von MOA SP/SS in    +- Unn�tige Abh�ngigkeit zu JSSE-Implementierung von Sun wurden entfernt, welcher den Einsatz von MOA SP/SS in       Java-Laufzeitumgebungen anderer Hersteller als Sun (z.B. IBM) erschwert. -- Ein Konfigurationsparameter für MOA SP wurde eingeführt (cfg:SignatureVerification/cfg:PermitFileURIs) welcher +- Ein Konfigurationsparameter f�r MOA SP wurde eingef�hrt (cfg:SignatureVerification/cfg:PermitFileURIs) welcher    file-URIs erlauben oder verbieten soll. -- Das Herauslösen des Verarbeitungsrequests aus dem SOAP-Request endete in einer +- Das Herausl�sen des Verarbeitungsrequests aus dem SOAP-Request endete in einer    ClassCastException, wenn zwischen dem Body-Element des SOAP-Envelopes und dem     Request white spaces vorhanden sind bzw. dieses Element nicht unmittelbar nach -  dem Body-Element steht. Das Herauslösen ist nun gegen white spaces robust.  +  dem Body-Element steht. Das Herausl�sen ist nun gegen white spaces robust.  -- Bei der Signaturverifikation (zusätzlich zu den bisherigen) folgende Algorithmen unterstützt: +- Bei der Signaturverifikation (zus�tzlich zu den bisherigen) folgende Algorithmen unterst�tzt:     1.  Added the following signature algorithms for XML signatures:        o  http://www.w3.org/2001/04/xmldsig-more#rsa-sha384       o  http://www.w3.org/2001/04/xmldsig-more#rsa-sha512 @@ -164,19 +164,19 @@  ##############  - Die Projektstruktur wurde eimem Maven Build-Prozess unterlegt. Der Sourcocde  -  ab dieser Version unter http://egovlabs.gv.at/scm/?group_id=6 verfügbar. +  ab dieser Version unter http://egovlabs.gv.at/scm/?group_id=6 verf�gbar.  ##############  1.4.0  ############## -- Unterstützung von SOAP with Attachments. LocRefContent kann nun auch über SOAP -  attachments übergeben werden. Dadurch können alle notwendigen Teile für einen  -  Request platzsparend in einem Schritt übermittelt werden. +- Unterst�tzung von SOAP with Attachments. LocRefContent kann nun auch �ber SOAP +  attachments �bergeben werden. Dadurch k�nnen alle notwendigen Teile f�r einen  +  Request platzsparend in einem Schritt �bermittelt werden.  - Axis Libraries aktualisiert (auf Version 1.4) -- Ermöglichung von Signaturpositionen die sich am Ende des Dokuments befinden  +- Erm�glichung von Signaturpositionen die sich am Ende des Dokuments befinden     (CreateSignatureLocation=-1).  - IAIK Libraries aktualisiert: @@ -190,7 +190,7 @@  	     iaik-moa:           Version 1.20  - Neue Mindestanforderung an Java: Version 1.4.0 (1.3.* wird nicht mehr  -  unterstützt) +  unterst�tzt)  ##############  1.3.1D01 @@ -202,7 +202,7 @@  - IAIK-MOA: Eine indirekte CRL wird nun auch akzeptiert, wenn die               "IssuingDistributionPoint"-Extension fehlt  -- Logging: commons-logging-1.0.4-Libraries (unterstützt auch Tomcat 5*) +- Logging: commons-logging-1.0.4-Libraries (unterst�tzt auch Tomcat 5*)  ##############  1.3.0 @@ -225,52 +225,52 @@  1.3.0D01  ############## -- Default-Wert für Archivierungsdauer von Widerrufsinformation von 0 auf 365 -  Tage geändert. +- Default-Wert f�r Archivierungsdauer von Widerrufsinformation von 0 auf 365 +  Tage ge�ndert.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=305.  - Default-Reihenfolge der Verwendung von Widerrufspunkten von (CRL, OCSP) auf -  (OCSP, CRL) geändert. +  (OCSP, CRL) ge�ndert.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=304. -- XML-Schema für die Konfiguration von MOA SP/SS komplett überarbeitet. +- XML-Schema f�r die Konfiguration von MOA SP/SS komplett �berarbeitet.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=271. -- Änderungen der Semantik des Elements VerifyXMLSignatureRequest/ReturnHashInputData +- �nderungen der Semantik des Elements VerifyXMLSignatureRequest/ReturnHashInputData    bzw. des Attributs VerifyXMLSignatureRequest/SignatureManifestCheckParams/    @ReturnReferenceInputData. Es werden nunmehr auch die Hash-Eingangsdaten bzw. -  die Referenz-Eingangsdaten für dsig:Reference-Elemente in XMLDSIG-Manifesten -  zurückgeliefert. +  die Referenz-Eingangsdaten f�r dsig:Reference-Elemente in XMLDSIG-Manifesten +  zur�ckgeliefert.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=232. -- TCP-Verbindungen zur Auflösung von externen Referenzen wurden bisher nicht  +- TCP-Verbindungen zur Aufl�sung von externen Referenzen wurden bisher nicht     sauber geschlossen. Damit kam es bei sehr komplexen XML-Signaturen unter -  Umständen zu einem Ressourcen-Problem, da zu viele TCP-Verbindungen gleich- -  zeitig geöffnet wurden. Dieses Probem wurde behoben. +  Umst�nden zu einem Ressourcen-Problem, da zu viele TCP-Verbindungen gleich- +  zeitig ge�ffnet wurden. Dieses Probem wurde behoben.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=283.  - Trustprofil um eine Menge explizit erlaubter Signatorzertifikate erweitert. -  Dadurch ist es nun möglich, nicht nur generell allen von einer als Vertrauens- +  Dadurch ist es nun m�glich, nicht nur generell allen von einer als Vertrauens-    anker gesetzten CA ausgestellten Zertifikate zu vertrauen, sondern diese Zerti- -  fikate weiter auf eine taxativ aufgezählte Liste von Signatorzertifikaten ein- -  zuschränken. +  fikate weiter auf eine taxativ aufgez�hlte Liste von Signatorzertifikaten ein- +  zuschr�nken.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=267. -- MOA SS Webservice Clients, die sich mit einem Zertifikat ausweisen, können nun +- MOA SS Webservice Clients, die sich mit einem Zertifikat ausweisen, k�nnen nun    auch auf die Key-Groups des anonymen Key-Group-Mappings zugreifen.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=224. -- MOA SS fit für Mehrfachsignaturen, d.h. mehrere XML-Signaturen in einem XML- +- MOA SS fit f�r Mehrfachsignaturen, d.h. mehrere XML-Signaturen in einem XML-    Dokument gemacht. Bisher scheiterte das an den fix vergebenen Id-Attributen    innerhalb der dsig:Signature-Struktur.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=214. -- MOA SP so verändert, dass die Prüfungen zum Signaturmanifest laut SL 1.2 jeden- -  falls durchgeführt werden, auch wenn das Element SignatureManifestCheckParams +- MOA SP so ver�ndert, dass die Pr�fungen zum Signaturmanifest laut SL 1.2 jeden- +  falls durchgef�hrt werden, auch wenn das Element SignatureManifestCheckParams    in VerifyXMLSignatureRequest nicht angegeben wird.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=269.  -- Verwendete JSSE Bibliothek auf Version 1.0.3 aktualisiert, da frühere Versionen +- Verwendete JSSE Bibliothek auf Version 1.0.3 aktualisiert, da fr�here Versionen    einen sicherheitskritischen Fehler enthalten.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=124.    @@ -291,8 +291,8 @@    zu einem Fehler.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=220. -- Default-Wert für das Konfigurationsattribut cfg:CRLDistributionPoint/ -  cfg:DistributionPoint/@reasonCodes so verändert, dass bei Weglassen des +- Default-Wert f�r das Konfigurationsattribut cfg:CRLDistributionPoint/ +  cfg:DistributionPoint/@reasonCodes so ver�ndert, dass bei Weglassen des    Attributs alle Reason-Codes gesetzt werden.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=244.  @@ -300,7 +300,7 @@    auch beim Betrieb unter Tomcat 5 funktioniert.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=245. -- Werden bei der Zusammenstellung eines Signaturprüfrequests über das MOA API +- Werden bei der Zusammenstellung eines Signaturpr�frequests �ber das MOA API    keine Supplements angegeben (null), kommt es nunmehr zu keinem Fehler mehr.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=247.     @@ -309,7 +309,7 @@  ##############  - Update des MOA-Kerns von IAIK. Gepatched wurde darin die fehlerhafte Kodierung -  des Signaturwerts für ECDSA-Signaturen. Bisher wurde das Paar (r,s) fehlerhafter +  des Signaturwerts f�r ECDSA-Signaturen. Bisher wurde das Paar (r,s) fehlerhafter    Weise in eine ASN.1-Struktur eingepackt.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=218.  @@ -320,32 +320,32 @@  - Update auf eine neuere Version der XML-Signaturbibliothek sowie damit ver-    bunden ein Update auf neuere Versionen von Xalan (2.5.1) sowie Xerces (2.4.0).    Grund: Mit der neuen Xerces-Version funktioniert nun auch das Parsen einer -  XML-Personenbindung mit ECDSA-Schlüsseln. +  XML-Personenbindung mit ECDSA-Schl�sseln.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=215.  - Update des MOA-Kerns von IAIK. Es werden nun ECDSA-Signaturen, welche den    Signaturalgorithmus mit "http://www.w3.org/2004/01/xmldsig-more#" -  kennzeichnen, erfolgreich von MOA SP erkannt und geprüft. Ebenso erstellt -  MOA SP nun ECDSA-Signaturen mit dem erwähnten Signaturalgorithmus. +  kennzeichnen, erfolgreich von MOA SP erkannt und gepr�ft. Ebenso erstellt +  MOA SP nun ECDSA-Signaturen mit dem erw�hnten Signaturalgorithmus.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=217.   -- Prüfung des Signaturmanifests funktioniert nun auch bei vorhandener EC14N +- Pr�fung des Signaturmanifests funktioniert nun auch bei vorhandener EC14N    Transformation. Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=197.  - Das Element SignerInfo/QualifiedCertificate der Antwort auf eine XML- -  Signaturprüfung erscheint nun im korrekten Namespace. +  Signaturpr�fung erscheint nun im korrekten Namespace.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=189. -- Eine falsche Fehlermeldung im Zusammenhang mit Ergänzungsobjekten wurde +- Eine falsche Fehlermeldung im Zusammenhang mit Erg�nzungsobjekten wurde    korrigiert. Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=174. -- Fehlender Typ des Elements TrustProfileID im XML-Schema wurde ergänzt. +- Fehlender Typ des Elements TrustProfileID im XML-Schema wurde erg�nzt.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=163. -- Stack Overflow bei Prüfung bestimmter XML-Signaturen tritt nun nicht mehr +- Stack Overflow bei Pr�fung bestimmter XML-Signaturen tritt nun nicht mehr    auf. Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=132. -- Unpräzise Fehlermeldungen verbessert. +- Unpr�zise Fehlermeldungen verbessert.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=127.    Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=74. @@ -355,14 +355,14 @@  ##############  - Im Befehl CreateXMLSignatureRequest kann nun in FinalDataMetaInfo das  -  zusätzliche Element "Type" angegeben werden. Der Textinhalt dieses Elements +  zus�tzliche Element "Type" angegeben werden. Der Textinhalt dieses Elements    wird als Type-Attribut der korrespondierenden dsig:Reference gesetzt. Siehe    https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=54.  - Die Verwendung von EC14N-Transformationen ohne InclusiveNamespaces funktioniert    nun auch. Siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=44.   -- Signaturerstellung mit DSA-Schlüssel funktioniert nun. Siehe +- Signaturerstellung mit DSA-Schl�ssel funktioniert nun. Siehe    https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=52.    ############## @@ -370,8 +370,8 @@  ##############  - In den Befehlen CreateXMLSignatureRequest sowie VerifyXMLSignatureRequest kann -  nun in allen Fällen, in denen bisher entweder Base64Content oder XMLContent  -  angegeben werden konnte, auch eine dritte Spielart verwendet werden, nämlich +  nun in allen F�llen, in denen bisher entweder Base64Content oder XMLContent  +  angegeben werden konnte, auch eine dritte Spielart verwendet werden, n�mlich    LocRefContent. LocRefContent hat als Text-Inhalt eine URL, von der MOA den    Content bezieht    (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=41). @@ -380,7 +380,7 @@  1.1.0  ############## -- Einfach verwendbare Scripts für Starten/Stopen sowie Install/Uninstall als +- Einfach verwendbare Scripts f�r Starten/Stopen sowie Install/Uninstall als    Service unter Windows in die Auslieferung aufgenommen     (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=36). @@ -389,40 +389,40 @@    https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=35,    https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=37). -- Zertifikatsspeicher der Default-Konfiguration enthält nun alle CA-Zertifikate  -  A-Trust sowie das Root-Zertifikats des Mobilkom-Bürgerkarten-Versuchs +- Zertifikatsspeicher der Default-Konfiguration enth�lt nun alle CA-Zertifikate  +  A-Trust sowie das Root-Zertifikats des Mobilkom-B�rgerkarten-Versuchs    (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=33).  - Konfigurationsparameter "checkRevocation" ist hat nun Default-Wert "false"    (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=32). -- Fehlerhafte Einträge in den minimalen Default-Konfigurationsfiles behoben +- Fehlerhafte Eintr�ge in den minimalen Default-Konfigurationsfiles behoben    (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=30,    https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=31).  - Ein CreateXMLSignatureRequest, der nicht den Default-Namespace verwendet, sondern -  ein ns-Präfix verwendet, wird nun auch korrekt verarbeitet +  ein ns-Pr�fix verwendet, wird nun auch korrekt verarbeitet    (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=19).  - Wird eine Enveloped Signature erzeugt, wird nun das korrekte XML-Dokument mit der -  erzeugten Signatur in der Antwort zurückgeliefert  +  erzeugten Signatur in der Antwort zur�ckgeliefert     (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=12). -- WSDL-File, das über die URI <MOA-SPSS-Basis-URL>/services/SignatureCreation?wsdl  +- WSDL-File, das �ber die URI <MOA-SPSS-Basis-URL>/services/SignatureCreation?wsdl     bzw. <MOA-SPSS-Basis-URL>/services/SignatureVerification?wsdl abgefragt werden  -  kann, ist nun aktuell (MOA-SPSS-Schema 1.1) und enthält einen korrekten Verweis +  kann, ist nun aktuell (MOA-SPSS-Schema 1.1) und enth�lt einen korrekten Verweis    auf das MOA-SPSS-Schema 1.1     (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=6). -- Problem mit Auflösung von LDAP-URLs beim Einsatz als Webservice in Tomcat behoben.  +- Problem mit Aufl�sung von LDAP-URLs beim Einsatz als Webservice in Tomcat behoben.     (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=2). -- Bei der Prüfung auf Security-Layer-Konformität wird nun das korrekte Resultat -  zurückgeliefert, wenn die Signatur keine impliziten Transformationsparameter  -  enthält +- Bei der Pr�fung auf Security-Layer-Konformit�t wird nun das korrekte Resultat +  zur�ckgeliefert, wenn die Signatur keine impliziten Transformationsparameter  +  enth�lt    (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=3). -- Unterstützung anderer Datenbanken als postgreSQL und mySQL für das CRL-Archiv +- Unterst�tzung anderer Datenbanken als postgreSQL und mySQL f�r das CRL-Archiv    (siehe https://forge.cio.gv.at/bugzilla/show_bug.cgi?id=7).  - Diverse Fehler in der Dokumentation beseitigt  @@ -434,4 +434,4 @@  1.0.9  ############## -- Erste öffentliche Release +- Erste �ffentliche Release diff --git a/spss/server/pom.xml b/spss/server/pom.xml index bf3b643e7..b5e1b32c1 100644 --- a/spss/server/pom.xml +++ b/spss/server/pom.xml @@ -3,14 +3,14 @@      <parent>
          <groupId>MOA</groupId>
          <artifactId>spss</artifactId>
 -        <version>1.5.x</version>
 +        <version>2.0.x</version>
      </parent>
      <modelVersion>4.0.0</modelVersion>
      <groupId>MOA.spss</groupId>
      <artifactId>moa-spss</artifactId>
      <packaging>pom</packaging>
 -    <version>1.5.2</version>
 +    <version>2.0.x</version>
      <name>MOA SP/SS Server</name>
      <modules>
 diff --git a/spss/server/readme.update.txt b/spss/server/readme.update.txt index 435de382c..21d7c56a0 100644 --- a/spss/server/readme.update.txt +++ b/spss/server/readme.update.txt @@ -1,12 +1,12 @@  ====================================================================== -  Update einer bestehenden MOA-SPSS-Installation auf Version 1.5.2 +  Update einer bestehenden MOA-SPSS-Installation auf Version 2.0.0  ====================================================================== -Es gibt zwei Möglichkeiten (im Folgenden als "Update Variante A" und  +Es gibt zwei Moeglichkeiten (im Folgenden als "Update Variante A" und   "Update Variante B" bezeichnet), das Update von MOA-SPSS auf Version -1.5.2 durchzuführen. Update Variante A geht dabei den Weg über eine  -vorangestellte Neuinstallation, während Variante B direkt eine   +2.0.0 durchzuf�hren. Update Variante A geht dabei den Weg ueber eine  +vorangestellte Neuinstallation, waehrend Variante B direkt eine    bestehende Installation aktualisiert.  Folgende Begriffe werden verwendet: @@ -16,7 +16,7 @@ JAVA_HOME bezeichnet das Wurzelverzeichnis der JDK-Installation  CATALINA_HOME bezeichnet das Wurzelverzeichnis der Tomcat-Installation  MOA_SPSS_INST bezeichnet das Verzeichnis, in das Sie die Datei -moa-spss-1.5.2.zip entpackt haben. +moa-spss-2.0.0.zip entpackt haben.  =================  Update Variante A  @@ -26,22 +26,22 @@ Update Variante A  	Ihrer MOA-SPSS-Installation.  2.)	Erstellen Sie eine Sicherungskopie aller "iaik*.jar"-Dateien im Verzeichnis -	JAVA_HOME\jre\lib\ext, und löschen Sie diese Dateien danach. +	JAVA_HOME\jre\lib\ext, und l�schen Sie diese Dateien danach. -3.)	Führen Sie eine Neuinstallation gemäß Handbuch durch. +3.)	F�hren Sie eine Neuinstallation gemaess Handbuch durch.  4.)	Kopieren Sie etwaige Konfigurationsdateien, Trust-Profile und Key-Stores,  -	die Sie aus Ihrer alten Installation beibehalten möchten, aus Ihrer +	die Sie aus Ihrer alten Installation beibehalten moechten, aus Ihrer  	Sicherungskopie in die entsprechenden Verzeichnisse der neuen  	Installation.  	Anmerkung: Falls Sie Ihre alten Trustprofile beibehalten wollen, gehen Sie wie unter  	Update Variante B, Punkt 9 beschrieben vor, um Ihre alten Trustprofile  	auf einen aktuellen Stand zu bringen. -5.)	Nur wenn alte Installation älter als Version 1.3.0:  +5.)	Nur wenn alte Installation aelter als Version 1.3.0:   	Falls Sie Ihre alte MOA-SP Konfigurationsdatei weiterverwenden wollen: -	Seit dem Wechsel auf Version 1.3.1 verwendet MOA SP ein neues Format für die  -	XML-Konfigurationsdatei. Sie müssen die Konfigurationsdatei für MOA-SP aus  +	Seit dem Wechsel auf Version 1.3.1 verwendet MOA SP ein neues Format fuer die  +	XML-Konfigurationsdatei. Sie muessen die Konfigurationsdatei fuer MOA-SP aus   	Ihrer alten Installation auf das neue Format konvertieren.  	Details dazufinden Sie im MOA-SPSS-Installationshandbuch. @@ -53,26 +53,26 @@ Update Variante B  1.)	Erstellen Sie eine Sicherungskopie des kompletten Tomcat-Verzeichnisses  	Ihrer MOA-SPSS-Installation. -2.)	Entpacken Sie die Datei "moa-spss-1.5.2.zip" in das Verzeichnis MOA_SPSS_INST. +2.)	Entpacken Sie die Datei "moa-spss-2.0.0.zip" in das Verzeichnis MOA_SPSS_INST.  3.)	Erstellen Sie eine Sicherungskopie aller "iaik*.jar"-Dateien im Verzeichnis -	JAVA_HOME\jre\lib\ext und löschen Sie diese Dateien danach. +	JAVA_HOME\jre\lib\ext und loeschen Sie diese Dateien danach.  4.)	Kopieren Sie alle Dateien aus dem Verzeichnis MOA_SPSS_INST\ext in das     	Verzeichnis	JAVA_HOME\jre\lib\ext (Achtung: Java 1.4.x wird nicht mehr  -  	unterstützt). +  	unterstuetzt).  5.)	Kopieren Sie die Dateien aus dem Verzeichnis MOA_SPSS_INST\endorsed -	in das Verzeichnis CATALINA_HOME\common\endorsed. Überschreiben Sie dabei +	in das Verzeichnis CATALINA_HOME\common\endorsed. Ueberschreiben Sie dabei  	etwaige gleichnamige Dateien. Die dort eventuell vorhandene Datei  -  	xmlParserAPIs.jar ist zu löschen. +  	xmlParserAPIs.jar ist zu loechen. -6.) Löschen Sie das Verzeichnis CATALINA_HOME\webapps\moa-spss. +6.) Loeschen Sie das Verzeichnis CATALINA_HOME\webapps\moa-spss.  7.) Ersetzen Sie die Datei CATALINA_HOME\webapps\moa-spss.war durch die Datei   	MOA_SPSS_INST\moa-spss.war. -8.)	Löschen Sie das Verzeichnis CATALINA_HOME\work. +8.) Loeschen Sie das Verzeichnis CATALINA_HOME\work.  9.)	Update der Trust-Profile.   	Wenn Sie Ihre alten Trust-Profile durch die neuen ersetzen wollen, dann gehen   @@ -81,25 +81,25 @@ Update Variante B  	a)	Gehen Sie wie folgt vor, um die Trust-Profile auszutauschen: -		1)	Löschen Sie das Verzeichnis CATALINA_HOME\conf\moa-spss\trustProfiles. +		1)  Loeschen Sie das Verzeichnis CATALINA_HOME\conf\moa-spss\trustProfiles.  		2)	Kopieren Sie das Verzeichnis MOA_SPSS_INST\conf\moa-spss\trustProfiles  			in das Verzeichnis CATALINA_HOME\conf\moa-spss.  	b)	Falls Sie Ihre alten Trust-Profile beibehalten wollen, gehen Sie wie folgt vor,  		um die Profile auf den aktuellen Stand zu bringen: -		1)	Löschen Sie die Datei "C=AT,O=Hauptverband oesterr. Sozialvers.,CN=CRL-Signer.der" +		1)  Loeschen Sie die Datei "C=AT,O=Hauptverband oesterr. Sozialvers.,CN=CRL-Signer.der"  			aus jedem Trustprofil, in dem sie enthalten ist. 		 -		2)	Löschen Sie die Datei "OCSP Responder 02-20051027-20101027.der" aus jedem  +		2)	Loeschen Sie die Datei "OCSP Responder 02-20051027-20101027.der" aus jedem   			Trustprofil, in dem sie enthalten ist. -		3)	Ergänzen Sie ihre Trustprofile durch alle Zertifikate aus den entsprechenden Profilen +		3)	Ergaenzen Sie ihre Trustprofile durch alle Zertifikate aus den entsprechenden Profilen  			im Verzeichnis MOA_SPSS_INST\conf\moa-spss\trustProfiles, die nicht in Ihren  			Profilen enthalten sind. Am einfachsten ist es, wenn Sie den Inhalt der einzelnen Profile  			aus der Distribution (MOA_SPSS_INST\conf\moa-spss\trustProfiles) in die entsprechenden  			Profile Ihrer Installation (CATALINA_HOME\conf\moa-spss\trustProfiles) kopieren und -			dabei die vorhandenen gleichnamigen Zertifikate überschreiben), also z.B: +			dabei die vorhandenen gleichnamigen Zertifikate �berschreiben), also z.B:  			Kopieren des Inhalts von   			MOA_SPSS_INST\conf\moa-spss\trustProfiles\certifiedSignature @@ -110,9 +110,9 @@ Update Variante B  10.)	Update des Cert-Stores.  		a)	Kopieren Sie den Inhalt des Verzeichnisses MOA_SPSS_INST\conf\moa-spss\certstore   			in das Verzeichnis CATALINA_HOME\conf\moa-spss\certstore. Wenn Sie gefragt werden, ob Sie  -			vorhandene Dateien oder Unterverzeichnisse überschreiben sollen, dann bejahen Sie das. +			vorhandene Dateien oder Unterverzeichnisse �berschreiben sollen, dann bejahen Sie das. -		b) 	Falls vorhanden, löschen Sie die Datei "890A4C8282E95EBB398685D9501486EF213941B5" aus dem   +		b) 	Falls vorhanden, loeschen Sie die Datei "890A4C8282E95EBB398685D9501486EF213941B5" aus dem    			Verzeichnis CATALINA_HOME\conf\moa-spss\certstore\10F17BDACD8DEAA1E8F23FBEAE7B3EC3D9773D1D.  		c) 	Falls die Datei "E7340D1FB627D8917A9C0D23F21515C441BF1214" noch nicht im Verzeichnis  @@ -122,12 +122,8 @@ Update Variante B  			in das Verzeichnis  			CATALINA_HOME\conf\moa-spss\certstore\10F17BDACD8DEAA1E8F23FBEAE7B3EC3D9773D1D. -11.)	Nur wenn alte Installation älter als Version 1.3.0:  -	Mit dem Wechsel auf Version 1.3.0 verwendet MOA SP ein neues Format für die  -	XML-Konfigurationsdatei. Sie müssen die Konfigurationsdatei für MOA-SP aus  +11.)	Nur wenn alte Installation aelter als Version 1.3.0:  +	Mit dem Wechsel auf Version 1.3.0 verwendet MOA SP ein neues Format f�r die  +	XML-Konfigurationsdatei. Sie muessen die Konfigurationsdatei fuer MOA-SP aus   	Ihrer alten Installation auf das neue Format konvertieren. Details dazu  -	finden Sie im MOA-SPSS-Installationshandbuch. -	 -	 - -	 +	finden Sie im MOA-SPSS-Installationshandbuch.
\ No newline at end of file diff --git a/spss/server/serverlib/pom.xml b/spss/server/serverlib/pom.xml index 21fe5fb40..1c756d4d4 100644 --- a/spss/server/serverlib/pom.xml +++ b/spss/server/serverlib/pom.xml @@ -2,13 +2,14 @@  	<parent>
  		<groupId>MOA.spss</groupId>
  		<artifactId>moa-spss</artifactId>
 -		<version>1.5.2</version>
 +		<version>2.0.x</version>
  	</parent>
  	<modelVersion>4.0.0</modelVersion>
  	<groupId>MOA.spss.server</groupId>
  	<artifactId>moa-spss-lib</artifactId>
  	<packaging>jar</packaging>
 +	<version>2.0.0</version>
  	<name>MOA SP/SS API</name>
  	<properties>
 @@ -134,11 +135,10 @@  			<artifactId>moa-common</artifactId>
  			<type>test-jar</type>
  			<scope>test</scope>
 -		</dependency> 
 +		</dependency>
  		<dependency>
  			<groupId>MOA.spss.server</groupId>
  			<artifactId>moa-spss-tools</artifactId>
 -			<version>1.5.2</version>
  			<scope>test</scope>
  		</dependency>
 diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/SPSSFactory.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/SPSSFactory.java index b5cc96a04..d41891167 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/SPSSFactory.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/SPSSFactory.java @@ -25,6 +25,7 @@  package at.gv.egovernment.moa.spss.api;  import java.io.InputStream; +import java.math.BigDecimal;  import java.math.BigInteger;  import java.security.cert.X509Certificate;  import java.util.Date; @@ -481,7 +482,9 @@ public abstract class SPSSFactory {     */    public abstract CMSDataObject createCMSDataObject(      MetaInfo metaInfo, -    CMSContent content); +    CMSContent content, +    BigDecimal excludeByteRangeFrom, +    BigDecimal excludeByteRangeTo);    /**     * Create a new <code>CMSContent</code> object from the data contained at the diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/cmsverify/CMSDataObject.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/cmsverify/CMSDataObject.java index 0c4b2ce6d..f9a684676 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/cmsverify/CMSDataObject.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/cmsverify/CMSDataObject.java @@ -24,6 +24,8 @@  package at.gv.egovernment.moa.spss.api.cmsverify; +import java.math.BigDecimal; +  import at.gv.egovernment.moa.spss.api.common.MetaInfo;  /** @@ -46,4 +48,10 @@ public interface CMSDataObject {     * @return The actual content.     */    public CMSContent getContent(); -} +   +   +  public BigDecimal getExcludeByteRangeFrom(); +   +  public BigDecimal getExcludeByteRangeTo(); +   +  } diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/impl/CMSDataObjectImpl.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/impl/CMSDataObjectImpl.java index 0e89885c8..20a9b5654 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/impl/CMSDataObjectImpl.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/impl/CMSDataObjectImpl.java @@ -24,6 +24,8 @@  package at.gv.egovernment.moa.spss.api.impl; +import java.math.BigDecimal; +  import at.gv.egovernment.moa.spss.api.cmsverify.CMSContent;  import at.gv.egovernment.moa.spss.api.cmsverify.CMSDataObject;  import at.gv.egovernment.moa.spss.api.common.MetaInfo; @@ -40,6 +42,9 @@ public class CMSDataObjectImpl implements CMSDataObject {    private MetaInfo metaInfo;    /** The <code>CMSContent</code> contained in this data object. */    private CMSContent cmsContent; +   +  private BigDecimal excludeByteRangeFrom; +  private BigDecimal excludeByteRangeTo;    /**     * Sets the meta information associated with the CMS data object. @@ -67,4 +72,20 @@ public class CMSDataObjectImpl implements CMSDataObject {      return cmsContent;    } +  public void setExcludeByteRangeFrom(BigDecimal excludeByteRangeFrom) { +  	this.excludeByteRangeFrom = excludeByteRangeFrom; +  } +   +  public BigDecimal getExcludeByteRangeFrom() { +	  return excludeByteRangeFrom; +  } +   +  public void setExcludeByteRangeTo(BigDecimal excludeByteRangeTo) { +	  this.excludeByteRangeTo = excludeByteRangeTo; +  } +   +  public BigDecimal getExcludeByteRangeTo() { +	  return excludeByteRangeTo; +  }	 +    } diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/impl/SPSSFactoryImpl.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/impl/SPSSFactoryImpl.java index 8e3bb7636..ac3d4c940 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/impl/SPSSFactoryImpl.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/impl/SPSSFactoryImpl.java @@ -25,7 +25,7 @@  package at.gv.egovernment.moa.spss.api.impl;  import java.io.InputStream; - +import java.math.BigDecimal;  import java.math.BigInteger;  import java.security.cert.X509Certificate;  import java.util.Date; @@ -273,11 +273,15 @@ public class SPSSFactoryImpl extends SPSSFactory {    public CMSDataObject createCMSDataObject(      MetaInfo metaInfo, -    CMSContent content) { +    CMSContent content, +    BigDecimal excludeByteRangeFrom, +    BigDecimal excludeByteRangeTo) {      CMSDataObjectImpl cmsDataObject = new CMSDataObjectImpl();      cmsDataObject.setMetaInfo(metaInfo);      cmsDataObject.setContent(content); +    cmsDataObject.setExcludeByteRangeFrom(excludeByteRangeFrom); +    cmsDataObject.setExcludeByteRangeTo(excludeByteRangeTo);      return cmsDataObject;    } diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/xmlbind/CreateCMSSignatureRequestParser.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/xmlbind/CreateCMSSignatureRequestParser.java index 737915ecd..a8cae9c4e 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/xmlbind/CreateCMSSignatureRequestParser.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/xmlbind/CreateCMSSignatureRequestParser.java @@ -25,6 +25,7 @@  package at.gv.egovernment.moa.spss.api.xmlbind;  import java.io.InputStream; +import java.math.BigDecimal;  import java.util.ArrayList;  import java.util.List; @@ -38,7 +39,6 @@ import at.gv.egovernment.moa.spss.api.cmssign.DataObjectInfo;  import at.gv.egovernment.moa.spss.api.cmssign.SingleSignatureInfo;  import at.gv.egovernment.moa.spss.api.cmsverify.CMSContent;  import at.gv.egovernment.moa.spss.api.cmsverify.CMSDataObject; -import at.gv.egovernment.moa.spss.api.common.Content;  import at.gv.egovernment.moa.spss.api.common.MetaInfo;  import at.gv.egovernment.moa.util.Base64Utils;  import at.gv.egovernment.moa.util.BoolUtils; @@ -71,6 +71,9 @@ public class CreateCMSSignatureRequestParser {    private static final String META_INFO_XPATH = MOA + "MetaInfo";    private static final String CONTENT_XPATH = MOA + "Content";    private static final String BASE64_CONTENT_XPATH = MOA + "Base64Content"; +  private static final String EXCLUDEBYTERANGE_FROM_XPATH = MOA + "ExcludedByteRange/" + MOA + "From"; +  private static final String EXCLUDEBYTERANGE_TO_XPATH = MOA + "ExcludedByteRange/" + MOA + "To"; +      /** The factory to create API objects. */ @@ -212,7 +215,18 @@ public class CreateCMSSignatureRequestParser {          metaInfo = RequestParserUtils.parseMetaInfo(metaInfoElem);        } -      return factory.createCMSDataObject(metaInfo, content); +      String excludeByteRangeFromStr = XPathUtils.getElementValue(dataObjectElem, EXCLUDEBYTERANGE_FROM_XPATH, null); +      String excludeByteRangeToStr = XPathUtils.getElementValue(dataObjectElem, EXCLUDEBYTERANGE_TO_XPATH, null); +       +      BigDecimal excludeByteRangeFrom = null; +      BigDecimal excludeByteRangeTo = null; +       +      if (excludeByteRangeFromStr != null) +    	  excludeByteRangeFrom = new BigDecimal(excludeByteRangeFromStr); +      if (excludeByteRangeToStr != null) +    	  excludeByteRangeTo = new BigDecimal(excludeByteRangeToStr); +       +      return factory.createCMSDataObject(metaInfo, content, excludeByteRangeFrom, excludeByteRangeTo);      }       else {        return null; diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/xmlbind/VerifyCMSSignatureRequestParser.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/xmlbind/VerifyCMSSignatureRequestParser.java index d50a17ffc..6209d8ef9 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/xmlbind/VerifyCMSSignatureRequestParser.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/api/xmlbind/VerifyCMSSignatureRequestParser.java @@ -25,6 +25,7 @@  package at.gv.egovernment.moa.spss.api.xmlbind;  import java.io.InputStream; +import java.math.BigDecimal;  import java.util.ArrayList;  import java.util.Date;  import java.util.List; @@ -65,6 +66,9 @@ public class VerifyCMSSignatureRequestParser {    private static final String META_INFO_XPATH = MOA + "MetaInfo";    private static final String CONTENT_XPATH = MOA + "Content";    private static final String BASE64_CONTENT_XPATH = MOA + "Base64Content"; +  private static final String EXCLUDEBYTERANGE_FROM_XPATH = MOA + "ExcludedByteRange/" + MOA + "From"; +  private static final String EXCLUDEBYTERANGE_TO_XPATH = MOA + "ExcludedByteRange/" + MOA + "To"; +    /** The <code>SPSSFactory</code> for creating new API objects. */    private SPSSFactory factory = SPSSFactory.getInstance(); @@ -161,7 +165,20 @@ public class VerifyCMSSignatureRequestParser {          metaInfo = RequestParserUtils.parseMetaInfo(metaInfoElem);        } -      return factory.createCMSDataObject(metaInfo, content); +      String excludeByteRangeFromStr = XPathUtils.getElementValue(dataObjectElem, EXCLUDEBYTERANGE_FROM_XPATH, null); +      String excludeByteRangeToStr = XPathUtils.getElementValue(dataObjectElem, EXCLUDEBYTERANGE_TO_XPATH, null); +       +      BigDecimal excludeByteRangeFrom = null; +      BigDecimal excludeByteRangeTo = null; +       +      if (excludeByteRangeFromStr != null) +    	  excludeByteRangeFrom = new BigDecimal(excludeByteRangeFromStr); +      if (excludeByteRangeToStr != null) +    	  excludeByteRangeTo = new BigDecimal(excludeByteRangeToStr); +       +      return factory.createCMSDataObject(metaInfo, content, excludeByteRangeFrom, excludeByteRangeTo); +       +            } else {        return null;      } diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureCreationInvoker.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureCreationInvoker.java index e058c8a4b..718673a93 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureCreationInvoker.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureCreationInvoker.java @@ -38,6 +38,7 @@ import java.io.ByteArrayOutputStream;  import java.io.IOException;  import java.io.InputStream;  import java.io.OutputStream; +import java.math.BigDecimal;  import java.math.BigInteger;  import java.security.Principal;  import java.security.cert.X509Certificate; @@ -51,8 +52,6 @@ import java.util.Set;  import at.gv.egovernment.moa.logging.LogMsg;  import at.gv.egovernment.moa.logging.Logger; -import at.gv.egovernment.moa.logging.LoggingContext; -import at.gv.egovernment.moa.logging.LoggingContextManager;  import at.gv.egovernment.moa.spss.MOAApplicationException;  import at.gv.egovernment.moa.spss.MOAException;  import at.gv.egovernment.moa.spss.MOASystemException; @@ -238,12 +237,32 @@ public class CMSSignatureCreationInvoker {  			  OutputStream  signedDataStream = signature.getSignature(out, base64);  			  // now write the data to be signed to the signedDataStream -			  byte[] buf = new byte[4096]; -			  int bytesRead; -			  while ((bytesRead = contentIs.read(buf)) >= 0) { -				  signedDataStream.write(buf, 0, bytesRead); -			  }  -					  +			   +			  int byteRead; +			  BigDecimal counter = new BigDecimal("0"); +			  BigDecimal one = new BigDecimal("1"); +			   +			  while ((byteRead=contentIs.read()) >= 0) { +				  //System.out.println("counterXX: " + counter); +				   +				  if (inRange(counter, dataobject)) { +					  //System.out.println("Lösche..."); +					  // set byte to 0x00 +					  signedDataStream.write(0); +				  } +				  else +					  signedDataStream.write(byteRead); +				   +				  counter = counter.add(one);				   +			  } +			   +			   +//			  byte[] buf = new byte[4096]; +//			  int bytesRead; +//			  while ((bytesRead = contentIs.read(buf)) >= 0) { +//				  signedDataStream.write(buf, 0, bytesRead); +//			  }  +//					   			  // finish SignedData processing by closing signedDataStream  			  signedDataStream.close();  			  String base64value = out.toString(); @@ -269,6 +288,28 @@ public class CMSSignatureCreationInvoker {      return responseBuilder.getResponse();    } +   +  private boolean inRange(BigDecimal counter, CMSDataObject dataobject) { +	  BigDecimal from = dataobject.getExcludeByteRangeFrom(); +	  BigDecimal to = dataobject.getExcludeByteRangeTo(); +	   +	  if ( (from == null) || (to == null)) +		  return false; +	   +	  int compare = counter.compareTo(from); +	  if (compare == -1) +		  return false; +	  else { +		  compare = counter.compareTo(to); +		  if (compare == 1) +			  return false; +		  else +			  return true; +	  } +				   +	   +	   +  }    private String getDigestAlgorithm(ConfigurationProvider config, String keyGroupID) throws MOASystemException { diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java index 7a4103957..0e5faf790 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java @@ -31,17 +31,16 @@ import iaik.server.modules.cmsverify.CMSSignatureVerificationModuleFactory;  import iaik.server.modules.cmsverify.CMSSignatureVerificationProfile;  import iaik.server.modules.cmsverify.CMSSignatureVerificationResult;  import iaik.x509.X509Certificate; -import iaik.xml.crypto.tsl.ex.TSLEngineDiedException; -import iaik.xml.crypto.tsl.ex.TSLSearchException; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream;  import java.io.IOException;  import java.io.InputStream; +import java.math.BigDecimal;  import java.util.Date;  import java.util.Iterator;  import java.util.List; -import at.gv.egovernment.moa.logging.LogMsg; -import at.gv.egovernment.moa.logging.Logger;  import at.gv.egovernment.moa.logging.LoggingContext;  import at.gv.egovernment.moa.logging.LoggingContextManager;  import at.gv.egovernment.moa.spss.MOAApplicationException; @@ -57,9 +56,7 @@ import at.gv.egovernment.moa.spss.server.logging.IaikLog;  import at.gv.egovernment.moa.spss.server.logging.TransactionId;  import at.gv.egovernment.moa.spss.server.transaction.TransactionContext;  import at.gv.egovernment.moa.spss.server.transaction.TransactionContextManager; -import at.gv.egovernment.moa.spss.tsl.timer.TSLUpdaterTimerTask;  import at.gv.egovernment.moa.spss.util.CertificateUtils; -import at.gv.egovernment.moa.spss.util.MessageProvider;  import at.gv.egovernment.moa.spss.util.QCSSCDResult;  /** @@ -273,6 +270,7 @@ public class CMSSignatureVerificationInvoker {    private InputStream getSignedContent(VerifyCMSSignatureRequest request)      throws MOAApplicationException { +	  InputStream is = null;      CMSDataObject dataObj;      CMSContent content; @@ -282,23 +280,86 @@ public class CMSSignatureVerificationInvoker {        return null;      }      content = dataObj.getContent(); - +          // build the content data      switch (content.getContentType()) {        case CMSContent.EXPLICIT_CONTENT : -        return ((CMSContentExcplicit) content).getBinaryContent(); +        is = ((CMSContentExcplicit) content).getBinaryContent(); +        is = excludeByteRange(is, request); +        return is;        case CMSContent.REFERENCE_CONTENT :          String reference = ((CMSContentReference) content).getReference();          if (!"".equals(reference)) {            ExternalURIResolver resolver = new ExternalURIResolver(); -          return resolver.resolve(reference); +          is = resolver.resolve(reference); +          is = excludeByteRange(is, request); +          return is;                    } else {            return null;          }        default :          return null;      } +     + +  } +   +  private InputStream excludeByteRange(InputStream contentIs, VerifyCMSSignatureRequest request) throws MOAApplicationException { +	   +	  int byteRead; +	   +	  ByteArrayOutputStream contentOs = new ByteArrayOutputStream(); +	   +	   +	  BigDecimal counter = new BigDecimal("0"); +	  BigDecimal one = new BigDecimal("1"); +	   +	  try { +		while ((byteRead=contentIs.read()) >= 0) { +			 +			if (inRange(counter, request.getDataObject())) { +				  // if byte is in byte range, set byte to 0x00 +				  contentOs.write(0); +			  } +			  else +				  contentOs.write(byteRead); +			   +			  counter = counter.add(one);				   +		} +		 +		InputStream is = new ByteArrayInputStream(contentOs.toByteArray()); +		 +		return is; +		 +		 +	} catch (IOException e) { +		  throw new MOAApplicationException("2301", null, e);			   +	} +	   +  } +   +  +  private boolean inRange(BigDecimal counter, CMSDataObject dataobject) { +	  BigDecimal from = dataobject.getExcludeByteRangeFrom(); +	  BigDecimal to = dataobject.getExcludeByteRangeTo(); +	   +	  if ( (from == null) || (to == null)) +		  return false; +	   +	  int compare = counter.compareTo(from); +	  if (compare == -1) +		  return false; +	  else { +		  compare = counter.compareTo(to); +		  if (compare == 1) +			  return false; +		  else +			  return true; +	  } +				   +	   +	      }  } diff --git a/spss/server/serverlib/src/main/resources/resources/wsdl/MOA-SPSS-1.5.2.wsdl b/spss/server/serverlib/src/main/resources/resources/wsdl/MOA-SPSS-2.0.0.wsdl index be40c110d..f9b942a51 100644 --- a/spss/server/serverlib/src/main/resources/resources/wsdl/MOA-SPSS-1.5.2.wsdl +++ b/spss/server/serverlib/src/main/resources/resources/wsdl/MOA-SPSS-2.0.0.wsdl @@ -3,7 +3,7 @@    Web Service Description for MOA SP/SS 1.4
  -->
  <definitions 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" name="MOA" targetNamespace="http://reference.e-government.gv.at/namespace/moa/20020822#">
 -	<import namespace="http://reference.e-government.gv.at/namespace/moa/20020822#" location="../resources/schemas/MOA-SPSS-1.5.2.xsd"/>
 +	<import namespace="http://reference.e-government.gv.at/namespace/moa/20020822#" location="../resources/schemas/MOA-SPSS-2.0.0.xsd"/>
  	<message name="CreateCMSSignatureInput">
  		<part name="body" element="moa:CreateCMSSignatureRequest"/>
  	</message>
 diff --git a/spss/server/serverlib/src/main/resources/resources/wsdl/MOA-SPSS-1.5.2.xsd b/spss/server/serverlib/src/main/resources/resources/wsdl/MOA-SPSS-2.0.0.xsd index 4ae327ab3..4ae327ab3 100644 --- a/spss/server/serverlib/src/main/resources/resources/wsdl/MOA-SPSS-1.5.2.xsd +++ b/spss/server/serverlib/src/main/resources/resources/wsdl/MOA-SPSS-2.0.0.xsd diff --git a/spss/server/serverws/.classpath b/spss/server/serverws/.classpath deleted file mode 100644 index 070ce9946..000000000 --- a/spss/server/serverws/.classpath +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?>
 -<classpath>
 -  <classpathentry kind="output" path="target/classes"/>
 -  <classpathentry kind="var" path="M2_REPO/javax/activation/activation/1.1/activation-1.1.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/javax/mail/mail/1.4/mail-1.4.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/javax/xml/bind/jaxb-api/2.2.6/jaxb-api-2.2.6.jar"/>
 -  <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
 -  <classpathentry kind="src" path="/moa-spss-lib"/>
 -  <classpathentry kind="var" path="M2_REPO/axis/axis/1.0_IAIK/axis-1.0_IAIK.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/org/apache/axis/axis-jaxrpc/1.4/axis-jaxrpc-1.4.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/org/apache/axis/axis-saaj/1.4/axis-saaj-1.4.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/axis/axis-wsdl4j/1.5.1/axis-wsdl4j-1.5.1.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/commons-discovery/commons-discovery/0.2/commons-discovery-0.2.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/postgresql/postgresql/7.2/postgresql-7.2.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/xalan-bin-dist/xalan/2.7.1/xalan-2.7.1.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/xalan/serializer/2.7.1/serializer-2.7.1.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/xml-apis/xml-apis/1.3.04/xml-apis-1.3.04.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/xerces/xercesImpl/2.9.0/xercesImpl-2.9.0.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/xalan-bin-dist/xml-apis/2.7.1/xml-apis-2.7.1.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/xalan-bin-dist/serializer/2.7.1/serializer-2.7.1.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_moa/1.5/iaik_moa-1.5.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_ixsil/1.2.2.5/iaik_ixsil-1.2.2.5.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_jce_full/5.101/iaik_jce_full-5.101.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_ecc/2.19/iaik_ecc-2.19.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_cms/4.1_MOA/iaik_cms-4.1_MOA.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_Pkcs11Provider/1.2.4/iaik_Pkcs11Provider-1.2.4.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_Pkcs11Wrapper/1.2.17/iaik_Pkcs11Wrapper-1.2.17.jar"/>
 -  <classpathentry kind="src" path="/moa-common"/>
 -  <classpathentry kind="var" path="M2_REPO/jaxen/jaxen/1.0-FCS/jaxen-1.0-FCS.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/saxpath/saxpath/1.0-FCS/saxpath-1.0-FCS.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/joda-time/joda-time/1.6.2/joda-time-1.6.2.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_tsl/0.0.2-SNAPSHOT/iaik_tsl-0.0.2-SNAPSHOT.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_util/0.23/iaik_util-0.23.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_xsect/1.1709142/iaik_xsect-1.1709142.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/com/sun/xml/bind/jaxb-impl/2.2.5/jaxb-impl-2.2.5.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/org/xerial/sqlite-jdbc/3.7.8-SNAPSHOT/sqlite-jdbc-3.7.8-SNAPSHOT.jar"/>
 -  <classpathentry kind="var" path="M2_REPO/iaik/prod/iaik_jsse/4.4/iaik_jsse-4.4.jar"/>
 -</classpath>
\ No newline at end of file diff --git a/spss/server/serverws/.project b/spss/server/serverws/.project index 2c2ea723a..7b8e89662 100644 --- a/spss/server/serverws/.project +++ b/spss/server/serverws/.project @@ -1,35 +1,38 @@  <?xml version="1.0" encoding="UTF-8"?>
  <projectDescription>
 -  <name>moa-spss-ws</name>
 -  <comment>NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
 -  <projects>
 -    <project>moa-spss-lib</project>
 -    <project>moa-common</project>
 -  </projects>
 -  <buildSpec>
 -    <buildCommand>
 -      <name>org.eclipse.jdt.core.javabuilder</name>
 -    </buildCommand>
 -    <buildCommand>
 -      <name>org.eclipse.wst.common.project.facet.core.builder</name>
 -    </buildCommand>
 -    <buildCommand>
 -      <name>org.eclipse.wst.validation.validationbuilder</name>
 -    </buildCommand>
 -    <buildCommand>
 -      <name>org.maven.ide.eclipse.maven2Builder</name>
 -    </buildCommand>
 -    <buildCommand>
 -      <name>org.eclipse.m2e.core.maven2Builder</name>
 -    </buildCommand>
 -  </buildSpec>
 -  <natures>
 -    <nature>org.eclipse.m2e.core.maven2Nature</nature>
 -    <nature>org.eclipse.jdt.core.javanature</nature>
 -    <nature>org.maven.ide.eclipse.maven2Nature</nature>
 -    <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
 -    <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
 -    <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
 -    <nature>org.eclipse.wst.jsdt.core.jsNature</nature>
 -  </natures>
 -</projectDescription>
\ No newline at end of file +	<name>moa-spss-ws</name>
 +	<comment>NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
 +	<projects>
 +		<project>moa-spss-lib</project>
 +		<project>moa-common</project>
 +	</projects>
 +	<buildSpec>
 +		<buildCommand>
 +			<name>org.eclipse.jdt.core.javabuilder</name>
 +			<arguments>
 +			</arguments>
 +		</buildCommand>
 +		<buildCommand>
 +			<name>org.eclipse.wst.common.project.facet.core.builder</name>
 +			<arguments>
 +			</arguments>
 +		</buildCommand>
 +		<buildCommand>
 +			<name>org.eclipse.wst.validation.validationbuilder</name>
 +			<arguments>
 +			</arguments>
 +		</buildCommand>
 +		<buildCommand>
 +			<name>org.eclipse.m2e.core.maven2Builder</name>
 +			<arguments>
 +			</arguments>
 +		</buildCommand>
 +	</buildSpec>
 +	<natures>
 +		<nature>org.eclipse.m2e.core.maven2Nature</nature>
 +		<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
 +		<nature>org.eclipse.jdt.core.javanature</nature>
 +		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
 +		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
 +	</natures>
 +</projectDescription>
 diff --git a/spss/server/serverws/pom.xml b/spss/server/serverws/pom.xml index 368d64bd1..b8a04eba4 100644 --- a/spss/server/serverws/pom.xml +++ b/spss/server/serverws/pom.xml @@ -3,13 +3,14 @@      <parent>          <groupId>MOA.spss</groupId>          <artifactId>moa-spss</artifactId> -        <version>1.5.2</version> +        <version>2.0.x</version>      </parent>      <modelVersion>4.0.0</modelVersion>      <groupId>MOA.spss.server</groupId>      <artifactId>moa-spss-ws</artifactId>      <packaging>war</packaging> +    <version>2.0.0</version>      <name>MOA SP/SS WebService</name>      <properties> @@ -58,6 +59,7 @@          <dependency>              <groupId>MOA.spss.server</groupId>              <artifactId>moa-spss-lib</artifactId> +            <!--version>${pom.version}</version-->          </dependency>          <dependency>              <groupId>MOA</groupId> diff --git a/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.wsdl b/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.wsdl index 135f26f68..4f9deee38 100644 --- a/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.wsdl +++ b/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.wsdl @@ -3,7 +3,7 @@    Web Service Description for MOA SP/SS 1.4  -->  <definitions 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" name="MOA" targetNamespace="http://reference.e-government.gv.at/namespace/moa/20020822#"> -	<import namespace="http://reference.e-government.gv.at/namespace/moa/20020822#" location="../resources/schemas/MOA-SPSS-1.5.2.xsd"/> +	<import namespace="http://reference.e-government.gv.at/namespace/moa/20020822#" location="../resources/schemas/MOA-SPSS-2.0.0.xsd"/>  	<message name="CreateCMSSignatureInput">  		<part name="body" element="moa:CreateCMSSignatureRequest"/>  	</message> diff --git a/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.xsd b/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.xsd index 144918778..cc0a7c882 100644 --- a/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.xsd +++ b/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.xsd @@ -1,6 +1,6 @@  <?xml version="1.0" encoding="UTF-8"?>  <!-- -  MOA SP/SS 1.5.2 Schema +  MOA SP/SS 2.0.0 Schema  -->  <xsd:schema 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#" targetNamespace="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"/> diff --git a/spss/server/serverws/src/main/webapp/WEB-INF/server-config.wsdd b/spss/server/serverws/src/main/webapp/WEB-INF/server-config.wsdd index 86d37c8bc..9ff243e5c 100644 --- a/spss/server/serverws/src/main/webapp/WEB-INF/server-config.wsdd +++ b/spss/server/serverws/src/main/webapp/WEB-INF/server-config.wsdd @@ -1,6 +1,6 @@  <?xml version="1.0" encoding="UTF-8"?>
  <!--
 -  Axis Deployment Descriptor for MOA SP/SS 1.5
 +  Axis Deployment Descriptor for MOA SP/SS 2
  -->
  <deployment name="defaultClientConfig"
              xmlns="http://xml.apache.org/axis/wsdd/"
 @@ -16,7 +16,7 @@      <namespace>http://reference.e-government.gv.at/namespace/moa/20020822#</namespace>
      <parameter name="allowedMethods" value="CreateCMSSignatureRequest CreateXMLSignatureRequest"/>
      <parameter name="className" value="at.gv.egovernment.moa.spss.server.service.SignatureCreationService"/>
 -    <wsdlFile>webapps/moa-spss/resources/schemas/MOA-SPSS-1.5.2.wsdl</wsdlFile>
 +    <wsdlFile>webapps/moa-spss/resources/schemas/MOA-SPSS-2.0.0.wsdl</wsdlFile>
      <requestFlow>
        <handler type="MOAHandler"/>
 @@ -30,7 +30,7 @@      <namespace>http://reference.e-government.gv.at/namespace/moa/20020822#</namespace>
      <parameter name="allowedMethods" value="VerifyCMSSignatureRequest VerifyXMLSignatureRequest"/>
      <parameter name="className" value="at.gv.egovernment.moa.spss.server.service.SignatureVerificationService"/>
 -        <wsdlFile>webapps/moa-spss/resources/schemas/MOA-SPSS-1.5.2.wsdl</wsdlFile>
 +        <wsdlFile>webapps/moa-spss/resources/schemas/MOA-SPSS-2.0.0.wsdl</wsdlFile>
      <requestFlow>
        <handler type="MOAHandler"/>
      </requestFlow>
 diff --git a/spss/server/tools/pom.xml b/spss/server/tools/pom.xml index 1d20a7b8a..48e0a998c 100644 --- a/spss/server/tools/pom.xml +++ b/spss/server/tools/pom.xml @@ -2,13 +2,14 @@    <parent>      <groupId>MOA.spss</groupId>      <artifactId>moa-spss</artifactId> -    <version>1.5.2</version> +    <version>2.0.x</version>    </parent>    <modelVersion>4.0.0</modelVersion>    <groupId>MOA.spss.server</groupId>    <artifactId>moa-spss-tools</artifactId>    <packaging>jar</packaging> +  <version>2.0.0</version>    <name>MOA SP/SS Tools</name>    <properties> @@ -42,8 +43,7 @@      <dependency>        <groupId>log4j</groupId>        <artifactId>log4j</artifactId> -        <version>1.2.17</version> -        <scope>compile</scope> +      <scope>compile</scope>      </dependency>      <dependency>        <groupId>xalan-bin-dist</groupId> | 
