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> |