aboutsummaryrefslogtreecommitdiff
path: root/id/ConfigWebTool
diff options
context:
space:
mode:
Diffstat (limited to 'id/ConfigWebTool')
-rw-r--r--id/ConfigWebTool/pom.xml7
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java5
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralMOAIDConfig.java319
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAAuthenticationData.java63
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OATargetConfiguration.java13
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicAction.java17
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java6
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java605
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java58
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java7
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/MOAConfigValidator.java421
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/oa/OAAuthenticationDataValidation.java8
-rw-r--r--id/ConfigWebTool/src/main/resources/applicationResources_de.properties12
-rw-r--r--id/ConfigWebTool/src/main/resources/applicationResources_en.properties12
-rw-r--r--id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp524
-rw-r--r--id/ConfigWebTool/src/main/webapp/jsp/editOAGeneral.jsp55
-rw-r--r--id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/authentication.jsp24
-rw-r--r--id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/targetConfiguration.jsp58
-rw-r--r--id/ConfigWebTool/src/main/webapp/jsp/snippets/main_menu.jsp12
19 files changed, 1260 insertions, 966 deletions
diff --git a/id/ConfigWebTool/pom.xml b/id/ConfigWebTool/pom.xml
index 7f503d533..87e15eb68 100644
--- a/id/ConfigWebTool/pom.xml
+++ b/id/ConfigWebTool/pom.xml
@@ -3,7 +3,7 @@
<parent>
<groupId>MOA</groupId>
<artifactId>id</artifactId>
- <version>3.x</version>
+ <version>4.1.2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
@@ -26,14 +26,14 @@
</activation>
<repositories>
<repository>
- <id>local</id>
+ <id>moaid_local</id>
<name>local</name>
<url>file:${basedir}/../../repository</url>
</repository>
<repository>
<id>shibboleth.internet2.edu</id>
<name>Internet2</name>
- <url>https://build.shibboleth.net/nexus/content/groups/public/</url>
+ <url>https://apps.egiz.gv.at/shibboleth_nexus/</url>
</repository>
<repository>
<id>jboss</id>
@@ -185,7 +185,6 @@
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>openws</artifactId>
- <version>1.5.6</version>
<exclusions>
<exclusion>
<artifactId>log4j-over-slf4j</artifactId>
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java
index 39cd0980b..ef6c951c2 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java
@@ -326,6 +326,11 @@ public class ConfigurationProvider {
return configRootDir;
}
+ public boolean isMOAIDMode() {
+ String result = props.getProperty("general.moaidmode.active", "true");
+ return Boolean.parseBoolean(result);
+ }
+
public String getMOAIDInstanceURL() {
return props.getProperty("general.moaid.instance.url");
}
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 dc6e840d7..3929238f6 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.deprecated.TransformsInfoT
import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.TrustAnchor;
import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.VerifyAuthBlock;
import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.VerifyIdentityLink;
+import at.gv.egovernment.moa.id.config.webgui.exception.ConfigurationException;
import at.gv.egovernment.moa.id.configuration.Constants;
import at.gv.egovernment.moa.id.configuration.config.ConfigurationProvider;
import at.gv.egovernment.moa.id.configuration.data.pvp2.ContactForm;
@@ -88,6 +89,7 @@ public class GeneralMOAIDConfig {
private String mandateURL = null;
private String szrgwURL = null;
private String elgaMandateServiceURL = null;
+ private String eidSystemServiceURL = null;
private boolean protocolActiveSAML1 = false;
private boolean protocolActivePVP21 = true;
@@ -131,7 +133,16 @@ public class GeneralMOAIDConfig {
private String publicURLPrefix = null;
private boolean virtualPublicURLPrefixEnabled = false;
+ private boolean moaidMode = false;
+
public GeneralMOAIDConfig() {
+ try {
+ this.moaidMode = ConfigurationProvider.getInstance().isMOAIDMode();
+ } catch (ConfigurationException e) {
+ e.printStackTrace();
+
+ }
+
chainigmodelist = new HashMap<String, String>();
ChainingModeType[] values = ChainingModeType.values();
for (int i=0; i<values.length; i++) {
@@ -165,6 +176,24 @@ public class GeneralMOAIDConfig {
AuthComponentGeneral auth = config.getAuthComponentGeneral();
//get ELGA mandate service URLs from configuration
+ if (MiscUtil.isNotEmpty(config.getEidSystemServiceURLs())) {
+ if (KeyValueUtils.isCSVValueString(config.getEidSystemServiceURLs()))
+ eidSystemServiceURL = KeyValueUtils.normalizeCSVValueString(config.getEidSystemServiceURLs());
+
+ else {
+ if (config.getEidSystemServiceURLs().contains(KeyValueUtils.CSV_DELIMITER)) {
+ //remove trailing comma if exist
+ eidSystemServiceURL = config.getEidSystemServiceURLs().substring(0,
+ config.getEidSystemServiceURLs().indexOf(KeyValueUtils.CSV_DELIMITER));
+
+ } else
+ eidSystemServiceURL = config.getEidSystemServiceURLs();
+
+ }
+ }
+
+
+ //get ELGA mandate service URLs from configuration
if (MiscUtil.isNotEmpty(config.getElgaMandateServiceURLs())) {
if (KeyValueUtils.isCSVValueString(config.getElgaMandateServiceURLs()))
elgaMandateServiceURL = KeyValueUtils.normalizeCSVValueString(config.getElgaMandateServiceURLs());
@@ -184,35 +213,6 @@ public class GeneralMOAIDConfig {
if (auth != null) {
- ForeignIdentities foreign = auth.getForeignIdentities();
-
- if (foreign != null) {
- ConnectionParameterClientAuthType connect_foreign = foreign.getConnectionParameter();
- if (connect_foreign != null) {
- if (MiscUtil.isNotEmpty(connect_foreign.getURL())) {
- if (KeyValueUtils.isCSVValueString(connect_foreign.getURL()))
- szrgwURL = KeyValueUtils.normalizeCSVValueString(connect_foreign.getURL());
-
- else {
- if (connect_foreign.getURL().contains(KeyValueUtils.CSV_DELIMITER)) {
- //remove trailing comma if exist
- szrgwURL = connect_foreign.getURL().substring(0,
- connect_foreign.getURL().indexOf(KeyValueUtils.CSV_DELIMITER));
-
- } else
- szrgwURL = connect_foreign.getURL();
-
- }
-
- }
- }
-
- STORK stork = foreign.getSTORK();
- if (stork != null) {
- //TODO: add Stork config
-
- }
- }
GeneralConfiguration authgen = auth.getGeneralConfiguration();
if (authgen != null) {
@@ -239,9 +239,7 @@ public class GeneralMOAIDConfig {
} else
publicURLPrefix = tmp;
}
-
-
-
+
TimeOuts timeouts = authgen.getTimeOuts();
if (timeouts != null) {
@@ -253,56 +251,92 @@ public class GeneralMOAIDConfig {
timeoutMOASessionUpdated = String.valueOf(timeouts.getMOASessionUpdated().longValue());
}
- }
-
- MOASP moaspss = auth.getMOASP();
- if (moaspss != null) {
- ConnectionParameterClientAuthType con = moaspss.getConnectionParameter();
- if (con != null)
- moaspssURL = con.getURL();
- VerifyAuthBlock authblock = moaspss.getVerifyAuthBlock();
- if (authblock != null) {
- moaspssAuthTrustProfile = authblock.getTrustProfileID();
- moaspssAuthTrustProfileTest = authblock.getTestTrustProfileID();
-
- List<String> list = authblock.getVerifyTransformsInfoProfileID();
- if (list.size() == 1)
- moaspssAuthTransformations += list.get(0);
- else {
- for (String el : list)
- moaspssAuthTransformations += el + LINE_DELIMITER + "\n";
+
+ //deactive STORK
+ if (isMoaidMode()) {
+ ForeignIdentities foreign = auth.getForeignIdentities();
+ if (foreign != null) {
+ ConnectionParameterClientAuthType connect_foreign = foreign.getConnectionParameter();
+ if (connect_foreign != null) {
+ if (MiscUtil.isNotEmpty(connect_foreign.getURL())) {
+ if (KeyValueUtils.isCSVValueString(connect_foreign.getURL()))
+ szrgwURL = KeyValueUtils.normalizeCSVValueString(connect_foreign.getURL());
+
+ else {
+ if (connect_foreign.getURL().contains(KeyValueUtils.CSV_DELIMITER)) {
+ //remove trailing comma if exist
+ szrgwURL = connect_foreign.getURL().substring(0,
+ connect_foreign.getURL().indexOf(KeyValueUtils.CSV_DELIMITER));
+
+ } else
+ szrgwURL = connect_foreign.getURL();
+
+ }
+
+ }
+ }
+
+ STORK stork = foreign.getSTORK();
+ if (stork != null) {
+ //TODO: add Stork config
+
+ }
}
}
- VerifyIdentityLink idl = moaspss.getVerifyIdentityLink();
- if (idl != null) {
- moaspssIdlTrustProfile = idl.getTrustProfileID();
- moaspssIdlTrustProfileTest = idl.getTestTrustProfileID();
- }
}
-
- OnlineMandates mandates = auth.getOnlineMandates();
- if (mandates != null) {
- ConnectionParameterClientAuthType con = mandates.getConnectionParameter();
- if (con != null) {
- if (MiscUtil.isNotEmpty(con.getURL())) {
- if (KeyValueUtils.isCSVValueString(con.getURL()))
- mandateURL = KeyValueUtils.normalizeCSVValueString(con.getURL());
+
+ if (isMoaidMode()) {
+ MOASP moaspss = auth.getMOASP();
+ if (moaspss != null) {
+ ConnectionParameterClientAuthType con = moaspss.getConnectionParameter();
+ if (con != null)
+ moaspssURL = con.getURL();
+
+ VerifyAuthBlock authblock = moaspss.getVerifyAuthBlock();
+ if (authblock != null) {
+ moaspssAuthTrustProfile = authblock.getTrustProfileID();
+ moaspssAuthTrustProfileTest = authblock.getTestTrustProfileID();
+ List<String> list = authblock.getVerifyTransformsInfoProfileID();
+ if (list.size() == 1)
+ moaspssAuthTransformations += list.get(0);
else {
- if (con.getURL().contains(KeyValueUtils.CSV_DELIMITER)) {
- //remove trailing comma if exist
- mandateURL = con.getURL().substring(0,
- con.getURL().indexOf(KeyValueUtils.CSV_DELIMITER));
-
- } else
- mandateURL = con.getURL();
-
+ for (String el : list)
+ moaspssAuthTransformations += el + LINE_DELIMITER + "\n";
}
+ }
+ VerifyIdentityLink idl = moaspss.getVerifyIdentityLink();
+ if (idl != null) {
+ moaspssIdlTrustProfile = idl.getTrustProfileID();
+ moaspssIdlTrustProfileTest = idl.getTestTrustProfileID();
+ }
+ }
+
+ OnlineMandates mandates = auth.getOnlineMandates();
+ if (mandates != null) {
+ ConnectionParameterClientAuthType con = mandates.getConnectionParameter();
+ if (con != null) {
+ if (MiscUtil.isNotEmpty(con.getURL())) {
+ if (KeyValueUtils.isCSVValueString(con.getURL()))
+ mandateURL = KeyValueUtils.normalizeCSVValueString(con.getURL());
+
+ else {
+ if (con.getURL().contains(KeyValueUtils.CSV_DELIMITER)) {
+ //remove trailing comma if exist
+ mandateURL = con.getURL().substring(0,
+ con.getURL().indexOf(KeyValueUtils.CSV_DELIMITER));
+
+ } else
+ mandateURL = con.getURL();
+
+ }
+
+ }
+
}
-
}
}
@@ -330,9 +364,12 @@ public class GeneralMOAIDConfig {
}
- OAuth oauth = protocols.getOAuth();
- if (oauth != null) {
- protocolActiveOAuth = oauth.isIsActive();
+ if (isMoaidMode()) {
+ OAuth oauth = protocols.getOAuth();
+ if (oauth != null) {
+ protocolActiveOAuth = oauth.isIsActive();
+
+ }
}
@@ -361,73 +398,79 @@ public class GeneralMOAIDConfig {
pvp2OrgName = org.getName();
pvp2OrgURL = org.getURL();
}
- }
+ }
+
}
- SecurityLayer seclayer = auth.getSecurityLayer();
- if (seclayer != null) {
- List<TransformsInfoType> list = seclayer.getTransformsInfo();
+ if (isMoaidMode()) {
+ SecurityLayer seclayer = auth.getSecurityLayer();
+ if (seclayer != null) {
+ List<TransformsInfoType> list = seclayer.getTransformsInfo();
+
+ for (TransformsInfoType el : list) {
+ fileUploadFileName.add(el.getFilename());
+ }
+ }
- for (TransformsInfoType el : list) {
- fileUploadFileName.add(el.getFilename());
+ SSO sso = auth.getSSO();
+ if (sso != null) {
+ ssoFriendlyName = sso.getFriendlyName();
+
+ // IdentificationNumber idl = sso.getIdentificationNumber();
+ // if (idl != null)
+ // ssoIdentificationNumber = idl.getValue();
+
+ //INFO: only for backup
+ if (MiscUtil.isEmpty(publicURLPrefix))
+ publicURLPrefix = sso.getPublicURL();
+
+ ssoSpecialText = sso.getSpecialText();
+
+ if (MiscUtil.isNotEmpty(sso.getTarget()) &&
+ sso.getTarget().startsWith(Constants.PREFIX_WPBK)) {
+ ssoTarget = sso.getTarget().substring(Constants.PREFIX_WPBK.length()).
+ replace("+", "");
+
+ } else
+ ssoTarget = sso.getTarget();
+
}
}
- SSO sso = auth.getSSO();
- if (sso != null) {
- ssoFriendlyName = sso.getFriendlyName();
-
-// IdentificationNumber idl = sso.getIdentificationNumber();
-// if (idl != null)
-// ssoIdentificationNumber = idl.getValue();
-
- //INFO: only for backup
- if (MiscUtil.isEmpty(publicURLPrefix))
- publicURLPrefix = sso.getPublicURL();
-
- ssoSpecialText = sso.getSpecialText();
-
- if (MiscUtil.isNotEmpty(sso.getTarget()) &&
- sso.getTarget().startsWith(Constants.PREFIX_WPBK)) {
- ssoTarget = sso.getTarget().substring(Constants.PREFIX_WPBK.length()).
- replace("+", "");
+ ChainingModes modes = config.getChainingModes();
+ if (modes != null) {
+ ChainingModeType defaultmode = modes.getSystemDefaultMode();
+ if (defaultmode != null) {
- } else
- ssoTarget = sso.getTarget();
+ defaultchainigmode = defaultmode.value();
+
+ }
+ List<TrustAnchor> trustanchor = modes.getTrustAnchor();
+ if (trustanchor != null) {
+ //TODO: set addional trust anchors!!!!
+ }
}
- }
-
- ChainingModes modes = config.getChainingModes();
- if (modes != null) {
- ChainingModeType defaultmode = modes.getSystemDefaultMode();
- if (defaultmode != null) {
-
- defaultchainigmode = defaultmode.value();
-
+
+ DefaultBKUs defaultbkus = config.getDefaultBKUs();
+ if (defaultbkus != null) {
+ defaultBKUHandy = defaultbkus.getHandyBKU();
+ defaultBKULocal = defaultbkus.getLocalBKU();
+ defaultBKUOnline = defaultbkus.getOnlineBKU();
}
- List<TrustAnchor> trustanchor = modes.getTrustAnchor();
- if (trustanchor != null) {
- //TODO: set addional trust anchors!!!!
+ SLRequestTemplates slreq = config.getSLRequestTemplates();
+ if (slreq != null) {
+ SLRequestTemplateHandy = slreq.getHandyBKU();
+ SLRequestTemplateLocal = slreq.getLocalBKU();
+ SLRequestTemplateOnline = slreq.getOnlineBKU();
}
+
}
trustedCACerts = config.getTrustedCACertificates();
- DefaultBKUs defaultbkus = config.getDefaultBKUs();
- if (defaultbkus != null) {
- defaultBKUHandy = defaultbkus.getHandyBKU();
- defaultBKULocal = defaultbkus.getLocalBKU();
- defaultBKUOnline = defaultbkus.getOnlineBKU();
- }
-
- SLRequestTemplates slreq = config.getSLRequestTemplates();
- if (slreq != null) {
- SLRequestTemplateHandy = slreq.getHandyBKU();
- SLRequestTemplateLocal = slreq.getLocalBKU();
- SLRequestTemplateOnline = slreq.getOnlineBKU();
- }
+
}
}
@@ -1099,10 +1142,26 @@ public class GeneralMOAIDConfig {
this.elgaMandateServiceURL = elgaMandateServiceURL;
}
-
-
-
-
+ /**
+ * @return the eidSystemServiceURL
+ */
+ public String getEidSystemServiceURL() {
+ return eidSystemServiceURL;
+ }
+
+ public boolean isMoaidMode() {
+ return moaidMode;
+ }
+
+ /**
+ * @param eidSystemServiceURL the E-ID Service URL to set
+ */
+ public void setEidSystemServiceURL(String eidSystemServiceURL) {
+ if (MiscUtil.isNotEmpty(eidSystemServiceURL))
+ this.eidSystemServiceURL = KeyValueUtils.removeAllNewlineFromString(eidSystemServiceURL);
+ else
+ this.eidSystemServiceURL = eidSystemServiceURL;
+ }
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAAuthenticationData.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAAuthenticationData.java
index e896bb80b..b3db074a2 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAAuthenticationData.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAAuthenticationData.java
@@ -66,9 +66,11 @@ public class OAAuthenticationData implements IOnlineApplicationData {
private List<String> misServicesList = new ArrayList<String>();
private List<String> elgaServicesList = new ArrayList<String>();
private List<String> szrgwServicesList = new ArrayList<String>();
+ private List<String> eidServicesList = new ArrayList<String>();
private String misServiceSelected = null;
private String elgaServiceSelected = null;
private String szrgwServiceSelected = null;
+ private String eidServiceSelected = null;
private boolean calculateHPI = false;
@@ -90,10 +92,20 @@ public class OAAuthenticationData implements IOnlineApplicationData {
private boolean sl20Active = false;
private String sl20EndPoints = null;
+ private boolean isMoaidMode = false;
+
/**
+ * @param isMoaidMode
*
*/
public OAAuthenticationData() {
+ try {
+ this.isMoaidMode = ConfigurationProvider.getInstance().isMOAIDMode();
+ } catch (ConfigurationException e) {
+ e.printStackTrace();
+
+ }
+
keyBoxIdentifierList = new HashMap<String, String>();
MOAKeyBoxSelector[] values = MOAKeyBoxSelector.values();
for (int i=0; i<values.length; i++) {
@@ -105,18 +117,27 @@ public class OAAuthenticationData implements IOnlineApplicationData {
try {
MOAIDConfiguration dbconfig = ConfigurationProvider.getInstance().getDbRead().getMOAIDConfiguration();
-
- try {
- elgaServicesList = KeyValueUtils.getListOfCSVValues(dbconfig.getElgaMandateServiceURLs());
- misServicesList = KeyValueUtils.getListOfCSVValues(
- dbconfig.getAuthComponentGeneral().getOnlineMandates().getConnectionParameter().getURL());
- } catch (NullPointerException e) {}
-
+
+ if (this.isMoaidMode) {
+ try {
+ elgaServicesList = KeyValueUtils.getListOfCSVValues(dbconfig.getElgaMandateServiceURLs());
+ misServicesList = KeyValueUtils.getListOfCSVValues(
+ dbconfig.getAuthComponentGeneral().getOnlineMandates().getConnectionParameter().getURL());
+ } catch (NullPointerException e) {}
+
+ try {
+ szrgwServicesList = KeyValueUtils.getListOfCSVValues(
+ dbconfig.getAuthComponentGeneral().getForeignIdentities().getConnectionParameter().getURL());
+ } catch (NullPointerException e) {}
+
+ }
+
+
try {
- szrgwServicesList = KeyValueUtils.getListOfCSVValues(
- dbconfig.getAuthComponentGeneral().getForeignIdentities().getConnectionParameter().getURL());
+ eidServicesList = KeyValueUtils.getListOfCSVValues(dbconfig.getEidSystemServiceURLs());
} catch (NullPointerException e) {}
+
} catch (ConfigurationException e) {
log.error("MOA-ID-Configuration initialization FAILED.", e);
@@ -151,7 +172,8 @@ public class OAAuthenticationData implements IOnlineApplicationData {
public List<String> parse(OnlineApplication dbOA, AuthenticatedUser authUser, HttpServletRequest request) {
keyBoxIdentifier = dbOA.getKeyBoxIdentifier().value();
- szrgwServiceSelected = dbOA.getSelectedSZRGWServiceURL();
+ szrgwServiceSelected = dbOA.getSelectedSZRGWServiceURL();
+ eidServiceSelected = dbOA.getSelectedEIDServiceURL();
AuthComponentOA oaauth = dbOA.getAuthComponentOA();
if (oaauth != null) {
@@ -302,6 +324,10 @@ public class OAAuthenticationData implements IOnlineApplicationData {
if (MiscUtil.isNotEmpty(getSzrgwServiceSelected()))
dbOA.setSelectedSZRGWServiceURL(getSzrgwServiceSelected());
+
+ if (MiscUtil.isNotEmpty(getEidServiceSelected()))
+ dbOA.setSelectedEIDServiceURL(getEidServiceSelected());
+
if (authUser.isAdmin()) {
//store BKU-URLs
@@ -800,7 +826,18 @@ public class OAAuthenticationData implements IOnlineApplicationData {
return szrgwServicesList;
}
+ public List<String> getEidServicesList() {
+ return eidServicesList;
+ }
+
+ public String getEidServiceSelected() {
+ return eidServiceSelected;
+ }
+ public void setEidServiceSelected(String eidServiceSelected) {
+ this.eidServiceSelected = eidServiceSelected;
+ }
+
public boolean isSl20Active() {
return sl20Active;
}
@@ -820,7 +857,9 @@ public class OAAuthenticationData implements IOnlineApplicationData {
else
this.sl20EndPoints = sl20EndPoints;
}
+
+ public boolean isMoaidMode() {
+ return isMoaidMode;
+ }
-
-
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OATargetConfiguration.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OATargetConfiguration.java
index b2671302c..84516c73f 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OATargetConfiguration.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OATargetConfiguration.java
@@ -61,6 +61,7 @@ public class OATargetConfiguration implements IOnlineApplicationData {
private String foreignbPKTargets = null;
private String additionalbPKTargets = null;
private boolean eidDemoActive = false;
+ private boolean eidProxyActive = false;
public OATargetConfiguration() {
targetList = TargetValidator.getListOfTargets();
@@ -187,7 +188,7 @@ public class OATargetConfiguration implements IOnlineApplicationData {
//parse 'Austrian eID mode' flag
eidDemoActive = dbOA.getIseIDDemoModeActive();
-
+ eidProxyActive = dbOA.getIseIDProxyModeActive();
return null;
}
@@ -301,6 +302,7 @@ public class OATargetConfiguration implements IOnlineApplicationData {
dbOA.setForeignbPKTargetList(getForeignbPKTargets());
dbOA.setAdditionalbPKTargetList(getAdditionalbPKTargets());
dbOA.setIseIDDemoModeActive(isEidDemoActive());
+ dbOA.setIseIDProxyModeActive(isEidProxyActive());
return null;
}
@@ -490,7 +492,14 @@ public class OATargetConfiguration implements IOnlineApplicationData {
this.eidDemoActive = eidDemoActive;
}
-
+ public boolean isEidProxyActive() {
+ return eidProxyActive;
+ }
+
+
+ public void setEidProxyActive(boolean eidProxyActive) {
+ this.eidProxyActive = eidProxyActive;
+ }
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicAction.java
index 0d0cda246..9bbbe3df0 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicAction.java
@@ -56,6 +56,17 @@ public class BasicAction extends ActionSupport implements ServletRequestAware,
protected HttpSession session = null;
protected String formID;
+ protected static boolean isMoaidMode = false;
+
+ public BasicAction() {
+ try {
+ isMoaidMode = ConfigurationProvider.getInstance().isMOAIDMode();
+ } catch (ConfigurationException e) {
+ log.warn("Can NOT load configuration. Set 'moaidmode' to 'false'", e);
+ }
+ }
+
+
protected void populateBasicInformations() throws BasicActionException {
try {
configuration = ConfigurationProvider.getInstance();
@@ -115,6 +126,12 @@ public class BasicAction extends ActionSupport implements ServletRequestAware,
public void setFormID(String formID) {
this.formID = formID;
}
+
+
+ public static boolean isMoaidMode() {
+ return isMoaidMode;
+ }
+
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java
index 9e0b8b1cd..20db561d6 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java
@@ -88,10 +88,14 @@ public class BasicOAAction extends BasicAction {
private InputStream stream = null;
+
+
/**
*
*/
- public BasicOAAction() {
+ public BasicOAAction() {
+ super();
+
formList = new LinkedHashMap<String, IOnlineApplicationData>();
OAGeneralConfig generalOA = new OAGeneralConfig();
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 c3e8c459e..8e057db0f 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
@@ -65,7 +65,9 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.TransformsInfoT
import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.VerifyAuthBlock;
import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.VerifyIdentityLink;
import at.gv.egovernment.moa.id.commons.validation.ValidationHelper;
+import at.gv.egovernment.moa.id.config.webgui.exception.ConfigurationException;
import at.gv.egovernment.moa.id.configuration.Constants;
+import at.gv.egovernment.moa.id.configuration.config.ConfigurationProvider;
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.exception.BasicActionException;
@@ -100,19 +102,22 @@ public class EditGeneralConfigAction extends BasicAction {
MOAIDConfiguration dbconfig = configuration.getDbRead().getMOAIDConfiguration();
-
+
moaconfig = new GeneralMOAIDConfig();
- moaconfig.parse(dbconfig);
- storkconfig = new GeneralStorkConfig();
- storkconfig.parse(dbconfig);
-
+ moaconfig.parse(dbconfig);
if (moaconfig == null) {
log.error("MOA configuration is null");
}
- if (storkconfig == null) {
- log.error("Stork configuration is null");
+ if (moaconfig.isMoaidMode()) {
+ storkconfig = new GeneralStorkConfig();
+ storkconfig.parse(dbconfig);
+ if (storkconfig == null) {
+ log.error("Stork configuration is null");
+ }
}
+
+
formID = Random.nextRandom();
session.setAttribute(Constants.SESSION_FORMID, formID);
@@ -149,13 +154,21 @@ public class EditGeneralConfigAction extends BasicAction {
}
session.setAttribute(Constants.SESSION_FORMID, null);
+ boolean isMoaidMode = false;
+ try {
+ isMoaidMode = ConfigurationProvider.getInstance().isMOAIDMode();
+ } catch (ConfigurationException e) {
+ log.warn("Can NOT load configuration. Set 'moaidmode' to 'false'", e);
+ }
+
if (authUser.isAdmin()) {
MOAConfigValidator validator = new MOAConfigValidator();
- List<String> errors = validator.validate(moaconfig, request);
+ List<String> errors = validator.validate(moaconfig, request, isMoaidMode);
- errors.addAll(new StorkConfigValidator().validate(storkconfig, request));
+ if (isMoaidMode)
+ errors.addAll(new StorkConfigValidator().validate(storkconfig, request));
if (errors.size() > 0) {
log.info("General MOA-ID configuration has some errors.");
@@ -181,7 +194,7 @@ public class EditGeneralConfigAction extends BasicAction {
}
}
- String error = saveFormToDatabase();
+ String error = saveFormToDatabase(isMoaidMode);
if (error != null) {
log.warn("General MOA-ID config can not be stored in Database");
@@ -218,7 +231,7 @@ public class EditGeneralConfigAction extends BasicAction {
return Constants.STRUTS_SUCCESS;
}
- private String saveFormToDatabase() {
+ private String saveFormToDatabase(boolean isMoaidMode) {
log.debug("Saving form to database");
// log.error("Saving form to db");
@@ -370,20 +383,24 @@ public class EditGeneralConfigAction extends BasicAction {
}
+
OAuth oauth= dbprotocols.getOAuth();
if (oauth == null) {
oauth = new OAuth();
dbprotocols.setOAuth(oauth);
}
- oauth.setIsActive(moaconfig.isProtocolActiveOAuth());
-
+
PVP2 pvp2 = dbprotocols.getPVP2();
if (pvp2 == null) {
pvp2 = new PVP2();
dbprotocols.setPVP2(pvp2);
}
- pvp2.setIsActive(moaconfig.isProtocolActivePVP21());
+ if (isMoaidMode) {
+ oauth.setIsActive(moaconfig.isProtocolActiveOAuth());
+ pvp2.setIsActive(moaconfig.isProtocolActivePVP21());
+
+ }
if (MiscUtil.isNotEmpty(moaconfig.getPvp2IssuerName()))
pvp2.setIssuerName(moaconfig.getPvp2IssuerName());
@@ -437,80 +454,6 @@ public class EditGeneralConfigAction extends BasicAction {
if (MiscUtil.isNotEmpty(moaconfig.getPvp2Contact().getType()))
cont.setType(moaconfig.getPvp2Contact().getType());
- SSO dbsso = dbauth.getSSO();
- if (dbsso == null) {
- dbsso = new SSO();
- dbauth.setSSO(dbsso);
- }
-
- if (MiscUtil.isNotEmpty(moaconfig.getSsoFriendlyName()))
- dbsso.setFriendlyName(StringHelper.getUTF8String(
- moaconfig.getSsoFriendlyName()));
- if (MiscUtil.isNotEmpty(moaconfig.getSsoSpecialText()))
- dbsso.setSpecialText(StringHelper.getUTF8String(
- moaconfig.getSsoSpecialText()));
-// if (MiscUtil.isNotEmpty(moaconfig.getSsoPublicUrl()))
-// dbsso.setPublicURL(moaconfig.getSsoPublicUrl());
-
- if (MiscUtil.isNotEmpty(moaconfig.getSsoTarget())) {
-
- if (!ValidationHelper.isValidAdminTarget(moaconfig.getSsoTarget())) {
- String num = moaconfig.getSsoTarget().replaceAll(" ", "");
- String pre = null;
- if (num.startsWith(Constants.IDENIFICATIONTYPE_FN)) {
- num = num.substring(Constants.IDENIFICATIONTYPE_FN.length());
-
- num = at.gv.egovernment.moa.util.StringUtils.deleteLeadingZeros(num);
- pre = Constants.IDENIFICATIONTYPE_FN;
- }
-
- if (num.startsWith(Constants.IDENIFICATIONTYPE_ZVR)) {
- num = num.substring(Constants.IDENIFICATIONTYPE_ZVR.length());
- pre = Constants.IDENIFICATIONTYPE_ZVR;
- }
-
- if (num.startsWith(Constants.IDENIFICATIONTYPE_ERSB)){
- num = num.substring(Constants.IDENIFICATIONTYPE_ERSB.length());
- pre = Constants.IDENIFICATIONTYPE_ERSB;
- }
-
- dbsso.setTarget(Constants.PREFIX_WPBK + pre + "+" + num);
-
- } else {
- dbsso.setTarget(moaconfig.getSsoTarget());
-
- }
- }
-// if (MiscUtil.isNotEmpty(moaconfig.getSsoIdentificationNumber())) {
-// IdentificationNumber ssoid = dbsso.getIdentificationNumber();
-// if (ssoid == null) {
-// ssoid = new IdentificationNumber();
-// dbsso.setIdentificationNumber(ssoid);
-// }
-// ssoid.setValue(moaconfig.getSsoIdentificationNumber());
-// }
-
- DefaultBKUs dbbkus = dbconfig.getDefaultBKUs();
-
- if (dbbkus == null) {
- dbbkus = new DefaultBKUs();
- dbconfig.setDefaultBKUs(dbbkus);
- }
-
- if (MiscUtil.isNotEmpty(moaconfig.getDefaultBKUHandy()))
- dbbkus.setHandyBKU(moaconfig.getDefaultBKUHandy());
- else
- dbbkus.setHandyBKU(new String());
-
- if (MiscUtil.isNotEmpty(moaconfig.getDefaultBKUOnline()))
- dbbkus.setOnlineBKU(moaconfig.getDefaultBKUOnline());
- else
- dbbkus.setOnlineBKU(new String());
-
- if (MiscUtil.isNotEmpty(moaconfig.getDefaultBKULocal()))
- dbbkus.setLocalBKU(moaconfig.getDefaultBKULocal());
- else
- dbbkus.setLocalBKU(new String());
ChainingModes dbchainingmodes = dbconfig.getChainingModes();
if (dbchainingmodes == null) {
@@ -521,230 +464,334 @@ public class EditGeneralConfigAction extends BasicAction {
dbchainingmodes.setSystemDefaultMode(
ChainingModeType.fromValue("pkix"));
- IdentityLinkSigners idlsigners = dbauth.getIdentityLinkSigners();
- if (idlsigners == null) {
- idlsigners = new IdentityLinkSigners();
- dbauth.setIdentityLinkSigners(idlsigners);
- }
-
- ForeignIdentities dbforeign = dbauth.getForeignIdentities();
- if (dbforeign == null) {
- dbforeign = new ForeignIdentities();
- dbauth.setForeignIdentities(dbforeign);
- }
- if (MiscUtil.isNotEmpty(moaconfig.getSzrgwURL())) {
- ConnectionParameterClientAuthType forcon = dbforeign.getConnectionParameter();
- if (forcon == null) {
- forcon = new ConnectionParameterClientAuthType();
- dbforeign.setConnectionParameter(forcon);
+ if (isMoaidMode) {
+ SSO dbsso = dbauth.getSSO();
+ if (dbsso == null) {
+ dbsso = new SSO();
+ dbauth.setSSO(dbsso);
}
- if (KeyValueUtils.isCSVValueString(moaconfig.getSzrgwURL()))
- forcon.setURL(KeyValueUtils.normalizeCSVValueString(moaconfig.getSzrgwURL()));
+ if (MiscUtil.isNotEmpty(moaconfig.getSsoFriendlyName()))
+ dbsso.setFriendlyName(StringHelper.getUTF8String(
+ moaconfig.getSsoFriendlyName()));
+ if (MiscUtil.isNotEmpty(moaconfig.getSsoSpecialText()))
+ dbsso.setSpecialText(StringHelper.getUTF8String(
+ moaconfig.getSsoSpecialText()));
+ // if (MiscUtil.isNotEmpty(moaconfig.getSsoPublicUrl()))
+ // dbsso.setPublicURL(moaconfig.getSsoPublicUrl());
+
+ if (MiscUtil.isNotEmpty(moaconfig.getSsoTarget())) {
- else {
- if (moaconfig.getSzrgwURL().contains(KeyValueUtils.CSV_DELIMITER))
- forcon.setURL(
- moaconfig.getSzrgwURL().trim().substring(0,
- moaconfig.getSzrgwURL().indexOf(KeyValueUtils.CSV_DELIMITER)));
+ if (!ValidationHelper.isValidAdminTarget(moaconfig.getSsoTarget())) {
+ String num = moaconfig.getSsoTarget().replaceAll(" ", "");
+ String pre = null;
+ if (num.startsWith(Constants.IDENIFICATIONTYPE_FN)) {
+ num = num.substring(Constants.IDENIFICATIONTYPE_FN.length());
+
+ num = at.gv.egovernment.moa.util.StringUtils.deleteLeadingZeros(num);
+ pre = Constants.IDENIFICATIONTYPE_FN;
+ }
- else
- forcon.setURL(
- StringUtils.chomp(moaconfig.getSzrgwURL().trim()));
-
+ if (num.startsWith(Constants.IDENIFICATIONTYPE_ZVR)) {
+ num = num.substring(Constants.IDENIFICATIONTYPE_ZVR.length());
+ pre = Constants.IDENIFICATIONTYPE_ZVR;
+ }
+
+ if (num.startsWith(Constants.IDENIFICATIONTYPE_ERSB)){
+ num = num.substring(Constants.IDENIFICATIONTYPE_ERSB.length());
+ pre = Constants.IDENIFICATIONTYPE_ERSB;
+ }
+
+ dbsso.setTarget(Constants.PREFIX_WPBK + pre + "+" + num);
+
+ } else {
+ dbsso.setTarget(moaconfig.getSsoTarget());
+
+ }
+ }
+ // if (MiscUtil.isNotEmpty(moaconfig.getSsoIdentificationNumber())) {
+ // IdentificationNumber ssoid = dbsso.getIdentificationNumber();
+ // if (ssoid == null) {
+ // ssoid = new IdentificationNumber();
+ // dbsso.setIdentificationNumber(ssoid);
+ // }
+ // ssoid.setValue(moaconfig.getSsoIdentificationNumber());
+ // }
+
+ DefaultBKUs dbbkus = dbconfig.getDefaultBKUs();
+
+ if (dbbkus == null) {
+ dbbkus = new DefaultBKUs();
+ dbconfig.setDefaultBKUs(dbbkus);
}
+
+ if (MiscUtil.isNotEmpty(moaconfig.getDefaultBKUHandy()))
+ dbbkus.setHandyBKU(moaconfig.getDefaultBKUHandy());
+ else
+ dbbkus.setHandyBKU(new String());
+
+ if (MiscUtil.isNotEmpty(moaconfig.getDefaultBKUOnline()))
+ dbbkus.setOnlineBKU(moaconfig.getDefaultBKUOnline());
+ else
+ dbbkus.setOnlineBKU(new String());
+
+ if (MiscUtil.isNotEmpty(moaconfig.getDefaultBKULocal()))
+ dbbkus.setLocalBKU(moaconfig.getDefaultBKULocal());
+ else
+ dbbkus.setLocalBKU(new String());
- }
+
- ForeignIdentities foreign = dbauth.getForeignIdentities();
- if (foreign != null) {
- STORK stork = foreign.getSTORK();
- if (stork == null) {
- stork = new STORK();
- foreign.setSTORK(stork);
-
+ IdentityLinkSigners idlsigners = dbauth.getIdentityLinkSigners();
+ if (idlsigners == null) {
+ idlsigners = new IdentityLinkSigners();
+ dbauth.setIdentityLinkSigners(idlsigners);
+ }
+
+ ForeignIdentities dbforeign = dbauth.getForeignIdentities();
+ if (dbforeign == null) {
+ dbforeign = new ForeignIdentities();
+ dbauth.setForeignIdentities(dbforeign);
}
-
- try {
- log.error("QAAAA " + storkconfig.getDefaultQaa());
- stork.setGeneral_eIDAS_LOA(storkconfig.getDefaultQaa());
- if (storkconfig.getAttributes() != null) {
- List<StorkAttribute> dbStorkAttr = new ArrayList<StorkAttribute>();
- stork.setAttributes(dbStorkAttr);
-
+ if (MiscUtil.isNotEmpty(moaconfig.getSzrgwURL())) {
+ ConnectionParameterClientAuthType forcon = dbforeign.getConnectionParameter();
+ if (forcon == null) {
+ forcon = new ConnectionParameterClientAuthType();
+ dbforeign.setConnectionParameter(forcon);
+ }
+
+ if (KeyValueUtils.isCSVValueString(moaconfig.getSzrgwURL()))
+ forcon.setURL(KeyValueUtils.normalizeCSVValueString(moaconfig.getSzrgwURL()));
- for (StorkAttribute attr : storkconfig.getAttributes()) {
- if (attr != null && MiscUtil.isNotEmpty(attr.getName()))
- dbStorkAttr.add(attr);
+ else {
+ if (moaconfig.getSzrgwURL().contains(KeyValueUtils.CSV_DELIMITER))
+ forcon.setURL(
+ moaconfig.getSzrgwURL().trim().substring(0,
+ moaconfig.getSzrgwURL().indexOf(KeyValueUtils.CSV_DELIMITER)));
- else
- log.info("Remove null or empty STORK attribute");
- }
-
- } else
- stork.setAttributes((List<StorkAttribute>) (new ArrayList<StorkAttribute>()));
-
- if (storkconfig.getCpepslist() != null) {
- List<CPEPS> dbStorkCPEPS = new ArrayList<CPEPS>();
- stork.setCPEPS(dbStorkCPEPS);
+ else
+ forcon.setURL(
+ StringUtils.chomp(moaconfig.getSzrgwURL().trim()));
+
+ }
+
+ }
+
+ ForeignIdentities foreign = dbauth.getForeignIdentities();
+ if (foreign != null) {
+ STORK stork = foreign.getSTORK();
+ if (stork == null) {
+ stork = new STORK();
+ foreign.setSTORK(stork);
- for (CPEPS cpeps : storkconfig.getCpepslist()) {
- if (cpeps != null && MiscUtil.isNotEmpty(cpeps.getURL()) &&
- MiscUtil.isNotEmpty(cpeps.getCountryCode())) {
+ }
+
+ try {
+ log.error("QAAAA " + storkconfig.getDefaultQaa());
+ stork.setGeneral_eIDAS_LOA(storkconfig.getDefaultQaa());
+
+ if (storkconfig.getAttributes() != null) {
+ List<StorkAttribute> dbStorkAttr = new ArrayList<StorkAttribute>();
+ stork.setAttributes(dbStorkAttr);
- if (cpeps.getCountryCode().equals("CC") &&
- cpeps.getURL().equals("http://"))
- log.info("Remove dummy STORK CPEPS entry.");
-
- else
- dbStorkCPEPS.add(cpeps);
+
+ for (StorkAttribute attr : storkconfig.getAttributes()) {
+ if (attr != null && MiscUtil.isNotEmpty(attr.getName()))
+ dbStorkAttr.add(attr);
- } else
- log.info("Remove null or emtpy STORK CPEPS configuration");
- }
+ else
+ log.info("Remove null or empty STORK attribute");
+ }
+
+ } else
+ stork.setAttributes((List<StorkAttribute>) (new ArrayList<StorkAttribute>()));
+
+ if (storkconfig.getCpepslist() != null) {
+ List<CPEPS> dbStorkCPEPS = new ArrayList<CPEPS>();
+ stork.setCPEPS(dbStorkCPEPS);
+
+ for (CPEPS cpeps : storkconfig.getCpepslist()) {
+ if (cpeps != null && MiscUtil.isNotEmpty(cpeps.getURL()) &&
+ MiscUtil.isNotEmpty(cpeps.getCountryCode())) {
+
+ if (cpeps.getCountryCode().equals("CC") &&
+ cpeps.getURL().equals("http://"))
+ log.info("Remove dummy STORK CPEPS entry.");
+
+ else
+ dbStorkCPEPS.add(cpeps);
+
+ } else
+ log.info("Remove null or emtpy STORK CPEPS configuration");
+ }
+
+ } else
+ stork.setCPEPS((List<CPEPS>) (new ArrayList<CPEPS>()));
- } else
- stork.setCPEPS((List<CPEPS>) (new ArrayList<CPEPS>()));
-
- } catch (Exception e) {
- e.printStackTrace();
-
- }
-
- try{
- log.info("CPEPS LIST: " + storkconfig.getCpepslist().size() );
- log.trace("CPEPS 1:" + storkconfig.getCpepslist().get(0).getCountryCode() +storkconfig.getCpepslist().get(0).getURL());
-
- } catch (Exception ex) {
- log.info("CPEPS LIST is null");
-
- }
- }
-
- //write MIS Mandate-Service URLs
- if (MiscUtil.isNotEmpty(moaconfig.getMandateURL())) {
- OnlineMandates dbmandate = dbauth.getOnlineMandates();
- if (dbmandate == null) {
- dbmandate = new OnlineMandates();
- dbauth.setOnlineMandates(dbmandate);
+ } catch (Exception e) {
+ e.printStackTrace();
+
+ }
+
+ try{
+ log.info("CPEPS LIST: " + storkconfig.getCpepslist().size() );
+ log.trace("CPEPS 1:" + storkconfig.getCpepslist().get(0).getCountryCode() +storkconfig.getCpepslist().get(0).getURL());
+
+ } catch (Exception ex) {
+ log.info("CPEPS LIST is null");
+
+ }
}
- ConnectionParameterClientAuthType dbmandateconnection = dbmandate.getConnectionParameter();
-
- if (dbmandateconnection == null) {
- dbmandateconnection = new ConnectionParameterClientAuthType();
- dbmandate.setConnectionParameter(dbmandateconnection);
+
+ //write MIS Mandate-Service URLs
+ if (MiscUtil.isNotEmpty(moaconfig.getMandateURL())) {
+ OnlineMandates dbmandate = dbauth.getOnlineMandates();
+ if (dbmandate == null) {
+ dbmandate = new OnlineMandates();
+ dbauth.setOnlineMandates(dbmandate);
+ }
+ ConnectionParameterClientAuthType dbmandateconnection = dbmandate.getConnectionParameter();
+
+ if (dbmandateconnection == null) {
+ dbmandateconnection = new ConnectionParameterClientAuthType();
+ dbmandate.setConnectionParameter(dbmandateconnection);
+ }
+
+ if (KeyValueUtils.isCSVValueString(moaconfig.getMandateURL()))
+ dbmandateconnection.setURL(KeyValueUtils.normalizeCSVValueString(moaconfig.getMandateURL()));
+
+ else {
+ if (moaconfig.getMandateURL().contains(KeyValueUtils.CSV_DELIMITER))
+ dbmandateconnection.setURL(
+ moaconfig.getMandateURL().trim().substring(0,
+ moaconfig.getMandateURL().indexOf(KeyValueUtils.CSV_DELIMITER)));
+
+ else
+ dbmandateconnection.setURL(
+ StringUtils.chomp(moaconfig.getMandateURL().trim()));
+
+ }
}
- if (KeyValueUtils.isCSVValueString(moaconfig.getMandateURL()))
- dbmandateconnection.setURL(KeyValueUtils.normalizeCSVValueString(moaconfig.getMandateURL()));
-
- else {
- if (moaconfig.getMandateURL().contains(KeyValueUtils.CSV_DELIMITER))
- dbmandateconnection.setURL(
- moaconfig.getMandateURL().trim().substring(0,
- moaconfig.getMandateURL().indexOf(KeyValueUtils.CSV_DELIMITER)));
+ //write ELGA Mandate-Service URLs
+ if (MiscUtil.isNotEmpty(moaconfig.getElgaMandateServiceURL())) {
+ if (KeyValueUtils.isCSVValueString(moaconfig.getElgaMandateServiceURL()))
+ dbconfig.setElgaMandateServiceURLs(KeyValueUtils.normalizeCSVValueString(moaconfig.getElgaMandateServiceURL()));
- else
- dbmandateconnection.setURL(
- StringUtils.chomp(moaconfig.getMandateURL().trim()));
-
- }
+ else {
+ if (moaconfig.getElgaMandateServiceURL().contains(KeyValueUtils.CSV_DELIMITER))
+ dbconfig.setElgaMandateServiceURLs(
+ moaconfig.getElgaMandateServiceURL().trim().substring(0,
+ moaconfig.getElgaMandateServiceURL().indexOf(KeyValueUtils.CSV_DELIMITER)));
+
+ else
+ dbconfig.setElgaMandateServiceURLs(
+ StringUtils.chomp(moaconfig.getElgaMandateServiceURL().trim()));
+
+ }
+ } else
+ dbconfig.setElgaMandateServiceURLs(null);
}
- //write ELGA Mandate-Service URLs
- if (MiscUtil.isNotEmpty(moaconfig.getElgaMandateServiceURL())) {
- if (KeyValueUtils.isCSVValueString(moaconfig.getElgaMandateServiceURL()))
- dbconfig.setElgaMandateServiceURLs(KeyValueUtils.normalizeCSVValueString(moaconfig.getElgaMandateServiceURL()));
+
+ //write E-ID System URLs
+ if (MiscUtil.isNotEmpty(moaconfig.getEidSystemServiceURL())) {
+ if (KeyValueUtils.isCSVValueString(moaconfig.getEidSystemServiceURL()))
+ dbconfig.setEidSystemServiceURLs(KeyValueUtils.normalizeCSVValueString(moaconfig.getEidSystemServiceURL()));
else {
- if (moaconfig.getElgaMandateServiceURL().contains(KeyValueUtils.CSV_DELIMITER))
- dbconfig.setElgaMandateServiceURLs(
- moaconfig.getElgaMandateServiceURL().trim().substring(0,
- moaconfig.getElgaMandateServiceURL().indexOf(KeyValueUtils.CSV_DELIMITER)));
+ if (moaconfig.getEidSystemServiceURL().contains(KeyValueUtils.CSV_DELIMITER))
+ dbconfig.setEidSystemServiceURLs(
+ moaconfig.getEidSystemServiceURL().trim().substring(0,
+ moaconfig.getEidSystemServiceURL().indexOf(KeyValueUtils.CSV_DELIMITER)));
else
- dbconfig.setElgaMandateServiceURLs(
- StringUtils.chomp(moaconfig.getElgaMandateServiceURL().trim()));
+ dbconfig.setEidSystemServiceURLs(
+ StringUtils.chomp(moaconfig.getEidSystemServiceURL().trim()));
- }
- }
-
-
-
- MOASP dbmoasp = dbauth.getMOASP();
- if (dbmoasp == null) {
- dbmoasp = new MOASP();
- dbauth.setMOASP(dbmoasp);
- }
- if (MiscUtil.isNotEmpty(moaconfig.getMoaspssURL())) {
- ConnectionParameterClientAuthType moaspcon = dbmoasp.getConnectionParameter();
- if (moaspcon == null) {
- moaspcon = new ConnectionParameterClientAuthType();
- dbmoasp.setConnectionParameter(moaspcon);
}
- moaspcon.setURL(moaconfig.getMoaspssURL());
- }
- VerifyIdentityLink moaidl = dbmoasp.getVerifyIdentityLink();
- if (moaidl == null) {
- moaidl = new VerifyIdentityLink();
- dbmoasp.setVerifyIdentityLink(moaidl);
- }
- moaidl.setTrustProfileID(moaconfig.getMoaspssIdlTrustProfile());
- moaidl.setTestTrustProfileID(moaconfig.getMoaspssIdlTrustProfileTest());
-
- VerifyAuthBlock moaauth = dbmoasp.getVerifyAuthBlock();
- if (moaauth == null) {
- moaauth = new VerifyAuthBlock();
- dbmoasp.setVerifyAuthBlock(moaauth);
- }
- moaauth.setTrustProfileID(moaconfig.getMoaspssAuthTrustProfile());
- moaauth.setTestTrustProfileID(moaconfig.getMoaspssAuthTrustProfileTest());
+
+ } else
+ dbconfig.setEidSystemServiceURLs(null);
- if (moaauth.getVerifyTransformsInfoProfileID() != null &&
- moaauth.getVerifyTransformsInfoProfileID().size() > 0)
- moaauth.getVerifyTransformsInfoProfileID().set(0, moaconfig.getAuthTransformList().get(0));
- else {
- if (moaauth.getVerifyTransformsInfoProfileID() == null) {
- moaauth.setVerifyTransformsInfoProfileID(new ArrayList<String>());
-
+ if (isMoaidMode) {
+ MOASP dbmoasp = dbauth.getMOASP();
+ if (dbmoasp == null) {
+ dbmoasp = new MOASP();
+ dbauth.setMOASP(dbmoasp);
}
- moaauth.getVerifyTransformsInfoProfileID().add(moaconfig.getAuthTransformList().get(0));
- }
-
- SecurityLayer seclayertrans = dbauth.getSecurityLayer();
- if (seclayertrans == null) {
- seclayertrans = new SecurityLayer();
- dbauth.setSecurityLayer(seclayertrans);
- }
- List<TransformsInfoType> trans = new ArrayList<TransformsInfoType>();
- Map<String, byte[]> moatrans = moaconfig.getSecLayerTransformation();
- if (moatrans != null) {
- Set<String> keys = moatrans.keySet();
- for (String key : keys) {
- TransformsInfoType elem = new TransformsInfoType();
- elem.setFilename(key);
- elem.setTransformation(moatrans.get(key));
- trans.add(elem);
+ if (MiscUtil.isNotEmpty(moaconfig.getMoaspssURL())) {
+ ConnectionParameterClientAuthType moaspcon = dbmoasp.getConnectionParameter();
+ if (moaspcon == null) {
+ moaspcon = new ConnectionParameterClientAuthType();
+ dbmoasp.setConnectionParameter(moaspcon);
+ }
+ moaspcon.setURL(moaconfig.getMoaspssURL());
}
+ VerifyIdentityLink moaidl = dbmoasp.getVerifyIdentityLink();
+ if (moaidl == null) {
+ moaidl = new VerifyIdentityLink();
+ dbmoasp.setVerifyIdentityLink(moaidl);
+ }
+ moaidl.setTrustProfileID(moaconfig.getMoaspssIdlTrustProfile());
+ moaidl.setTestTrustProfileID(moaconfig.getMoaspssIdlTrustProfileTest());
+
+ VerifyAuthBlock moaauth = dbmoasp.getVerifyAuthBlock();
+ if (moaauth == null) {
+ moaauth = new VerifyAuthBlock();
+ dbmoasp.setVerifyAuthBlock(moaauth);
+ }
+ moaauth.setTrustProfileID(moaconfig.getMoaspssAuthTrustProfile());
+ moaauth.setTestTrustProfileID(moaconfig.getMoaspssAuthTrustProfileTest());
+
+ if (moaauth.getVerifyTransformsInfoProfileID() != null &&
+ moaauth.getVerifyTransformsInfoProfileID().size() > 0)
+ moaauth.getVerifyTransformsInfoProfileID().set(0, moaconfig.getAuthTransformList().get(0));
+
+ else {
+ if (moaauth.getVerifyTransformsInfoProfileID() == null) {
+ moaauth.setVerifyTransformsInfoProfileID(new ArrayList<String>());
+
+ }
+ moaauth.getVerifyTransformsInfoProfileID().add(moaconfig.getAuthTransformList().get(0));
+ }
+
+ SecurityLayer seclayertrans = dbauth.getSecurityLayer();
+ if (seclayertrans == null) {
+ seclayertrans = new SecurityLayer();
+ dbauth.setSecurityLayer(seclayertrans);
+ }
+ List<TransformsInfoType> trans = new ArrayList<TransformsInfoType>();
+ Map<String, byte[]> moatrans = moaconfig.getSecLayerTransformation();
+ if (moatrans != null) {
+ Set<String> keys = moatrans.keySet();
+ for (String key : keys) {
+ TransformsInfoType elem = new TransformsInfoType();
+ elem.setFilename(key);
+ elem.setTransformation(moatrans.get(key));
+ trans.add(elem);
+ }
+ }
+ if (trans.size() > 0)
+ seclayertrans.setTransformsInfo(trans);
+
+
+ SLRequestTemplates slrequesttempl = dbconfig.getSLRequestTemplates();
+ if (slrequesttempl == null) {
+ slrequesttempl = new SLRequestTemplates();
+ dbconfig.setSLRequestTemplates(slrequesttempl);
+ }
+ if (MiscUtil.isNotEmpty(moaconfig.getSLRequestTemplateHandy()))
+ slrequesttempl.setHandyBKU(moaconfig.getSLRequestTemplateHandy());
+ if (MiscUtil.isNotEmpty(moaconfig.getSLRequestTemplateLocal()))
+ slrequesttempl.setLocalBKU(moaconfig.getSLRequestTemplateLocal());
+ if (MiscUtil.isNotEmpty(moaconfig.getSLRequestTemplateOnline()))
+ slrequesttempl.setOnlineBKU(moaconfig.getSLRequestTemplateOnline());
+
}
- if (trans.size() > 0)
- seclayertrans.setTransformsInfo(trans);
-
-
- SLRequestTemplates slrequesttempl = dbconfig.getSLRequestTemplates();
- if (slrequesttempl == null) {
- slrequesttempl = new SLRequestTemplates();
- dbconfig.setSLRequestTemplates(slrequesttempl);
- }
- if (MiscUtil.isNotEmpty(moaconfig.getSLRequestTemplateHandy()))
- slrequesttempl.setHandyBKU(moaconfig.getSLRequestTemplateHandy());
- if (MiscUtil.isNotEmpty(moaconfig.getSLRequestTemplateLocal()))
- slrequesttempl.setLocalBKU(moaconfig.getSLRequestTemplateLocal());
- if (MiscUtil.isNotEmpty(moaconfig.getSLRequestTemplateOnline()))
- slrequesttempl.setOnlineBKU(moaconfig.getSLRequestTemplateOnline());
if (MiscUtil.isNotEmpty(moaconfig.getTrustedCACerts()))
dbconfig.setTrustedCACertificates(moaconfig.getTrustedCACerts());
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 cfb74ebd2..31126d14f 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
@@ -70,31 +70,33 @@ public class EditOAAction extends BasicOAAction {
OAAuthenticationData authOA = new OAAuthenticationData();
formList.put(authOA.getName(), authOA);
- OABPKEncryption bPKEncDec = new OABPKEncryption();
- formList.put(bPKEncDec.getName(), bPKEncDec);
-
- OASSOConfig ssoOA = new OASSOConfig();
- formList.put(ssoOA.getName(), ssoOA);
-
OASAML1Config saml1OA = new OASAML1Config();
formList.put(saml1OA.getName(), saml1OA);
+
+ if (isMoaidMode) {
+ OABPKEncryption bPKEncDec = new OABPKEncryption();
+ formList.put(bPKEncDec.getName(), bPKEncDec);
+
+ OASSOConfig ssoOA = new OASSOConfig();
+ formList.put(ssoOA.getName(), ssoOA);
- OAPVP2Config pvp2OA = new OAPVP2Config();
- formList.put(pvp2OA.getName(), pvp2OA);
+ OAPVP2Config pvp2OA = new OAPVP2Config();
+ formList.put(pvp2OA.getName(), pvp2OA);
- OAOAuth20Config oauth20OA = new OAOAuth20Config();
- formList.put(oauth20OA.getName(), oauth20OA);
+ OAOAuth20Config oauth20OA = new OAOAuth20Config();
+ formList.put(oauth20OA.getName(), oauth20OA);
- OASTORKConfig storkOA = new OASTORKConfig();
- formList.put(storkOA.getName(), storkOA);
+ OASTORKConfig storkOA = new OASTORKConfig();
+ formList.put(storkOA.getName(), storkOA);
- Map<String, String> map = new HashMap<String, String>();
- map.putAll(FormBuildUtils.getDefaultMap());
- FormularCustomization formOA = new FormularCustomization(map);
- formList.put(formOA.getName(), formOA);
+ Map<String, String> map = new HashMap<String, String>();
+ map.putAll(FormBuildUtils.getDefaultMap());
+ FormularCustomization formOA = new FormularCustomization(map);
+ formList.put(formOA.getName(), formOA);
- OARevisionsLogData revisOA = new OARevisionsLogData();
- formList.put(revisOA.getName(), revisOA);
+ OARevisionsLogData revisOA = new OARevisionsLogData();
+ formList.put(revisOA.getName(), revisOA);
+ }
}
@@ -165,7 +167,8 @@ public class EditOAAction extends BasicOAAction {
}
- getStorkOA().setHelperAttributes(attributes);
+ if (getStorkOA() != null)
+ getStorkOA().setHelperAttributes(attributes);
UserDatabase userdb = configuration.getUserManagement().getUserWithID(authUser
.getUserID());
@@ -178,11 +181,16 @@ public class EditOAAction extends BasicOAAction {
return Constants.STRUTS_SUCCESS;
}
- session.setAttribute(
- Constants.SESSION_OAUTH20SECRET,
- ((OAOAuth20Config) formList.get(new OAOAuth20Config().getName()))
+ if (formList.get(new OAOAuth20Config().getName()) != null)
+ session.setAttribute(
+ Constants.SESSION_OAUTH20SECRET,
+ ((OAOAuth20Config) formList.get(new OAOAuth20Config().getName()))
.getClientSecret());
- session.setAttribute(Constants.SESSION_BKUFORMPREVIEW, getFormOA().getFormMap());
+
+ if (getFormOA() != null)
+ session.setAttribute(Constants.SESSION_BKUFORMPREVIEW, getFormOA().getFormMap());
+
+
nextPage = Constants.STRUTS_RETURNAREA_VALUES.main.name();
return Constants.STRUTS_OA_EDIT;
@@ -210,8 +218,8 @@ public class EditOAAction extends BasicOAAction {
errors.addAll(form.validate(getGeneralOA(), authUser, request));
// Do not allow SSO in combination with special BKUSelection features
- if (getSsoOA().isUseSSO()
- && (getFormOA().isOnlyMandateAllowed() || !getFormOA()
+ if (getSsoOA() != null && getSsoOA().isUseSSO()
+ && (getFormOA() != null && getFormOA().isOnlyMandateAllowed() || !getFormOA()
.isShowMandateLoginButton())) {
log.warn("Special BKUSelection features can not be used in combination with SSO");
errors.add(LanguageHelper.getErrorString(
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java
index 7fae5d40c..180f32235 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java
@@ -23,17 +23,14 @@
package at.gv.egovernment.moa.id.configuration.struts.action;
import java.util.ArrayList;
-import java.util.Date;
import java.util.List;
import org.apache.log4j.Logger;
+import at.gv.egiz.eaaf.core.impl.utils.Random;
import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.AttributeProviderPlugin;
import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.IdentificationNumber;
-import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.MOAIDConfiguration;
import at.gv.egovernment.moa.id.commons.db.dao.config.deprecated.OnlineApplication;
-import at.gv.egiz.eaaf.core.impl.utils.Random;
-import at.gv.egovernment.moa.id.commons.db.dao.config.UserDatabase;
import at.gv.egovernment.moa.id.commons.db.ex.MOADatabaseException;
import at.gv.egovernment.moa.id.commons.validation.ValidationHelper;
import at.gv.egovernment.moa.id.configuration.Constants;
@@ -42,7 +39,6 @@ import at.gv.egovernment.moa.id.configuration.data.OAListElement;
import at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData;
import at.gv.egovernment.moa.id.configuration.data.oa.OAAuthenticationData;
import at.gv.egovernment.moa.id.configuration.data.oa.OAMOAIDPInterfederationConfig;
-import at.gv.egovernment.moa.id.configuration.data.oa.OAOAuth20Config;
import at.gv.egovernment.moa.id.configuration.data.oa.OASTORKConfig;
import at.gv.egovernment.moa.id.configuration.data.oa.OATargetConfiguration;
import at.gv.egovernment.moa.id.configuration.data.oa.PVPGatewayInterfederationConfig;
@@ -50,7 +46,6 @@ import at.gv.egovernment.moa.id.configuration.exception.BasicActionException;
import at.gv.egovernment.moa.id.configuration.exception.BasicOAActionException;
import at.gv.egovernment.moa.id.configuration.helper.FormDataHelper;
import at.gv.egovernment.moa.id.configuration.helper.LanguageHelper;
-import at.gv.egovernment.moa.util.MiscUtil;
/**
* @author tlenz
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/MOAConfigValidator.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/MOAConfigValidator.java
index 717a0c827..247004b75 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/MOAConfigValidator.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/MOAConfigValidator.java
@@ -46,7 +46,7 @@ public class MOAConfigValidator {
private static final Logger log = Logger.getLogger(MOAConfigValidator.class);
- public List<String> validate(GeneralMOAIDConfig form, HttpServletRequest request) {
+ public List<String> validate(GeneralMOAIDConfig form, HttpServletRequest request, boolean isMOAIDMode) {
List<String> errors = new ArrayList<String>();
@@ -126,7 +126,7 @@ public class MOAConfigValidator {
// }
check = form.getDefaultBKUHandy();
- if (MiscUtil.isNotEmpty(check)) {
+ if (MiscUtil.isNotEmpty(check) && isMOAIDMode) {
if (!ValidationHelper.validateURL(check)) {
log.info("Not valid Handy-BKU URL");
errors.add(LanguageHelper.getErrorString("validation.general.bku.handy.valid", request));
@@ -134,7 +134,7 @@ public class MOAConfigValidator {
}
check = form.getDefaultBKULocal();
- if (MiscUtil.isNotEmpty(check)) {
+ if (MiscUtil.isNotEmpty(check) && isMOAIDMode) {
if (!ValidationHelper.validateURL(check)) {
log.info("Not valid Online-BKU URL");
errors.add(LanguageHelper.getErrorString("validation.general.bku.local.valid", request));
@@ -142,7 +142,7 @@ public class MOAConfigValidator {
}
check = form.getDefaultBKUOnline();
- if (MiscUtil.isNotEmpty(check)) {
+ if (MiscUtil.isNotEmpty(check) && isMOAIDMode) {
if (!ValidationHelper.validateURL(check)) {
log.info("Not valid Online-BKU URL");
errors.add(LanguageHelper.getErrorString("validation.general.bku.online.valid", request));
@@ -162,7 +162,7 @@ public class MOAConfigValidator {
// }
check = form.getMandateURL();
- if (MiscUtil.isNotEmpty(check)) {
+ if (MiscUtil.isNotEmpty(check) && isMOAIDMode) {
String[] misURLs = check.split(",");
for (String el : misURLs) {
if (MiscUtil.isNotEmpty(el) && !ValidationHelper.validateURL(StringUtils.chomp(el.trim()))) {
@@ -174,7 +174,7 @@ public class MOAConfigValidator {
}
check = form.getElgaMandateServiceURL();
- if (MiscUtil.isNotEmpty(check)) {
+ if (MiscUtil.isNotEmpty(check) && isMOAIDMode) {
String[] elgaServiceURLs = check.split(",");
for (String el : elgaServiceURLs) {
if (MiscUtil.isNotEmpty(el) && !ValidationHelper.validateURL(StringUtils.chomp(el.trim()))) {
@@ -185,87 +185,103 @@ public class MOAConfigValidator {
}
}
+ check = form.getEidSystemServiceURL();
+ if (MiscUtil.isNotEmpty(check)) {
+ String[] eidServiceURLs = check.split(",");
+ for (String el : eidServiceURLs) {
+ if (MiscUtil.isNotEmpty(el) && !ValidationHelper.validateURL(StringUtils.chomp(el.trim()))) {
+ log.info("Not valid E-ID System Service URL");
+ errors.add(LanguageHelper.getErrorString("validation.general.eid.url.valid",
+ new Object[]{el}, request));
+ }
+ }
+ }
+
check = form.getMoaspssAuthTransformations();
List<String> authtranslist = new ArrayList<String>();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty MoaspssAuthTransformation");
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.transformation.empty", request));
- } else {
-
- //is only required if more then one transformation is in use
-// check = StringHelper.formatText(check);
-// String[] list = check.split(GeneralMOAIDConfig.LINE_DELIMITER);
-// int i=1;
-// for(String el : list) {
-// if (ValidationHelper.containsPotentialCSSCharacter(el, false)) {
-// log.info("IdentityLinkSigners is not valid: " + el);
-// errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.transformation.valid",
-// new Object[] {i, ValidationHelper.getPotentialCSSCharacter(false)} ));
-//
-// } else {
-// if (MiscUtil.isNotEmpty(el.trim()))
-// authtranslist.add(el.trim());
-// }
-// i++;
-// }
- authtranslist.add(check.trim());
+ if (isMOAIDMode) {
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty MoaspssAuthTransformation");
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.transformation.empty", request));
+ } else {
+
+ //is only required if more then one transformation is in use
+ // check = StringHelper.formatText(check);
+ // String[] list = check.split(GeneralMOAIDConfig.LINE_DELIMITER);
+ // int i=1;
+ // for(String el : list) {
+ // if (ValidationHelper.containsPotentialCSSCharacter(el, false)) {
+ // log.info("IdentityLinkSigners is not valid: " + el);
+ // errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.transformation.valid",
+ // new Object[] {i, ValidationHelper.getPotentialCSSCharacter(false)} ));
+ //
+ // } else {
+ // if (MiscUtil.isNotEmpty(el.trim()))
+ // authtranslist.add(el.trim());
+ // }
+ // i++;
+ // }
+ authtranslist.add(check.trim());
+ }
}
form.setAuthTransformList(authtranslist);
- check = form.getMoaspssAuthTrustProfile();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty MOA-SP/SS Authblock TrustProfile");
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.trustprofile.empty", request));
- } else {
- if (ValidationHelper.containsNotValidCharacter(check, false)) {
- log.info("Authblock TrustProfile is not valid: " +check);
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.trustprofile.valid",
- new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+ if (isMOAIDMode) {
+ check = form.getMoaspssAuthTrustProfile();
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty MOA-SP/SS Authblock TrustProfile");
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.trustprofile.empty", request));
+ } else {
+ if (ValidationHelper.containsNotValidCharacter(check, false)) {
+ log.info("Authblock TrustProfile is not valid: " +check);
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.trustprofile.valid",
+ new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+ }
}
- }
-
- check = form.getMoaspssIdlTrustProfile();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty MOA-SP/SS IdentityLink TrustProfile");
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.idl.trustprofile.empty", request));
- } else {
- if (ValidationHelper.containsNotValidCharacter(check, false)) {
- log.info("IdentityLink TrustProfile is not valid: " +check);
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.idl.trustprofile.valid",
- new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+
+ check = form.getMoaspssIdlTrustProfile();
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty MOA-SP/SS IdentityLink TrustProfile");
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.idl.trustprofile.empty", request));
+ } else {
+ if (ValidationHelper.containsNotValidCharacter(check, false)) {
+ log.info("IdentityLink TrustProfile is not valid: " +check);
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.idl.trustprofile.valid",
+ new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+ }
}
- }
-
- check = form.getMoaspssAuthTrustProfileTest();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty MOA-SP/SS Test-Authblock TrustProfile");
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.trustprofile.test.empty", request));
- } else {
- if (ValidationHelper.containsNotValidCharacter(check, false)) {
- log.info("Test-Authblock TrustProfile is not valid: " +check);
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.trustprofile.test.valid",
- new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+
+ check = form.getMoaspssAuthTrustProfileTest();
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty MOA-SP/SS Test-Authblock TrustProfile");
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.trustprofile.test.empty", request));
+ } else {
+ if (ValidationHelper.containsNotValidCharacter(check, false)) {
+ log.info("Test-Authblock TrustProfile is not valid: " +check);
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.auth.trustprofile.test.valid",
+ new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+ }
}
- }
-
- check = form.getMoaspssIdlTrustProfileTest();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty MOA-SP/SS Test-IdentityLink TrustProfile");
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.idl.trustprofile.test.empty", request));
- } else {
- if (ValidationHelper.containsNotValidCharacter(check, false)) {
- log.info("Test-IdentityLink TrustProfile is not valid: " +check);
- errors.add(LanguageHelper.getErrorString("validation.general.moasp.idl.trustprofile.test.valid",
- new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+
+ check = form.getMoaspssIdlTrustProfileTest();
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty MOA-SP/SS Test-IdentityLink TrustProfile");
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.idl.trustprofile.test.empty", request));
+ } else {
+ if (ValidationHelper.containsNotValidCharacter(check, false)) {
+ log.info("Test-IdentityLink TrustProfile is not valid: " +check);
+ errors.add(LanguageHelper.getErrorString("validation.general.moasp.idl.trustprofile.test.valid",
+ new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+ }
}
- }
-
-
- check = form.getMoaspssURL();
- if (MiscUtil.isNotEmpty(check)) {
- if (!ValidationHelper.validateURL(check)) {
- log.info("Not valid MOA-SP/SS Service URL");
- errors.add(LanguageHelper.getErrorString("validation.general.moaspss.url.valid", request));
+
+
+ check = form.getMoaspssURL();
+ if (MiscUtil.isNotEmpty(check)) {
+ if (!ValidationHelper.validateURL(check)) {
+ log.info("Not valid MOA-SP/SS Service URL");
+ errors.add(LanguageHelper.getErrorString("validation.general.moaspss.url.valid", request));
+ }
}
}
@@ -312,109 +328,111 @@ public class MOAConfigValidator {
// }
// }
- check = form.getSLRequestTemplateHandy();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty SLRequestTemplate Handy-BKU");
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.handy.empty", request));
- } else {
- if (ValidationHelper.isNotValidIdentityLinkSigner(check)) {
- log.info("SLRequestTemplate Handy-BKU is not valid");
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.handy.valid", request));
- }
- }
-
- check = form.getSLRequestTemplateLocal();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty SLRequestTemplate local BKU");
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.local.empty", request));
- } else {
- if (ValidationHelper.isNotValidIdentityLinkSigner(check)) {
- log.info("SLRequestTemplate local BKU is not valid");
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.local.valid", request));
- }
- }
-
- check = form.getSLRequestTemplateOnline();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty SLRequestTemplate Online-BKU");
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.online.empty", request));
- } else {
- if (ValidationHelper.isNotValidIdentityLinkSigner(check)) {
- log.info("SLRequestTemplate Online-BKU is not valid");
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.online.valid", request));
+ if (isMOAIDMode) {
+ check = form.getSLRequestTemplateHandy();
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty SLRequestTemplate Handy-BKU");
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.handy.empty", request));
+ } else {
+ if (ValidationHelper.isNotValidIdentityLinkSigner(check)) {
+ log.info("SLRequestTemplate Handy-BKU is not valid");
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.handy.valid", request));
+ }
}
- }
-
- check = form.getSsoFriendlyName();
- if (MiscUtil.isNotEmpty(check)) {
- if (ValidationHelper.containsNotValidCharacter(check, false)) {
- log.info("SSO friendlyname is not valid: " + check);
- errors.add(LanguageHelper.getErrorString("validation.general.sso.friendlyname.valid",
- new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+
+ check = form.getSLRequestTemplateLocal();
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty SLRequestTemplate local BKU");
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.local.empty", request));
+ } else {
+ if (ValidationHelper.isNotValidIdentityLinkSigner(check)) {
+ log.info("SLRequestTemplate local BKU is not valid");
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.local.valid", request));
+ }
}
- }
-
-// check = form.getSsoIdentificationNumber();
-// if (MiscUtil.isNotEmpty(check)) {
-// if (ValidationHelper.containsPotentialCSSCharacter(check, false)) {
-// log.info("SSO IdentificationNumber is not valid: " + check);
-// errors.add(LanguageHelper.getErrorString("validation.general.sso.identificationnumber.valid",
-// new Object[] {ValidationHelper.getPotentialCSSCharacter(false)} ));
-// }
-// }
-
-// check = form.getSsoPublicUrl();
-// if (MiscUtil.isNotEmpty(check)) {
-// if (!ValidationHelper.validateURL(check)) {
-// log.info("SSO Public URL is not valid");
-// errors.add(LanguageHelper.getErrorString("validation.general.sso.publicurl.valid"));
-// }
-// }
-
- check = form.getSsoSpecialText();
- if (MiscUtil.isNotEmpty(check)) {
- if (ValidationHelper.containsNotValidCharacter(check, true)) {
- log.info("SSO SpecialText is not valid: " + check);
- errors.add(LanguageHelper.getErrorString("validation.general.sso.specialauthtext.valid",
- new Object[] {ValidationHelper.getNotValidCharacter(true)} , request));
+
+ check = form.getSLRequestTemplateOnline();
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty SLRequestTemplate Online-BKU");
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.online.empty", request));
+ } else {
+ if (ValidationHelper.isNotValidIdentityLinkSigner(check)) {
+ log.info("SLRequestTemplate Online-BKU is not valid");
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.online.valid", request));
+ }
}
- }
-
- check = form.getSsoTarget();
- if (MiscUtil.isEmpty(check)) {
- log.info("Empty SSO Target");
- //errors.add(LanguageHelper.getErrorString("validation.general.sso.target.empty", request));
- } else {
- if (!ValidationHelper.isValidAdminTarget(check)) {
-
+ check = form.getSsoFriendlyName();
+ if (MiscUtil.isNotEmpty(check)) {
if (ValidationHelper.containsNotValidCharacter(check, false)) {
- log.warn("IdentificationNumber contains potentail XSS characters: " + check);
- errors.add(LanguageHelper.getErrorString("validation.general.sso.target.valid",
+ log.info("SSO friendlyname is not valid: " + check);
+ errors.add(LanguageHelper.getErrorString("validation.general.sso.friendlyname.valid",
new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
}
+ }
+
+ // check = form.getSsoIdentificationNumber();
+ // if (MiscUtil.isNotEmpty(check)) {
+ // if (ValidationHelper.containsPotentialCSSCharacter(check, false)) {
+ // log.info("SSO IdentificationNumber is not valid: " + check);
+ // errors.add(LanguageHelper.getErrorString("validation.general.sso.identificationnumber.valid",
+ // new Object[] {ValidationHelper.getPotentialCSSCharacter(false)} ));
+ // }
+ // }
+
+ // check = form.getSsoPublicUrl();
+ // if (MiscUtil.isNotEmpty(check)) {
+ // if (!ValidationHelper.validateURL(check)) {
+ // log.info("SSO Public URL is not valid");
+ // errors.add(LanguageHelper.getErrorString("validation.general.sso.publicurl.valid"));
+ // }
+ // }
+
+ check = form.getSsoSpecialText();
+ if (MiscUtil.isNotEmpty(check)) {
+ if (ValidationHelper.containsNotValidCharacter(check, true)) {
+ log.info("SSO SpecialText is not valid: " + check);
+ errors.add(LanguageHelper.getErrorString("validation.general.sso.specialauthtext.valid",
+ new Object[] {ValidationHelper.getNotValidCharacter(true)} , request));
+ }
+ }
+
+ check = form.getSsoTarget();
+ if (MiscUtil.isEmpty(check)) {
+ log.info("Empty SSO Target");
+ //errors.add(LanguageHelper.getErrorString("validation.general.sso.target.empty", request));
- String num = check.replaceAll(" ", "");
-
- if ( !(num.startsWith(Constants.IDENIFICATIONTYPE_FN) ||
- num.startsWith(Constants.IDENIFICATIONTYPE_ZVR) ||
- num.startsWith(Constants.IDENIFICATIONTYPE_ERSB) ) ) {
+ } else {
+ if (!ValidationHelper.isValidAdminTarget(check)) {
- log.info("Not valid SSO Target");
- errors.add(LanguageHelper.getErrorString("validation.general.sso.target.valid", request));
+ if (ValidationHelper.containsNotValidCharacter(check, false)) {
+ log.warn("IdentificationNumber contains potentail XSS characters: " + check);
+ errors.add(LanguageHelper.getErrorString("validation.general.sso.target.valid",
+ new Object[] {ValidationHelper.getNotValidCharacter(false)}, request ));
+ }
+
+ String num = check.replaceAll(" ", "");
+
+ if ( !(num.startsWith(Constants.IDENIFICATIONTYPE_FN) ||
+ num.startsWith(Constants.IDENIFICATIONTYPE_ZVR) ||
+ num.startsWith(Constants.IDENIFICATIONTYPE_ERSB) ) ) {
+
+ log.info("Not valid SSO Target");
+ errors.add(LanguageHelper.getErrorString("validation.general.sso.target.valid", request));
+ }
+
}
-
}
- }
-
- check = form.getSzrgwURL();
- if (MiscUtil.isNotEmpty(check)) {
- String[] szrGWServiceURLs = check.split(",");
- for (String el : szrGWServiceURLs) {
- if (MiscUtil.isNotEmpty(el) && !ValidationHelper.validateURL(StringUtils.chomp(el.trim()))) {
- log.info("Not valid Online-Mandate Service URL");
- errors.add(LanguageHelper.getErrorString("validation.general.szrgw.url.valid",
- new Object[]{el}, request));
+
+ check = form.getSzrgwURL();
+ if (MiscUtil.isNotEmpty(check)) {
+ String[] szrGWServiceURLs = check.split(",");
+ for (String el : szrGWServiceURLs) {
+ if (MiscUtil.isNotEmpty(el) && !ValidationHelper.validateURL(StringUtils.chomp(el.trim()))) {
+ log.info("Not valid Online-Mandate Service URL");
+ errors.add(LanguageHelper.getErrorString("validation.general.szrgw.url.valid",
+ new Object[]{el}, request));
+ }
}
}
}
@@ -433,41 +451,42 @@ public class MOAConfigValidator {
}
-
- if (form.getFileUploadFileName() != null && !form.getFileUploadFileName().isEmpty()) {
- HashMap<String, byte[]> map = new HashMap<String, byte[]>();
- for (int i=0; i<form.getFileUploadFileName().size(); i++) {
- String filename = form.getFileUploadFileName().get(i);
-
- if (MiscUtil.isNotEmpty(filename)) {
- if (ValidationHelper.containsNotValidCharacter(filename, false)) {
- log.info("SL Transformation Filename is not valid");
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.filename.valid", request));
-
- } else {
- try {
- File file = form.getFileUpload().get(i);
- FileInputStream stream = new FileInputStream(file);
- map.put(filename, Base64Utils.encode(stream).getBytes("UTF-8"));
+ if (isMOAIDMode) {
+ if (form.getFileUploadFileName() != null && !form.getFileUploadFileName().isEmpty()) {
+ HashMap<String, byte[]> map = new HashMap<String, byte[]>();
+ for (int i=0; i<form.getFileUploadFileName().size(); i++) {
+ String filename = form.getFileUploadFileName().get(i);
+
+ if (MiscUtil.isNotEmpty(filename)) {
+ if (ValidationHelper.containsNotValidCharacter(filename, false)) {
+ log.info("SL Transformation Filename is not valid");
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.filename.valid", request));
- } catch (IOException e) {
- log.info("SecurtiyLayerTransformation with FileName "
- + filename +" can not be loaded." , e);
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.file.valid",
- new Object[] {filename}, request ));
- }
+ } else {
+ try {
+ File file = form.getFileUpload().get(i);
+ FileInputStream stream = new FileInputStream(file);
+ map.put(filename, Base64Utils.encode(stream).getBytes("UTF-8"));
+
+ } catch (IOException e) {
+ log.info("SecurtiyLayerTransformation with FileName "
+ + filename +" can not be loaded." , e);
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.file.valid",
+ new Object[] {filename}, request ));
+ }
+ }
}
}
- }
-
- form.setSecLayerTransformation(map);
-
- } else {
- if (form.getSecLayerTransformation() == null) {
- log.info("AuthBlock Transformation file is empty");
- errors.add(LanguageHelper.getErrorString("validation.general.slrequest.file.empty", request));
+
+ form.setSecLayerTransformation(map);
- }
+ } else {
+ if (form.getSecLayerTransformation() == null) {
+ log.info("AuthBlock Transformation file is empty");
+ errors.add(LanguageHelper.getErrorString("validation.general.slrequest.file.empty", request));
+
+ }
+ }
}
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/oa/OAAuthenticationDataValidation.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/oa/OAAuthenticationDataValidation.java
index 6b58a22b4..5a31d8f47 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/oa/OAAuthenticationDataValidation.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/oa/OAAuthenticationDataValidation.java
@@ -175,6 +175,14 @@ public class OAAuthenticationDataValidation {
}
}
+ check =form.getEidServiceSelected();
+ if (MiscUtil.isNotEmpty(check)) {
+ if (!ValidationHelper.validateURL(check)) {
+ log.info("Not valid E-ID Service URL");
+ errors.add(LanguageHelper.getErrorString("validation.general.eid.url.valid",
+ new Object[]{check}, request));
+ }
+ }
if (form.isEnableTestCredentials()
&& form.getTestCredialOIDList() != null && !form.getTestCredialOIDList().isEmpty()) {
diff --git a/id/ConfigWebTool/src/main/resources/applicationResources_de.properties b/id/ConfigWebTool/src/main/resources/applicationResources_de.properties
index fbd6fedcd..2ef63a529 100644
--- a/id/ConfigWebTool/src/main/resources/applicationResources_de.properties
+++ b/id/ConfigWebTool/src/main/resources/applicationResources_de.properties
@@ -154,6 +154,7 @@ webpages.moaconfig.services.header=Externe Services
webpages.moaconfig.services.mandates=Online-Vollmachten Service URLs (CSV)
webpages.moaconfig.services.szrgw=Zentraler nationaler eIDAS Connector URLs (CSV)
webpages.moaconfig.services.elgamandateservice=ELGA Mandate Service EntityIDs (CSV)
+webpages.moaconfig.services.eidsystemservice=E-ID System EntityIDs (CSV)
webpages.moaconfig.sso.header=Single Sign-On
webpages.moaconfig.sso.PublicUrl=SSO Service URL-Prefix
webpages.moaconfig.sso.FriendlyName=SSO Service Name
@@ -263,14 +264,20 @@ webpages.oaconfig.general.aditional.useUTC=UTC Zeit verwenden
webpages.oaconfig.general.aditional.calculateHPI="TODO!"
webpages.oaconfig.general.isHideBPKAuthBlock=bPK/wbPK im AuthBlock ausblenden
-webpages.oaconfig.general.neweid.header=Demo-Modus zur Simulation der Austrian eID
-webpages.oaconfig.general.neweid.activate=Demo-Modus aktivieren
+webpages.oaconfig.general.neweid.header=E-ID Mode
+webpages.oaconfig.general.neweid.proxy.activate=E-ID Proxy-Mode aktivieren
+webpages.oaconfig.general.neweid.demo.activate=E-ID Demo-Mode aktivieren
+
+webpages.oaconfig.general.foreign.header=Weitere bPKs/fremd-bPKs im MOA-ID Mode
webpages.oaconfig.general.foreign.sectors=Sektoren f\u00FCr Fremd-bPKs (CSV)
webpages.oaconfig.general.additionalbpks.sectors=Sektoren f\u00FCr weitere bPKs (CSV)
webpages.oaconfig.general.szrgw.header=Zentraler nationaler eIDAS Connector
webpages.oaconfig.general.szrgw.selected=URL zum zentralen eIDAS Connector
+webpages.oaconfig.general.eid.header=Der \u00f6sterreichische E-ID
+webpages.oaconfig.general.eid.selected=URL zum E-ID Service
+
webpages.oaconfig.menu.saml1.show=SAML1 Konfiguration einblenden
webpages.oaconfig.menu.saml1.hidden=SAML1 Konfiguration ausblenden
webpages.oaconfig.menu.pvp2.show=PVP2 Konfiguration einblenden
@@ -415,6 +422,7 @@ validation.general.IdentityLinkSigners.valid=Der IdentityLinkSigner in der Zeile
validation.general.mandateservice.valid=Die URL {0} zum Online-Vollmachten Service hat kein g\u00F6ltiges Format.
validation.general.elga.mandateservice.valid=Die EntityID {0} zum ELGA Vertretungsservice hat kein g\u00F6ltiges Format.
validation.general.szrgw.url.valid=Die URL {0} des zentralen eIDAS Connectors hat kein g\u00F6ltiges Format.
+validation.general.eid.url.valid=Die URL {0} zum E-ID System hat kein g\u00F6ltiges Format.
validation.general.moasp.auth.transformation.empty=Die Transformation f\u00F6r den Authentfizierungsblock ist leer.
validation.general.moasp.auth.transformation.valid=Die Transformation f\u00F6r den Authentfizierungsblock in der Zeile {0} enth\u00E4lt ein ung\u00FCltiges Zeichen. Folgende Zeichen sind nicht erlaubt\: {1}
validation.general.moasp.auth.trustprofile.empty=Das TrustProfile zur Pr\u00F6fung des Authentfizierungsblock ist leer.
diff --git a/id/ConfigWebTool/src/main/resources/applicationResources_en.properties b/id/ConfigWebTool/src/main/resources/applicationResources_en.properties
index f49bbfdc8..6d0a89a64 100644
--- a/id/ConfigWebTool/src/main/resources/applicationResources_en.properties
+++ b/id/ConfigWebTool/src/main/resources/applicationResources_en.properties
@@ -153,6 +153,7 @@ webpages.moaconfig.services.header=External Services
webpages.moaconfig.services.mandates=Online-Mandate Service URLs (CSV)
webpages.moaconfig.services.szrgw=Central national eIDAS Conenctor URLs (CSV)
webpages.moaconfig.services.elgamandateservice=ELGA Mandate Service EntityIDs (CSV)
+webpages.moaconfig.services.eidsystemservice=E-ID System EntityIDs (CSV)
webpages.moaconfig.sso.header=Single Sign-On
webpages.moaconfig.sso.PublicUrl=SSO Service URL-Prefix
webpages.moaconfig.sso.FriendlyName=SSO Service Name
@@ -269,14 +270,20 @@ webpages.oaconfig.general.aditional.useUTC=Use UTC time
webpages.oaconfig.general.aditional.calculateHPI="TODO!"
webpages.oaconfig.general.isHideBPKAuthBlock=Hide bPK/wbPK from AuthBlock
-webpages.oaconfig.general.neweid.header=Demo-mode to simulate new Austrian eID
-webpages.oaconfig.general.neweid.activate=Activate demo-mode
+webpages.oaconfig.general.neweid.header=E-ID Mode
+webpages.oaconfig.general.neweid.proxy.activate=Activate E-ID Proxy Mode
+webpages.oaconfig.general.neweid.demo.activate=Activate E-ID Demo Mode
+
+webpages.oaconfig.general.foreign.header=Additional bPKs/foreign-bPKs in case of MOA-ID mode
webpages.oaconfig.general.foreign.sectors=Sectors for foreign pseudonyms (CSV)
webpages.oaconfig.general.additionalbpks.sectors=Sectors for additional pseudonyms (CSV)
webpages.oaconfig.general.szrgw.header=Central national eIDAS Connector
webpages.oaconfig.general.szrgw.selected=URL to central eIDAS Connector
+webpages.oaconfig.general.eid.header=Austrian E-ID
+webpages.oaconfig.general.eid.selected=URL to E-ID system
+
webpages.oaconfig.menu.saml1.show=Show SAML1 configuration
webpages.oaconfig.menu.saml1.hidden=Hide SAML1 configuration
webpages.oaconfig.menu.pvp2.show=Show PVP2 configuration
@@ -414,6 +421,7 @@ validation.general.IdentityLinkSigners.valid=IdentityLinkSigner in the line {0}
validation.general.mandateservice.valid=URL {0} for Online-Mandating Service has invalid format.
validation.general.elga.mandateservice.valid=EntityID {0} for ELGA Mandate-Service has invalid format.
validation.general.szrgw.url.valid=URL {0} for central eIDAs Connector has invalid format.
+validation.general.eid.url.valid=URL {0} for E-ID System has invalid format.
validation.general.moasp.auth.transformation.empty=Transformation for authentication block is blank.
validation.general.moasp.auth.transformation.valid=Transformation for authentication block in the line {0} contians forbidden characters. The following characters are not allowed\: {1}
validation.general.moasp.auth.trustprofile.empty=TrustProfile for checking of authentication block is blank.
diff --git a/id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp b/id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp
index 79c66f37c..6d8421b51 100644
--- a/id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp
+++ b/id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp
@@ -69,58 +69,60 @@
</s:checkbox>
-
- <div class="oa_config_block">
- <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.defaultbkus.header", request) %></h3>
-
- <s:textfield name="moaconfig.defaultBKUHandy"
- value="%{moaconfig.defaultBKUHandy}"
- labelposition="left"
- key="webpages.oaconfig.general.bku.handy"
- cssClass="textfield_long">
- </s:textfield>
-
- <s:textfield name="moaconfig.defaultBKULocal"
- value="%{moaconfig.defaultBKULocal}"
- labelposition="left"
- key="webpages.oaconfig.general.bku.local"
- cssClass="textfield_long">
- </s:textfield>
-
- <s:textfield name="moaconfig.defaultBKUOnline"
- value="%{moaconfig.defaultBKUOnline}"
- labelposition="left"
- key="webpages.oaconfig.general.bku.online"
- cssClass="textfield_long">
- </s:textfield>
- </div>
-
- <div class="oa_config_block">
- <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.slrequesttemplates.header", request) %></h3>
+ <s:if test="moaconfig.isMoaidMode()">
+ <div class="oa_config_block">
+ <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.defaultbkus.header", request) %></h3>
- <s:textfield name="moaconfig.SLRequestTemplateHandy"
- value="%{moaconfig.SLRequestTemplateHandy}"
- labelposition="left"
- key="webpages.moaconfig.slrequesttemplates.handy"
- cssClass="textfield_long">
- </s:textfield>
-
- <s:textfield name="moaconfig.SLRequestTemplateLocal"
- value="%{moaconfig.SLRequestTemplateLocal}"
- labelposition="left"
- key="webpages.moaconfig.slrequesttemplates.local"
- cssClass="textfield_long">
- </s:textfield>
-
- <s:textfield name="moaconfig.SLRequestTemplateOnline"
- value="%{moaconfig.SLRequestTemplateOnline}"
- labelposition="left"
- key="webpages.moaconfig.slrequesttemplates.online"
- cssClass="textfield_long">
- </s:textfield>
+ <s:textfield name="moaconfig.defaultBKUHandy"
+ value="%{moaconfig.defaultBKUHandy}"
+ labelposition="left"
+ key="webpages.oaconfig.general.bku.handy"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ <s:textfield name="moaconfig.defaultBKULocal"
+ value="%{moaconfig.defaultBKULocal}"
+ labelposition="left"
+ key="webpages.oaconfig.general.bku.local"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ <s:textfield name="moaconfig.defaultBKUOnline"
+ value="%{moaconfig.defaultBKUOnline}"
+ labelposition="left"
+ key="webpages.oaconfig.general.bku.online"
+ cssClass="textfield_long">
+ </s:textfield>
+ </div>
- </div>
-
+ <div class="oa_config_block">
+ <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.slrequesttemplates.header", request) %></h3>
+
+ <s:textfield name="moaconfig.SLRequestTemplateHandy"
+ value="%{moaconfig.SLRequestTemplateHandy}"
+ labelposition="left"
+ key="webpages.moaconfig.slrequesttemplates.handy"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ <s:textfield name="moaconfig.SLRequestTemplateLocal"
+ value="%{moaconfig.SLRequestTemplateLocal}"
+ labelposition="left"
+ key="webpages.moaconfig.slrequesttemplates.local"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ <s:textfield name="moaconfig.SLRequestTemplateOnline"
+ value="%{moaconfig.SLRequestTemplateOnline}"
+ labelposition="left"
+ key="webpages.moaconfig.slrequesttemplates.online"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ </div>
+ </s:if>
+
+
<div class="oa_config_block">
<h3><%=LanguageHelper.getGUIString("webpages.moaconfig.certificates.header", request) %></h3>
@@ -156,177 +158,204 @@
key="webpages.moaconfig.timeout.assertion"
cssClass="textfield_long">
</s:textfield>
- <s:textfield name="moaconfig.timeoutMOASessionCreated"
- value="%{moaconfig.timeoutMOASessionCreated}"
- labelposition="left"
- key="webpages.moaconfig.timeout.MOASessionCreated"
- cssClass="textfield_long">
- </s:textfield>
- <s:textfield name="moaconfig.timeoutMOASessionUpdated"
- value="%{moaconfig.timeoutMOASessionUpdated}"
- labelposition="left"
- key="webpages.moaconfig.timeout.MOASessionUpdated"
- cssClass="textfield_long">
- </s:textfield>
-
- </div>
-
- <div class="oa_config_block">
- <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.moasp.header", request) %></h3>
-
- <s:textfield name="moaconfig.moaspssIdlTrustProfile"
- value="%{moaconfig.moaspssIdlTrustProfile}"
- labelposition="left"
- key="webpages.moaconfig.moasp.idltrustprofile"
- cssClass="textfield_long">
- </s:textfield>
-
- <s:textfield name="moaconfig.moaspssIdlTrustProfileTest"
- value="%{moaconfig.moaspssIdlTrustProfileTest}"
- labelposition="left"
- key="webpages.moaconfig.moasp.idltrustprofile.test"
- cssClass="textfield_long">
- </s:textfield>
-<%-- <s:textarea name="moaconfig.identityLinkSigners"
- value="%{moaconfig.identityLinkSigners}"
- labelposition="left"
- key="webpages.moaconfig.identitylinksigners"
- cssClass="textfield_large">
- </s:textarea> --%>
-
- <s:textfield name="moaconfig.moaspssAuthTrustProfile"
- value="%{moaconfig.moaspssAuthTrustProfile}"
- labelposition="left"
- key="webpages.moaconfig.moasp.authtrustprofile"
- cssClass="textfield_long">
- </s:textfield>
-
- <s:textfield name="moaconfig.moaspssAuthTrustProfileTest"
- value="%{moaconfig.moaspssAuthTrustProfileTest}"
- labelposition="left"
- key="webpages.moaconfig.moasp.authtrustprofile.test"
- cssClass="textfield_long">
- </s:textfield>
-
-
-<%-- <s:textarea name="moaconfig.moaspssAuthTransformations"
- value="%{moaconfig.moaspssAuthTransformations}"
- labelposition="left"
- key="webpages.moaconfig.moasp.authblocktransform"
- cssClass="textfield_large">
- </s:textarea> --%>
- <s:textfield name="moaconfig.moaspssAuthTransformations"
- value="%{moaconfig.moaspssAuthTransformations}"
- labelposition="left"
- key="webpages.moaconfig.moasp.authblocktransform"
- cssClass="textfield_long">
- </s:textfield>
+ <s:if test="moaconfig.isMoaidMode()">
+ <s:textfield name="moaconfig.timeoutMOASessionCreated"
+ value="%{moaconfig.timeoutMOASessionCreated}"
+ labelposition="left"
+ key="webpages.moaconfig.timeout.MOASessionCreated"
+ cssClass="textfield_long">
+ </s:textfield>
+ <s:textfield name="moaconfig.timeoutMOASessionUpdated"
+ value="%{moaconfig.timeoutMOASessionUpdated}"
+ labelposition="left"
+ key="webpages.moaconfig.timeout.MOASessionUpdated"
+ cssClass="textfield_long">
+ </s:textfield>
+ </s:if>
+ <s:else>
+ <s:hidden name="moaconfig.timeoutMOASessionCreated"
+ value="300">
+ </s:hidden>
+ <s:hidden name="moaconfig.timeoutMOASessionUpdated"
+ value="300">
+ </s:hidden>
+ </s:else>
-<%-- <s:textfield name="moaconfig.moaspssURL"
- value="%{moaconfig.moaspssURL}"
- labelposition="left"
- key="webpages.moaconfig.moasp.url"
- cssClass="textfield_long">
- </s:textfield> --%>
</div>
- <div class="oa_config_block">
- <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.services.header", request) %></h3>
- <s:textarea name="moaconfig.mandateURL"
- value="%{moaconfig.mandateURL}"
- labelposition="left"
- key="webpages.moaconfig.services.mandates"
- cssClass="textfield_long">
- </s:textarea>
- <s:textarea name="moaconfig.szrgwURL"
- value="%{moaconfig.szrgwURL}"
- labelposition="left"
- key="webpages.moaconfig.services.szrgw"
- cssClass="textfield_long">
- </s:textarea>
- <s:textarea name="moaconfig.elgaMandateServiceURL"
- value="%{moaconfig.elgaMandateServiceURL}"
- labelposition="left"
- key="webpages.moaconfig.services.elgamandateservice"
- cssClass="textfield_long">
- </s:textarea>
- </div>
+ <s:if test="moaconfig.isMoaidMode()">
+ <div class="oa_config_block">
+ <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.moasp.header", request) %></h3>
+
+ <s:textfield name="moaconfig.moaspssIdlTrustProfile"
+ value="%{moaconfig.moaspssIdlTrustProfile}"
+ labelposition="left"
+ key="webpages.moaconfig.moasp.idltrustprofile"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ <s:textfield name="moaconfig.moaspssIdlTrustProfileTest"
+ value="%{moaconfig.moaspssIdlTrustProfileTest}"
+ labelposition="left"
+ key="webpages.moaconfig.moasp.idltrustprofile.test"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ <%-- <s:textarea name="moaconfig.identityLinkSigners"
+ value="%{moaconfig.identityLinkSigners}"
+ labelposition="left"
+ key="webpages.moaconfig.identitylinksigners"
+ cssClass="textfield_large">
+ </s:textarea> --%>
+
+ <s:textfield name="moaconfig.moaspssAuthTrustProfile"
+ value="%{moaconfig.moaspssAuthTrustProfile}"
+ labelposition="left"
+ key="webpages.moaconfig.moasp.authtrustprofile"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ <s:textfield name="moaconfig.moaspssAuthTrustProfileTest"
+ value="%{moaconfig.moaspssAuthTrustProfileTest}"
+ labelposition="left"
+ key="webpages.moaconfig.moasp.authtrustprofile.test"
+ cssClass="textfield_long">
+ </s:textfield>
+
+
+ <%-- <s:textarea name="moaconfig.moaspssAuthTransformations"
+ value="%{moaconfig.moaspssAuthTransformations}"
+ labelposition="left"
+ key="webpages.moaconfig.moasp.authblocktransform"
+ cssClass="textfield_large">
+ </s:textarea> --%>
+ <s:textfield name="moaconfig.moaspssAuthTransformations"
+ value="%{moaconfig.moaspssAuthTransformations}"
+ labelposition="left"
+ key="webpages.moaconfig.moasp.authblocktransform"
+ cssClass="textfield_long">
+ </s:textfield>
+
+ <%-- <s:textfield name="moaconfig.moaspssURL"
+ value="%{moaconfig.moaspssURL}"
+ labelposition="left"
+ key="webpages.moaconfig.moasp.url"
+ cssClass="textfield_long">
+ </s:textfield> --%>
+
+ </div>
+ </s:if>
- <div class="oa_config_block" >
- <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.sso.header", request) %></h3>
-<%-- <s:textfield name="moaconfig.ssoPublicUrl"
- value="%{moaconfig.ssoPublicUrl}"
- labelposition="left"
- key="webpages.moaconfig.sso.PublicUrl"
- cssClass="textfield_long">
- </s:textfield> --%>
- <s:textfield name="moaconfig.ssoFriendlyName"
- value="%{moaconfig.ssoFriendlyName}"
- labelposition="left"
- key="webpages.moaconfig.sso.FriendlyName"
- cssClass="textfield_long">
- </s:textfield>
- <s:textfield name="moaconfig.ssoTarget "
- value="%{moaconfig.ssoTarget }"
- labelposition="left"
- key="webpages.moaconfig.services.sso.Target"
- cssClass="textfield_long">
- </s:textfield>
- <s:textarea name="moaconfig.ssoSpecialText"
- value="%{moaconfig.ssoSpecialText}"
- labelposition="left"
- key="webpages.moaconfig.services.sso.SpecialText"
- cssClass="textfield_large">
- </s:textarea>
- </div>
<div class="oa_config_block">
- <h3><%=LanguageHelper.getGUIString("webpages.oaconfig.stork.header", request) %></h3>
- <s:select list="storkconfig.allowedLoALevels"
- value="%{storkconfig.defaultQaa}"
- name="storkconfig.defaultQaa"
- key="webpages.moaconfig.stork.qaa.default"
- labelposition="left"
- cssClass="textfield_long" />
- <h4><%=LanguageHelper.getGUIString("webpages.moaconfig.stork.pepslist", request) %></h4>
- <table id="stork_pepslist">
- <tr><td>Country Shortcode</td><td style="text-align:center;">PEPS URL</td><td>Supports XMLEncryption</td></tr>
- <s:iterator value="storkconfig.cpepslist" status="stat">
- <tr>
- <td style="display:none;"><s:textfield name="storkconfig.cpepslist[%{#stat.index}].hjid" value="%{hjid}" cssStyle="display:none;"/></td>
- <s:if test="%{countryCode == 'CC'}">
- <td><s:textfield name="storkconfig.cpepslist[%{#stat.index}].countryCode" value="%{countryCode}" cssClass="textfield_PEPS_CC"/></td>
- </s:if>
- <s:else>
- <td><s:property value="%{countryCode}" /></td>
- </s:else>
- <td><s:textfield name="storkconfig.cpepslist[%{#stat.index}].URL" value="%{URL}" cssClass="textfield_long"/></td>
- <td><s:checkbox name="storkconfig.cpepslist[%{#stat.index}].supportsXMLSignature" value="%{supportsXMLSignature}" /></td>
- <td><input class="button_narrow" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.removepeps", request) %>" onclick='this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);'/></td>
- </tr>
- </s:iterator>
- <s:if test="%{storkconfig.cpepslist == null || storkconfig.cpepslist.isEmpty}">
- <tr><td><s:textfield name="storkconfig.cpepslist[0].countryCode" value="CC" cssClass="textfield_PEPS_CC"/></td>
- <td><s:textfield name="storkconfig.cpepslist[0].URL" value="http://" cssClass="textfield_long"/></td>
- <td><s:checkbox name="storkconfig.cpepslist[0].supportsXMLSignature" value="true" /></td>
- <td><input class="button_narrow" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.removepeps", request) %>" onclick='this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);'/></td></tr>
- </s:if>
- </table>
- <input class="oa_buttons" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.newpeps", request) %>" onclick='newPeps();' />
- <h4><%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.heading", request) %></h4>
- <table id="stork_attributelist">
- <tr><td><%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.heading.name", request) %></td><td><%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.heading.mandatory", request) %></td></tr>
- <s:iterator value="storkconfig.attributes" status="stat">
- <tr><td><s:textfield name="storkconfig.attributes[%{#stat.index}].name" value="%{name}"/></td>
- <td><s:checkbox name="storkconfig.attributes[%{#stat.index}].mandatory" value="%{mandatory}" /></td>
- <td><input class="button_narrow" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.remove", request) %>" onclick='this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);'/></td></tr>
- </s:iterator>
- </table>
- <input class="oa_buttons" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.new", request) %>" onclick='newStorkAttribute();' />
+ <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.services.header", request) %></h3>
+
+ <s:if test="moaconfig.isMoaidMode()">
+ <s:textarea name="moaconfig.mandateURL"
+ value="%{moaconfig.mandateURL}"
+ labelposition="left"
+ key="webpages.moaconfig.services.mandates"
+ cssClass="textfield_long">
+ </s:textarea>
+ <s:textarea name="moaconfig.szrgwURL"
+ value="%{moaconfig.szrgwURL}"
+ labelposition="left"
+ key="webpages.moaconfig.services.szrgw"
+ cssClass="textfield_long">
+ </s:textarea>
+ <s:textarea name="moaconfig.elgaMandateServiceURL"
+ value="%{moaconfig.elgaMandateServiceURL}"
+ labelposition="left"
+ key="webpages.moaconfig.services.elgamandateservice"
+ cssClass="textfield_long">
+ </s:textarea>
+ </s:if>
+
+ <s:textarea name="moaconfig.eidSystemServiceURL"
+ value="%{moaconfig.eidSystemServiceURL}"
+ labelposition="left"
+ key="webpages.moaconfig.services.eidsystemservice"
+ cssClass="textfield_long">
+ </s:textarea>
</div>
+ <s:if test="moaconfig.isMoaidMode()">
+ <div class="oa_config_block" >
+ <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.sso.header", request) %></h3>
+ <%-- <s:textfield name="moaconfig.ssoPublicUrl"
+ value="%{moaconfig.ssoPublicUrl}"
+ labelposition="left"
+ key="webpages.moaconfig.sso.PublicUrl"
+ cssClass="textfield_long">
+ </s:textfield> --%>
+ <s:textfield name="moaconfig.ssoFriendlyName"
+ value="%{moaconfig.ssoFriendlyName}"
+ labelposition="left"
+ key="webpages.moaconfig.sso.FriendlyName"
+ cssClass="textfield_long">
+ </s:textfield>
+ <s:textfield name="moaconfig.ssoTarget "
+ value="%{moaconfig.ssoTarget }"
+ labelposition="left"
+ key="webpages.moaconfig.services.sso.Target"
+ cssClass="textfield_long">
+ </s:textfield>
+ <s:textarea name="moaconfig.ssoSpecialText"
+ value="%{moaconfig.ssoSpecialText}"
+ labelposition="left"
+ key="webpages.moaconfig.services.sso.SpecialText"
+ cssClass="textfield_large">
+ </s:textarea>
+ </div>
+
+ <div class="oa_config_block">
+ <h3><%=LanguageHelper.getGUIString("webpages.oaconfig.stork.header", request) %></h3>
+ <s:select list="storkconfig.allowedLoALevels"
+ value="%{storkconfig.defaultQaa}"
+ name="storkconfig.defaultQaa"
+ key="webpages.moaconfig.stork.qaa.default"
+ labelposition="left"
+ cssClass="textfield_long" />
+ <h4><%=LanguageHelper.getGUIString("webpages.moaconfig.stork.pepslist", request) %></h4>
+ <table id="stork_pepslist">
+ <tr><td>Country Shortcode</td><td style="text-align:center;">PEPS URL</td><td>Supports XMLEncryption</td></tr>
+ <s:iterator value="storkconfig.cpepslist" status="stat">
+ <tr>
+ <td style="display:none;"><s:textfield name="storkconfig.cpepslist[%{#stat.index}].hjid" value="%{hjid}" cssStyle="display:none;"/></td>
+ <s:if test="%{countryCode == 'CC'}">
+ <td><s:textfield name="storkconfig.cpepslist[%{#stat.index}].countryCode" value="%{countryCode}" cssClass="textfield_PEPS_CC"/></td>
+ </s:if>
+ <s:else>
+ <td><s:property value="%{countryCode}" /></td>
+ </s:else>
+ <td><s:textfield name="storkconfig.cpepslist[%{#stat.index}].URL" value="%{URL}" cssClass="textfield_long"/></td>
+ <td><s:checkbox name="storkconfig.cpepslist[%{#stat.index}].supportsXMLSignature" value="%{supportsXMLSignature}" /></td>
+ <td><input class="button_narrow" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.removepeps", request) %>" onclick='this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);'/></td>
+ </tr>
+ </s:iterator>
+ <s:if test="%{storkconfig.cpepslist == null || storkconfig.cpepslist.isEmpty}">
+ <tr><td><s:textfield name="storkconfig.cpepslist[0].countryCode" value="CC" cssClass="textfield_PEPS_CC"/></td>
+ <td><s:textfield name="storkconfig.cpepslist[0].URL" value="http://" cssClass="textfield_long"/></td>
+ <td><s:checkbox name="storkconfig.cpepslist[0].supportsXMLSignature" value="true" /></td>
+ <td><input class="button_narrow" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.removepeps", request) %>" onclick='this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);'/></td></tr>
+ </s:if>
+ </table>
+ <input class="oa_buttons" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.newpeps", request) %>" onclick='newPeps();' />
+ <h4><%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.heading", request) %></h4>
+ <table id="stork_attributelist">
+ <tr><td><%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.heading.name", request) %></td><td><%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.heading.mandatory", request) %></td></tr>
+ <s:iterator value="storkconfig.attributes" status="stat">
+ <tr><td><s:textfield name="storkconfig.attributes[%{#stat.index}].name" value="%{name}"/></td>
+ <td><s:checkbox name="storkconfig.attributes[%{#stat.index}].mandatory" value="%{mandatory}" /></td>
+ <td><input class="button_narrow" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.remove", request) %>" onclick='this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);'/></td></tr>
+ </s:iterator>
+ </table>
+ <input class="oa_buttons" type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.attributes.new", request) %>" onclick='newStorkAttribute();' />
+ </div>
+ </s:if>
+
<div class="oa_config_block">
<h3><%=LanguageHelper.getGUIString("webpages.moaconfig.protocols.header", request) %></h3>
@@ -338,18 +367,21 @@
key="webpages.moaconfig.protocols.legacy.saml1"
cssClass="checkbox">
</s:checkbox>
- <s:checkbox name="moaconfig.protocolActivePVP21"
- value="%{moaconfig.protocolActivePVP21}"
- labelposition="right"
- key="webpages.moaconfig.protocols.legacy.pvp2"
- cssClass="checkbox">
- </s:checkbox>
- <s:checkbox name="moaconfig.protocolActiveOAuth"
- value="%{moaconfig.protocolActiveOAuth}"
- labelposition="right"
- key="webpages.moaconfig.protocols.oauth"
- cssClass="checkbox">
- </s:checkbox>
+
+ <s:if test="moaconfig.isMoaidMode()">
+ <s:checkbox name="moaconfig.protocolActivePVP21"
+ value="%{moaconfig.protocolActivePVP21}"
+ labelposition="right"
+ key="webpages.moaconfig.protocols.legacy.pvp2"
+ cssClass="checkbox">
+ </s:checkbox>
+ <s:checkbox name="moaconfig.protocolActiveOAuth"
+ value="%{moaconfig.protocolActiveOAuth}"
+ labelposition="right"
+ key="webpages.moaconfig.protocols.oauth"
+ cssClass="checkbox">
+ </s:checkbox>
+ </s:if>
</div>
<br>
@@ -362,12 +394,15 @@
key="webpages.moaconfig.protocols.legacy.saml1"
cssClass="checkbox">
</s:checkbox>
- <s:checkbox name="moaconfig.legacy_pvp2"
- value="%{moaconfig.legacy_pvp2}"
- labelposition="right"
- key="webpages.moaconfig.protocols.legacy.pvp2"
- cssClass="checkbox">
- </s:checkbox>
+
+ <s:if test="moaconfig.isMoaidMode()">
+ <s:checkbox name="moaconfig.legacy_pvp2"
+ value="%{moaconfig.legacy_pvp2}"
+ labelposition="right"
+ key="webpages.moaconfig.protocols.legacy.pvp2"
+ cssClass="checkbox">
+ </s:checkbox>
+ </s:if>
</div>
<br>
@@ -461,24 +496,25 @@
</div>
</div>
- <div class="oa_config_block">
- <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.sl.transormations.header", request) %></h3>
-
- <s:iterator value="%{moaconfig.fileUploadFileName}" var="fileName">
- <s:label key="webpages.moaconfig.sl.transormations.filename" value="%{fileName}"/>
-
- <div id="pvp2_certificate_upload">
- <s:file name="moaconfig.fileUpload" key="webpages.moaconfig.sl.transormations.upload" cssClass="textfield_long"></s:file>
- </div>
- </s:iterator>
+ <s:if test="moaconfig.isMoaidMode()">
+ <div class="oa_config_block">
+ <h3><%=LanguageHelper.getGUIString("webpages.moaconfig.sl.transormations.header", request) %></h3>
+
+ <s:iterator value="%{moaconfig.fileUploadFileName}" var="fileName">
+ <s:label key="webpages.moaconfig.sl.transormations.filename" value="%{fileName}"/>
- <s:if test="moaconfig.fileUploadFileName.size() == 0">
<div id="pvp2_certificate_upload">
<s:file name="moaconfig.fileUpload" key="webpages.moaconfig.sl.transormations.upload" cssClass="textfield_long"></s:file>
- </div>
- </s:if>
-
- </div>
+ </div>
+ </s:iterator>
+
+ <s:if test="moaconfig.fileUploadFileName.size() == 0">
+ <div id="pvp2_certificate_upload">
+ <s:file name="moaconfig.fileUpload" key="webpages.moaconfig.sl.transormations.upload" cssClass="textfield_long"></s:file>
+ </div>
+ </s:if>
+ </div>
+ </s:if>
<br>
<br>
diff --git a/id/ConfigWebTool/src/main/webapp/jsp/editOAGeneral.jsp b/id/ConfigWebTool/src/main/webapp/jsp/editOAGeneral.jsp
index cc4220d0e..feab86593 100644
--- a/id/ConfigWebTool/src/main/webapp/jsp/editOAGeneral.jsp
+++ b/id/ConfigWebTool/src/main/webapp/jsp/editOAGeneral.jsp
@@ -46,12 +46,14 @@
<s:include value="snippets/OA/authentication.jsp"></s:include>
- <s:include value="snippets/OA/bPKDecryption.jsp"></s:include>
+ <s:if test="authOA.isMoaidMode()">
+ <s:include value="snippets/OA/bPKDecryption.jsp"></s:include>
- <s:include value="snippets/OA/sso.jsp"></s:include>
+ <s:include value="snippets/OA/sso.jsp"></s:include>
- <s:include value="snippets/OA/stork.jsp"></s:include>
-
+ <s:include value="snippets/OA/stork.jsp"></s:include>
+ </s:if>
+
<div class="oa_config_block">
<h3><%=LanguageHelper.getGUIString("webpages.oaconfig.protocols.header", request) %></h3>
@@ -64,35 +66,40 @@
</button>
</s:if>
- <button type="button" class="oa_buttons" onclick="oaPVP2();" id="button_pvp2_show">
- <%=LanguageHelper.getGUIString("webpages.oaconfig.menu.pvp2.show", request) %>
- </button>
- <button type="button" class="oa_buttons" onclick="oaPVP2();" id="button_pvp2_hidden">
- <%=LanguageHelper.getGUIString("webpages.oaconfig.menu.pvp2.hidden", request) %>
- </button>
-
- <button type="button" class="oa_buttons" onclick="oaOAuth20();" id="button_oauth20_show">
- <%=LanguageHelper.getGUIString("webpages.oaconfig.menu.oauth20.show", request) %>
- </button>
- <button type="button" style="display:none" class="oa_buttons" onclick="oaOAuth20();" id="button_oauth20_hidden">
- <%=LanguageHelper.getGUIString("webpages.oaconfig.menu.oauth20.hidden", request) %>
- </button>
-
+ <s:if test="authOA.isMoaidMode()">
+ <button type="button" class="oa_buttons" onclick="oaPVP2();" id="button_pvp2_show">
+ <%=LanguageHelper.getGUIString("webpages.oaconfig.menu.pvp2.show", request) %>
+ </button>
+ <button type="button" class="oa_buttons" onclick="oaPVP2();" id="button_pvp2_hidden">
+ <%=LanguageHelper.getGUIString("webpages.oaconfig.menu.pvp2.hidden", request) %>
+ </button>
+
+ <button type="button" class="oa_buttons" onclick="oaOAuth20();" id="button_oauth20_show">
+ <%=LanguageHelper.getGUIString("webpages.oaconfig.menu.oauth20.show", request) %>
+ </button>
+ <button type="button" style="display:none" class="oa_buttons" onclick="oaOAuth20();" id="button_oauth20_hidden">
+ <%=LanguageHelper.getGUIString("webpages.oaconfig.menu.oauth20.hidden", request) %>
+ </button>
+ </s:if>
<s:include value="snippets/OA/saml1.jsp"></s:include>
- <s:include value="snippets/OA/pvp2.jsp">
- <s:param name="hideBlock">hidden</s:param>
- </s:include>
+ <s:if test="authOA.isMoaidMode()">
+ <s:include value="snippets/OA/pvp2.jsp">
+ <s:param name="hideBlock">hidden</s:param>
+ </s:include>
- <s:include value="snippets/OA/openIDConnect.jsp"></s:include>
+ <s:include value="snippets/OA/openIDConnect.jsp"></s:include>
+ </s:if>
</div>
- <s:include value="snippets/OA/formCustomization.jsp"></s:include>
+ <s:if test="authOA.isMoaidMode()">
+ <s:include value="snippets/OA/formCustomization.jsp"></s:include>
- <s:include value="snippets/OA/revisionslog.jsp"></s:include>
+ <s:include value="snippets/OA/revisionslog.jsp"></s:include>
+ </s:if>
<s:hidden name="formID"
value="%{formID}"></s:hidden>
diff --git a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/authentication.jsp b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/authentication.jsp
index d2668e264..7a54df554 100644
--- a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/authentication.jsp
+++ b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/authentication.jsp
@@ -3,8 +3,8 @@
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
-
- <s:if test="authUser.isAdmin()">
+ <s:if test="authOA.isMoaidMode()">
+ <s:if test="authUser.isAdmin()">
<div class="oa_config_block">
<h3><%=LanguageHelper.getGUIString("webpages.oaconfig.general.bku.header", request) %></h3>
@@ -167,16 +167,26 @@
</div>
<div class="oa_config_block">
- <h3><%=LanguageHelper.getGUIString("webpages.oaconfig.general.szrgw.header", request) %></h3>
-
+ <h3><%=LanguageHelper.getGUIString("webpages.oaconfig.general.szrgw.header", request) %></h3>
<s:select list="authOA.szrgwServicesList"
key="webpages.oaconfig.general.szrgw.selected"
labelposition="left"
cssClass="selectfield_long"
value="%{authOA.szrgwServiceSelected}"
name="authOA.szrgwServiceSelected">
- </s:select>
-
- </div>
+ </s:select>
+ </div>
+ </s:if>
+
+ <div class="oa_config_block">
+ <h3><%=LanguageHelper.getGUIString("webpages.oaconfig.general.eid.header", request) %></h3>
+ <s:select list="authOA.eidServicesList"
+ key="webpages.oaconfig.general.eid.selected"
+ labelposition="left"
+ cssClass="selectfield_long"
+ value="%{authOA.eidServiceSelected}"
+ name="authOA.eidServiceSelected">
+ </s:select>
+ </div>
</html> \ No newline at end of file
diff --git a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/targetConfiguration.jsp b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/targetConfiguration.jsp
index 367dc445d..1f7adea01 100644
--- a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/targetConfiguration.jsp
+++ b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/targetConfiguration.jsp
@@ -113,35 +113,47 @@
</s:if>
- <div id="oa_config_foreignbPKArea" class="oa_config_block">
+ <div id="oa_config_EID_proxy_mode" class="oa_config_block">
<h3><%=LanguageHelper.getGUIString("webpages.oaconfig.general.neweid.header", request) %></h3>
+ <s:checkbox name="targetConfig.eidProxyActive"
+ value="%{targetConfig.eidProxyActive}"
+ labelposition="left"
+ key="webpages.oaconfig.general.neweid.proxy.activate"
+ cssClass="checkbox">
+ </s:checkbox>
+
<s:checkbox name="targetConfig.eidDemoActive"
value="%{targetConfig.eidDemoActive}"
labelposition="left"
- key="webpages.oaconfig.general.neweid.activate"
+ key="webpages.oaconfig.general.neweid.demo.activate"
cssClass="checkbox">
- </s:checkbox>
-
- <s:textarea name="targetConfig.foreignbPKTargets"
- value="%{targetConfig.foreignbPKTargets}"
- labelposition="left"
- key="webpages.oaconfig.general.foreign.sectors"
- cssClass="textfield_long"
- rows="6"
- requiredLabel="true"
- style="height:120px;">
- </s:textarea>
-
- <s:textarea name="targetConfig.additionalbPKTargets"
- value="%{targetConfig.additionalbPKTargets}"
- labelposition="left"
- key="webpages.oaconfig.general.additionalbpks.sectors"
- cssClass="textfield_long"
- rows="6"
- requiredLabel="true"
- style="height:120px;">
- </s:textarea>
+ </s:checkbox>
+ </div>
+
+ <div id="oa_config_foreignbPKArea" class="oa_config_block">
+ <h3><%=LanguageHelper.getGUIString("webpages.oaconfig.general.foreign.header", request) %></h3>
+ <s:if test="authOA.isMoaidMode()">
+ <s:textarea name="targetConfig.foreignbPKTargets"
+ value="%{targetConfig.foreignbPKTargets}"
+ labelposition="left"
+ key="webpages.oaconfig.general.foreign.sectors"
+ cssClass="textfield_long"
+ rows="6"
+ requiredLabel="true"
+ style="height:120px;">
+ </s:textarea>
+
+ <s:textarea name="targetConfig.additionalbPKTargets"
+ value="%{targetConfig.additionalbPKTargets}"
+ labelposition="left"
+ key="webpages.oaconfig.general.additionalbpks.sectors"
+ cssClass="textfield_long"
+ rows="6"
+ requiredLabel="true"
+ style="height:120px;">
+ </s:textarea>
+ </s:if>
</div>
diff --git a/id/ConfigWebTool/src/main/webapp/jsp/snippets/main_menu.jsp b/id/ConfigWebTool/src/main/webapp/jsp/snippets/main_menu.jsp
index 95d6de912..f4c377d9c 100644
--- a/id/ConfigWebTool/src/main/webapp/jsp/snippets/main_menu.jsp
+++ b/id/ConfigWebTool/src/main/webapp/jsp/snippets/main_menu.jsp
@@ -18,10 +18,14 @@
</div>
<s:if test="authUser.isAdmin()">
- <div class="menu_element">
- <s:url action="listallinterfederationidps" var="interfederationConfig" namespace="/secure"/>
- <a href="<s:property value="#interfederationConfig" />"><%=LanguageHelper.getGUIString("webpages.mainpage.menu.interfederation", request) %></a>
- </div>
+
+ <s:if test="authOA.isMoaidMode()">
+ <div class="menu_element">
+ <s:url action="listallinterfederationidps" var="interfederationConfig" namespace="/secure"/>
+ <a href="<s:property value="#interfederationConfig" />"><%=LanguageHelper.getGUIString("webpages.mainpage.menu.interfederation", request) %></a>
+ </div>
+ </s:if>
+
<div class="menu_element">
<s:url action="loadGeneralConfig" var="generalConfig" namespace="/secure"/>
<a href="<s:property value="#generalConfig" />"><%=LanguageHelper.getGUIString("webpages.mainpage.menu.general.config.moaid", request) %></a>