aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpdanner <pdanner@d688527b-c9ab-4aba-bd8d-4036d912da1d>2007-12-06 16:47:48 +0000
committerpdanner <pdanner@d688527b-c9ab-4aba-bd8d-4036d912da1d>2007-12-06 16:47:48 +0000
commit029b777dfc1bf108ffd8d20b7cbec9988ad4c73a (patch)
tree0dfd52406f0a0345852dd91ed59c09610dfd1d98
parent4d92d1f3c7a94df1078583b728fbba20c42fdef6 (diff)
downloadmoa-id-spss-029b777dfc1bf108ffd8d20b7cbec9988ad4c73a.tar.gz
moa-id-spss-029b777dfc1bf108ffd8d20b7cbec9988ad4c73a.tar.bz2
moa-id-spss-029b777dfc1bf108ffd8d20b7cbec9988ad4c73a.zip
Added SessionCleaner which removes sessions began and not picked up SAML-assertions
git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@1052 d688527b-c9ab-4aba-bd8d-4036d912da1d
-rw-r--r--id/history.txt18
-rw-r--r--id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/AuthenticationServer.java11
-rw-r--r--id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/MOAIDAuthInitializer.java2
-rw-r--r--id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties4
4 files changed, 25 insertions, 10 deletions
diff --git a/id/history.txt b/id/history.txt
index 1ac895bb9..4c90bfdff 100644
--- a/id/history.txt
+++ b/id/history.txt
@@ -3,6 +3,20 @@ von MOA-ID auf.
History MOA-ID:
=====
+Version MOA-ID 1.4.3: Änderungen seit Version MOA-ID 1.4.2:
+
+Fixes:
+- Nicht abgeholte Authentisierungsdaten werden jetzt in periodischen Zeitab-
+ ständen von einem Session Cleaner vom Speicher genommen. Damit wird
+ verhindert, dass der Heap durch unabgeholte Authentisierungsdaten bzw.
+ abgebrochene Anmeldesessions überläuft.
+
+- Der auskommentierte Konfigurationsschalter <CompatibilityMode> in den
+ Beispielkonfigurationen war an der falschen Position angeführt, jetzt unter
+ ApplicationSpecificParameters (zuvor ParepSpecificParameters)
+
+
+=====
Version MOA-ID 1.4.2: Änderungen seit Version MOA-ID 1.4.2 beta2:
- Das Tag <BKU> in Templates wird jetzt gemäß dem aufrufenden Protokollschema
@@ -25,8 +39,8 @@ Verbesserungen/Erweiterungen:
Modus Applikationen Vollmachten benutzen ohne modifiziert werden zu müssen
- Integration berufliche Parteienvertretung gemäß §5 Abs.3 E-GovG. Vertretung
- durch berufliche Parteienvertreter kann durch Einsatz eines Infobox Validators
- (Validatorklasse ParepValidator) durchgeführt werden.
+ durch berufliche Parteienvertreter kann durch Einsatz eines Infobox
+ Validators (Validatorklasse ParepValidator) durchgeführt werden.
- Neue A-Trust Testzertifikate für Tespersonenbindungen in die Testprofile
aufgenommen.
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/AuthenticationServer.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/AuthenticationServer.java
index caeff905b..3457051c4 100644
--- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/AuthenticationServer.java
+++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/AuthenticationServer.java
@@ -1044,7 +1044,7 @@ public class AuthenticationServer implements MOAIDAuthConstants {
} else {
authData.setBPK(identityLink.getIdentificationValue());
if (identityLink.getIdentificationType().equals(Constants.URN_PREFIX_BASEID)) {
- // only compute bPK if online applcation is a public service and we have the Stammzahl
+ // only compute bPK if online application is a public service and we have the Stammzahl
String bpkBase64 = new BPKBuilder().buildBPK(
identityLink.getIdentificationValue(),
session.getTarget());
@@ -1202,15 +1202,14 @@ public class AuthenticationServer implements MOAIDAuthConstants {
synchronized (authenticationDataStore) {
Set keys = new HashSet(authenticationDataStore.keySet());
for (Iterator iter = keys.iterator(); iter.hasNext();) {
- String samlArtifact = (String) iter.next();
- AuthenticationData authData =
- (AuthenticationData) authenticationDataStore.get(samlArtifact);
+ String samlAssertionHandle = (String) iter.next();
+ AuthenticationData authData = (AuthenticationData) authenticationDataStore.get(samlAssertionHandle);
if (now - authData.getTimestamp().getTime() > authDataTimeOut) {
Logger.info(
MOAIDMessageProvider.getInstance().getMessage(
"cleaner.03",
- new Object[] { samlArtifact }));
- authenticationDataStore.remove(samlArtifact);
+ new Object[] { authData.getAssertionID() }));
+ authenticationDataStore.remove(samlAssertionHandle);
}
}
}
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/MOAIDAuthInitializer.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/MOAIDAuthInitializer.java
index 7964e2fb6..dadfc16d6 100644
--- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/MOAIDAuthInitializer.java
+++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/MOAIDAuthInitializer.java
@@ -158,6 +158,8 @@ public class MOAIDAuthInitializer {
.setSecondsAuthDataTimeOut(authDataTimeOut);
}
+ // Starts the session cleaner thread to remove unpicked authentication data
+ AuthenticationSessionCleaner.start();
}
} \ No newline at end of file
diff --git a/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties b/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties
index 825434b91..552619e45 100644
--- a/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties
+++ b/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties
@@ -73,8 +73,8 @@ service.03=Fehler beim Aufruf des SPSS-API: {0}
cleaner.00=AuthenticationSessionCleaner wurde gestartet
cleaner.01=Fehler im AuthenticationSessionCleaner
-cleaner.02=MOASession {0} ist abgelaufen
-cleaner.03=Anmeldedaten zu SAML-Artifakt {0} sind abgelaufen
+cleaner.02=Abgelaufene MOASession {0} wurde aus dem Speicher entfernt
+cleaner.03=Abgelaufene Anmeldedaten zur SAML-Assertion ID {0} wurden aus dem Speicher entfernt
proxy.00=MOA ID Proxy wurde erfolgreich gestartet
proxy.01=Unbekannter URL {0}, erwarteter URL auf {1}