aboutsummaryrefslogtreecommitdiff
path: root/id/ConfigWebTool
diff options
context:
space:
mode:
Diffstat (limited to 'id/ConfigWebTool')
-rw-r--r--id/ConfigWebTool/pom.xml20
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralMOAIDConfig.java2
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java17
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAGeneralConfig.java30
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/StringHelper.java12
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java40
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java23
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/ImportExportAction.java20
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java43
-rw-r--r--id/ConfigWebTool/src/main/resources/applicationResources.properties2
10 files changed, 155 insertions, 54 deletions
diff --git a/id/ConfigWebTool/pom.xml b/id/ConfigWebTool/pom.xml
index 287b0b096..630f6fa90 100644
--- a/id/ConfigWebTool/pom.xml
+++ b/id/ConfigWebTool/pom.xml
@@ -2,13 +2,13 @@
<parent>
<groupId>MOA</groupId>
<artifactId>id</artifactId>
- <version>2.0-RC1</version>
+ <version>2.0-RC2</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>MOA.id</groupId>
<artifactId>moa-id-configuration</artifactId>
- <version>1.0-RC1</version>
+ <version>1.0-RC3</version>
<packaging>war</packaging>
<name>MOA-ID 2.0 Configuration Tool</name>
<description>Web based Configuration Tool for MOA-ID 2.x</description>
@@ -45,7 +45,7 @@
<dependency>
<groupId>MOA.id.server</groupId>
<artifactId>moa-id-commons</artifactId>
- <version>2.0-RC1</version>
+ <version>2.0-RC2</version>
</dependency>
<dependency>
<groupId>MOA.id.server</groupId>
@@ -68,9 +68,17 @@
<groupId>com.sun</groupId>
<artifactId>*</artifactId>
</exclusion>
- </exclusions>
-
- </dependency>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <version>1.7.5</version>
+ </dependency>
<dependency>
<groupId>org.opensaml</groupId>
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralMOAIDConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralMOAIDConfig.java
index d6ede8fbf..773dd8e7c 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralMOAIDConfig.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralMOAIDConfig.java
@@ -55,6 +55,7 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.TransformsInfoType;
import at.gv.egovernment.moa.id.commons.db.dao.config.TrustAnchor;
import at.gv.egovernment.moa.id.commons.db.dao.config.VerifyAuthBlock;
import at.gv.egovernment.moa.id.commons.db.dao.config.VerifyIdentityLink;
+import at.gv.egovernment.moa.id.config.legacy.ConfigurationBuilder;
import at.gv.egovernment.moa.id.configuration.Constants;
import at.gv.egovernment.moa.id.configuration.data.pvp2.ContactForm;
import at.gv.egovernment.moa.util.MiscUtil;
@@ -305,6 +306,7 @@ public class GeneralMOAIDConfig {
if (modes != null) {
ChainingModeType defaultmode = modes.getSystemDefaultMode();
if (defaultmode != null) {
+
defaultchainigmode = defaultmode.value();
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java
index 980aa4731..56c3cb654 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java
@@ -48,22 +48,23 @@ public class GeneralStorkConfig {
if (foreign != null) {
STORK stork = foreign.getSTORK();
+ cpepslist = new ArrayList<CPEPS>();
+ attributes = new ArrayList<StorkAttribute>();
+
if (stork != null) {
// deep clone all the things
// to foreclose lazyloading session timeouts
- cpepslist = new ArrayList<CPEPS>();
+
for(CPEPS current : stork.getCPEPS()) {
cpepslist.add(current);
}
-
+
List<StorkAttribute> tmp = stork.getAttributes();
if(null != tmp) {
- attributes = new ArrayList<StorkAttribute>();
+
for(StorkAttribute current : tmp)
attributes.add(current);
}
- if(attributes.isEmpty())
- attributes.add(new StorkAttribute());
try {
qaa = stork.getQualityAuthenticationAssuranceLevel();
@@ -71,6 +72,12 @@ public class GeneralStorkConfig {
qaa = 4;
}
}
+
+ if (cpepslist.isEmpty())
+ cpepslist.add(new CPEPS());
+
+ if(attributes.isEmpty())
+ attributes.add(new StorkAttribute());
}
}
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAGeneralConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAGeneralConfig.java
index ba58701fc..990227738 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAGeneralConfig.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAGeneralConfig.java
@@ -37,6 +37,7 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.IdentificationNumber;
import at.gv.egovernment.moa.id.commons.db.dao.config.MOAIDConfiguration;
import at.gv.egovernment.moa.id.commons.db.dao.config.MOAKeyBoxSelector;
import at.gv.egovernment.moa.id.commons.db.dao.config.Mandates;
+import at.gv.egovernment.moa.id.commons.db.dao.config.MandatesProfileNameItem;
import at.gv.egovernment.moa.id.commons.db.dao.config.OnlineApplication;
import at.gv.egovernment.moa.id.commons.db.dao.config.TemplateType;
import at.gv.egovernment.moa.id.commons.db.dao.config.TemplatesType;
@@ -212,15 +213,32 @@ public class OAGeneralConfig {
Mandates mandates = oaauth.getMandates();
if (mandates != null) {
- if (MiscUtil.isNotEmpty(mandates.getProfiles())) {
- mandateProfiles = mandates.getProfiles();
- useMandates = true;
+ mandateProfiles = null;
+
+ List<MandatesProfileNameItem> profileList = mandates.getProfileNameItems();
+ for (MandatesProfileNameItem el : profileList) {
+ if (mandateProfiles == null)
+ mandateProfiles = el.getItem();
- } else {
- mandateProfiles = new String();
- useMandates = false;
+ else
+ mandateProfiles += "," + el.getItem();
}
+ //TODO: only for RC1
+ if (MiscUtil.isNotEmpty(mandates.getProfiles())) {
+ if (mandateProfiles == null)
+ mandateProfiles = mandates.getProfiles();
+
+ else
+ mandateProfiles += "," + mandates.getProfiles();
+
+ }
+
+ if (mandateProfiles != null)
+ useMandates = true;
+
+ else
+ useMandates = false;
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/StringHelper.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/StringHelper.java
index 43fc78821..53afa59a0 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/StringHelper.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/StringHelper.java
@@ -22,6 +22,8 @@
*******************************************************************************/
package at.gv.egovernment.moa.id.configuration.helper;
+import java.io.UnsupportedEncodingException;
+
public class StringHelper {
public static String formatText(String strGivenText)
@@ -47,4 +49,14 @@ public class StringHelper {
}
return sbFormattedText.toString();
}
+
+ public static String getUTF8String(String input) {
+ try {
+ return new String(input.getBytes(), "UTF-8");
+
+ } catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+ return input;
+ }
+ }
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java
index 5df12a7a5..dfc9b8801 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java
@@ -41,6 +41,7 @@ import org.apache.struts2.interceptor.ServletResponseAware;
import at.gv.egovernment.moa.id.commons.db.ConfigurationDBRead;
import at.gv.egovernment.moa.id.commons.db.ConfigurationDBUtils;
import at.gv.egovernment.moa.id.commons.db.dao.config.AuthComponentGeneral;
+import at.gv.egovernment.moa.id.commons.db.dao.config.CPEPS;
import at.gv.egovernment.moa.id.commons.db.dao.config.ChainingModeType;
import at.gv.egovernment.moa.id.commons.db.dao.config.ChainingModes;
import at.gv.egovernment.moa.id.commons.db.dao.config.ConnectionParameterClientAuthType;
@@ -62,6 +63,7 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.SLRequestTemplates;
import at.gv.egovernment.moa.id.commons.db.dao.config.SSO;
import at.gv.egovernment.moa.id.commons.db.dao.config.STORK;
import at.gv.egovernment.moa.id.commons.db.dao.config.SecurityLayer;
+import at.gv.egovernment.moa.id.commons.db.dao.config.StorkAttribute;
import at.gv.egovernment.moa.id.commons.db.dao.config.TimeOuts;
import at.gv.egovernment.moa.id.commons.db.dao.config.TransformsInfoType;
import at.gv.egovernment.moa.id.commons.db.dao.config.TrustAnchor;
@@ -73,6 +75,7 @@ import at.gv.egovernment.moa.id.configuration.auth.AuthenticatedUser;
import at.gv.egovernment.moa.id.configuration.data.GeneralMOAIDConfig;
import at.gv.egovernment.moa.id.configuration.data.GeneralStorkConfig;
import at.gv.egovernment.moa.id.configuration.helper.LanguageHelper;
+import at.gv.egovernment.moa.id.configuration.helper.StringHelper;
import at.gv.egovernment.moa.id.configuration.validation.ValidationHelper;
import at.gv.egovernment.moa.id.configuration.validation.moaconfig.MOAConfigValidator;
import at.gv.egovernment.moa.id.configuration.validation.moaconfig.StorkConfigValidator;
@@ -330,9 +333,10 @@ public class EditGeneralConfigAction extends ActionSupport
pvp2.setOrganization(pvp2org);
}
if (MiscUtil.isNotEmpty(moaconfig.getPvp2OrgDisplayName()))
- pvp2org.setDisplayName(moaconfig.getPvp2OrgDisplayName());
+ pvp2org.setDisplayName(StringHelper.getUTF8String(
+ moaconfig.getPvp2OrgDisplayName()));
if (MiscUtil.isNotEmpty(moaconfig.getPvp2OrgName()))
- pvp2org.setName(moaconfig.getPvp2OrgName());
+ pvp2org.setName(StringHelper.getUTF8String(moaconfig.getPvp2OrgName()));
if (MiscUtil.isNotEmpty(moaconfig.getPvp2OrgURL()))
pvp2org.setURL(moaconfig.getPvp2OrgURL());
@@ -349,10 +353,12 @@ public class EditGeneralConfigAction extends ActionSupport
Contact cont = pvp2cont.get(0);
if (MiscUtil.isNotEmpty(moaconfig.getPvp2Contact().getCompany()))
- cont.setCompany(moaconfig.getPvp2Contact().getCompany());
+ cont.setCompany(StringHelper.getUTF8String(
+ moaconfig.getPvp2Contact().getCompany()));
if (MiscUtil.isNotEmpty(moaconfig.getPvp2Contact().getGivenname()))
- cont.setGivenName(moaconfig.getPvp2Contact().getGivenname());
+ cont.setGivenName(StringHelper.getUTF8String(
+ moaconfig.getPvp2Contact().getGivenname()));
//TODO: change to list if required
if (MiscUtil.isNotEmpty(moaconfig.getPvp2Contact().getMail()))
@@ -361,7 +367,8 @@ public class EditGeneralConfigAction extends ActionSupport
cont.setPhone(Arrays.asList(moaconfig.getPvp2Contact().getPhone()));
if (MiscUtil.isNotEmpty(moaconfig.getPvp2Contact().getSurname()))
- cont.setSurName(moaconfig.getPvp2Contact().getSurname());
+ cont.setSurName(StringHelper.getUTF8String(
+ moaconfig.getPvp2Contact().getSurname()));
if (MiscUtil.isNotEmpty(moaconfig.getPvp2Contact().getType()))
cont.setType(moaconfig.getPvp2Contact().getType());
@@ -372,9 +379,11 @@ public class EditGeneralConfigAction extends ActionSupport
}
if (MiscUtil.isNotEmpty(moaconfig.getSsoFriendlyName()))
- dbsso.setFriendlyName(moaconfig.getSsoFriendlyName());
+ dbsso.setFriendlyName(StringHelper.getUTF8String(
+ moaconfig.getSsoFriendlyName()));
if (MiscUtil.isNotEmpty(moaconfig.getSsoSpecialText()))
- dbsso.setSpecialText(moaconfig.getSsoSpecialText());
+ dbsso.setSpecialText(StringHelper.getUTF8String(
+ moaconfig.getSsoSpecialText()));
// if (MiscUtil.isNotEmpty(moaconfig.getSsoPublicUrl()))
// dbsso.setPublicURL(moaconfig.getSsoPublicUrl());
@@ -483,12 +492,23 @@ public class EditGeneralConfigAction extends ActionSupport
ForeignIdentities oldforeign = oldauth.getForeignIdentities();
if (oldforeign != null) {
STORK oldstork = oldforeign.getSTORK();
- if (oldstork != null)
+ if (oldstork == null)
oldstork = new STORK();
oldstork.setQualityAuthenticationAssuranceLevel(storkconfig.getDefaultQaa());
- oldstork.setAttributes(storkconfig.getAttributes());
- oldstork.setCPEPS(storkconfig.getCpepslist());
+
+ if (storkconfig.getAttributes() != null)
+ oldstork.setAttributes(storkconfig.getAttributes());
+
+ else
+ oldstork.setAttributes((List<StorkAttribute>) (new ArrayList<StorkAttribute>()));
+
+ if (storkconfig.getCpepslist() != null)
+ oldstork.setCPEPS(storkconfig.getCpepslist());
+
+ else
+ oldstork.setCPEPS((List<CPEPS>) (new ArrayList<CPEPS>()));
+
dbforeign.setSTORK(oldstork);
}
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java
index fd4030937..19006ea22 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java
@@ -45,6 +45,7 @@ import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;
+import org.bouncycastle.asn1.InMemoryRepresentable;
import at.gv.egovernment.moa.id.auth.builder.LoginFormBuilder;
import at.gv.egovernment.moa.id.commons.db.ConfigurationDBRead;
@@ -57,6 +58,7 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.IdentificationNumber;
import at.gv.egovernment.moa.id.commons.db.dao.config.MOAIDConfiguration;
import at.gv.egovernment.moa.id.commons.db.dao.config.MOAKeyBoxSelector;
import at.gv.egovernment.moa.id.commons.db.dao.config.Mandates;
+import at.gv.egovernment.moa.id.commons.db.dao.config.MandatesProfileNameItem;
import at.gv.egovernment.moa.id.commons.db.dao.config.OAOAUTH20;
import at.gv.egovernment.moa.id.commons.db.dao.config.OAPVP2;
import at.gv.egovernment.moa.id.commons.db.dao.config.OASAML1;
@@ -82,6 +84,7 @@ import at.gv.egovernment.moa.id.configuration.data.oa.OASTORKConfig;
import at.gv.egovernment.moa.id.configuration.exception.ConfigurationException;
import at.gv.egovernment.moa.id.configuration.helper.LanguageHelper;
import at.gv.egovernment.moa.id.configuration.helper.MailHelper;
+import at.gv.egovernment.moa.id.configuration.helper.StringHelper;
import at.gv.egovernment.moa.id.configuration.validation.FormularCustomizationValitator;
import at.gv.egovernment.moa.id.configuration.validation.TargetValidator;
import at.gv.egovernment.moa.id.configuration.validation.ValidationHelper;
@@ -909,10 +912,23 @@ public class EditOAAction extends ActionSupport implements ServletRequestAware,
Mandates mandates = new Mandates();
if (generalOA.isUseMandates()) {
- mandates.setProfiles(generalOA.getMandateProfiles());
+ if (MiscUtil.isNotEmpty(generalOA.getMandateProfiles())) {
+ List<MandatesProfileNameItem> profileList = new ArrayList<MandatesProfileNameItem>();
+ String[] inputList = generalOA.getMandateProfiles().split(",");
+ for (int i=0; i<inputList.length; i++) {
+
+ MandatesProfileNameItem item = new MandatesProfileNameItem();
+ item.setItem(inputList[i]);
+ profileList.add(item);
+ }
+ mandates.setProfileNameItems(profileList );
+ mandates.setProfiles(null);
+ }
+
} else {
- mandates.setProfiles(new String());
+ mandates.setProfiles(null);
+ mandates.setProfileNameItems(null);
}
authoa.setMandates(mandates);
@@ -920,7 +936,8 @@ public class EditOAAction extends ActionSupport implements ServletRequestAware,
bkuselectioncustom.setOnlyMandateLoginAllowed(formOA.isOnlyMandateAllowed());
if (authUser.isAdmin()) {
- templates.setAditionalAuthBlockText(generalOA.getAditionalAuthBlockText());
+ templates.setAditionalAuthBlockText(StringHelper.getUTF8String(
+ generalOA.getAditionalAuthBlockText()));
List<TemplateType> template = templates.getTemplate();
if (generalOA.isLegacy()) {
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/ImportExportAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/ImportExportAction.java
index 3bc2d4ac5..655ce7a59 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/ImportExportAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/ImportExportAction.java
@@ -198,6 +198,10 @@ implements ServletRequestAware, ServletResponseAware {
ConfigurationDBUtils.closeSession();
}
+ //set new formID
+ formID = Random.nextRandom();
+ session.setAttribute(Constants.SESSION_FORMID, formID);
+
log.info("Legacy Configuration load is completed.");
addActionMessage(LanguageHelper.getGUIString("webpages.inportexport.success"));
return Constants.STRUTS_SUCCESS;
@@ -285,6 +289,11 @@ implements ServletRequestAware, ServletResponseAware {
ConfigurationDBUtils.closeSession();
}
+
+ //set new formID
+ formID = Random.nextRandom();
+ session.setAttribute(Constants.SESSION_FORMID, formID);
+
return Constants.STRUTS_SUCCESS;
} else {
log.info("No access to Import/Export for User with ID" + authUser.getUserID());
@@ -317,15 +326,20 @@ implements ServletRequestAware, ServletResponseAware {
+ authUser.getFamilyName() + authUser.getGivenName() + authUser.getUserID());
return Constants.STRUTS_ERROR;
}
+
session.setAttribute(Constants.SESSION_FORMID, null);
if (authUser.isAdmin()) {
if (fileUpload == null) {
addActionError(LanguageHelper.getErrorString("errors.importexport.nofile"));
+
+ formID = Random.nextRandom();
+ session.setAttribute(Constants.SESSION_FORMID, formID);
+
return Constants.STRUTS_ERROR_VALIDATION;
}
-
+
log.info("Load configuration from MOA-ID 2.x XML configuration");
try {
@@ -367,6 +381,10 @@ implements ServletRequestAware, ServletResponseAware {
ConfigurationDBUtils.closeSession();
}
+ //set new formID
+ formID = Random.nextRandom();
+ session.setAttribute(Constants.SESSION_FORMID, formID);
+
log.info("XML Configuration load is completed.");
addActionMessage(LanguageHelper.getGUIString("webpages.inportexport.success"));
return Constants.STRUTS_SUCCESS;
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java
index a51709e04..8004ab520 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java
@@ -278,6 +278,18 @@ public class IndexAction extends ActionSupport implements ServletRequestAware,
Response samlResponse = (Response) messageContext.getInboundMessage();
+ //ckeck InResponseTo matchs requestID
+ if (MiscUtil.isEmpty(authID)) {
+ log.info("NO AuthRequestID");
+ return Constants.STRUTS_ERROR;
+ }
+
+ if (!authID.equals(samlResponse.getInResponseTo())) {
+ log.warn("PVPRequestID does not match PVP2 Assertion ID!");
+ return Constants.STRUTS_ERROR;
+
+ }
+
Signature sign = samlResponse.getSignature();
if (sign == null) {
log.info("Only http POST Requests can be used");
@@ -352,29 +364,9 @@ public class IndexAction extends ActionSupport implements ServletRequestAware,
saml2assertions = samlResponse.getAssertions();
}
-
-
- if (MiscUtil.isEmpty(authID)) {
- log.info("NO AuthRequestID");
- return Constants.STRUTS_ERROR;
- }
-
+
for (org.opensaml.saml2.core.Assertion saml2assertion : saml2assertions) {
-
- Subject subject = saml2assertion.getSubject();
- List<SubjectConfirmation> subjectconformlist = subject.getSubjectConfirmations();
- for (SubjectConfirmation el : subjectconformlist) {
- if (el.getMethod().equals(SubjectConfirmation.METHOD_BEARER)) {
- SubjectConfirmationData date = el.getSubjectConfirmationData();
-
- if (!authID.equals(date.getInResponseTo())) {
- log.warn("PVPRequestID does not match PVP2 Assertion ID!");
- return Constants.STRUTS_ERROR;
-
- }
- }
- }
-
+
Conditions conditions = saml2assertion.getConditions();
DateTime notbefore = conditions.getNotBefore();
DateTime notafter = conditions.getNotOnOrAfter();
@@ -383,6 +375,13 @@ public class IndexAction extends ActionSupport implements ServletRequestAware,
return Constants.STRUTS_ERROR;
}
+
+ Subject subject = saml2assertion.getSubject();
+ if (subject == null) {
+ log.warn("Assertion has no Subject element");
+ return Constants.STRUTS_ERROR;
+
+ }
NameID nameID = subject.getNameID();
if (nameID == null) {
diff --git a/id/ConfigWebTool/src/main/resources/applicationResources.properties b/id/ConfigWebTool/src/main/resources/applicationResources.properties
index 914c4cd62..830a638a1 100644
--- a/id/ConfigWebTool/src/main/resources/applicationResources.properties
+++ b/id/ConfigWebTool/src/main/resources/applicationResources.properties
@@ -107,7 +107,7 @@ webpages.moaconfig.certificates.trustmanagerrev=TrustManagerRevocationChecking
webpages.moaconfig.certificates.trustCACerts=TrustedCACertificates
webpages.moaconfig.certificates.chainingmode=ChainingMode
webpages.moaconfig.timeout.header=Session TimeOuts
-webpages.moaconfig.timeout.assertion=Assertion [sec]
+webpages.moaconfig.timeout.assertion=Anmeldedaten [sec]
webpages.moaconfig.timeout.MOASessionCreated=SSO Session authentifiziert [sec]
webpages.moaconfig.timeout.MOASessionUpdated=SSO Session letzter Zugriff [sec]
webpages.moaconfig.moasp.header=MOA-SP Konfiguration