diff options
| author | Alexander Marsalek <amarsalek@iaik.tugraz.at> | 2014-07-08 10:55:12 +0200 | 
|---|---|---|
| committer | Alexander Marsalek <amarsalek@iaik.tugraz.at> | 2014-07-08 10:55:12 +0200 | 
| commit | 487db6041f9c215e7d6cb93ed1d5b93ebb607ee3 (patch) | |
| tree | c9302a52902d025c48105a87c9f43d5c2793bf92 /id/ConfigWebTool/src/main/java/at/gv | |
| parent | 9d07e7a6dcd66c0ebff241e4f0113b787fcbcffb (diff) | |
| parent | 49daddb4b7296311aa68fc717dfcb35005e16b3e (diff) | |
| download | moa-id-spss-487db6041f9c215e7d6cb93ed1d5b93ebb607ee3.tar.gz moa-id-spss-487db6041f9c215e7d6cb93ed1d5b93ebb607ee3.tar.bz2 moa-id-spss-487db6041f9c215e7d6cb93ed1d5b93ebb607ee3.zip | |
Merge branch 'moa-2.1-Snapshot' into authnrequest_signrequest_split
Conflicts:
	id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/stork/STORKResponseProcessor.java
	id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd
Diffstat (limited to 'id/ConfigWebTool/src/main/java/at/gv')
3 files changed, 50 insertions, 66 deletions
| diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java index 9e5ba684c..b1e268fef 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java @@ -25,12 +25,14 @@ package at.gv.egovernment.moa.id.configuration.data;  import java.util.ArrayList;  import java.util.List; +import at.gv.egovernment.moa.id.commons.db.ConfigurationDBRead;  import at.gv.egovernment.moa.id.commons.db.dao.config.AuthComponentGeneral;  import at.gv.egovernment.moa.id.commons.db.dao.config.CPEPS;  import at.gv.egovernment.moa.id.commons.db.dao.config.ForeignIdentities;  import at.gv.egovernment.moa.id.commons.db.dao.config.MOAIDConfiguration;  import at.gv.egovernment.moa.id.commons.db.dao.config.STORK;  import at.gv.egovernment.moa.id.commons.db.dao.config.StorkAttribute; +  import org.apache.log4j.Logger;  public class GeneralStorkConfig { @@ -88,6 +90,24 @@ public class GeneralStorkConfig {  	}  	public List<CPEPS> getCpepslist() { +		if (null == cpepslist) +			return null; + +		MOAIDConfiguration dbconfig = ConfigurationDBRead.getMOAIDConfiguration(); + +		List<CPEPS> cpepss = dbconfig.getAuthComponentGeneral().getForeignIdentities().getSTORK().getCPEPS(); + +		// make CountryCode "readonly" +		for (CPEPS newone : cpepslist) { +			for (CPEPS current : cpepss) { +				if (null != newone) +					if (current.getHjid().equals(newone.getHjid())) { +						newone.setCountryCode(current.getCountryCode()); +						break; +					} +			} +		} +  		return cpepslist;  	} 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 0a308a354..0f1673c3a 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 @@ -237,20 +237,8 @@ public class EditGeneralConfigAction extends BasicAction {          } catch (Exception ex) {              ex.printStackTrace();          } - -		MOAIDConfiguration oldconfig = ConfigurationDBRead.getMOAIDConfiguration(); -		AuthComponentGeneral oldauth = null; -		if (oldconfig != null) { -			oldauth = oldconfig.getAuthComponentGeneral(); -		} -		 -//		MOAIDConfiguration dbconfig = ConfigurationDBRead.getMOAIDConfiguration();	 -//		if (dbconfig == null) { -//			dbconfig = new MOAIDConfiguration(); -//			isnewconfig = true; -//		} -		MOAIDConfiguration dbconfig = new MOAIDConfiguration(); +		MOAIDConfiguration dbconfig = ConfigurationDBRead.getMOAIDConfiguration();  		AuthComponentGeneral dbauth = dbconfig.getAuthComponentGeneral();  		if (dbauth == null) { @@ -486,23 +474,6 @@ public class EditGeneralConfigAction extends BasicAction {  		dbchainingmodes.setSystemDefaultMode(  				ChainingModeType.fromValue(moaconfig.getDefaultchainigmode())); -		if (oldconfig != null) { -			ChainingModes oldchainigmodes = oldconfig.getChainingModes(); -			if (oldchainigmodes != null) { -				List<TrustAnchor> oldtrustanchor = oldchainigmodes.getTrustAnchor(); -				if (oldtrustanchor != null) { -					List<TrustAnchor> trustanchor = new ArrayList<TrustAnchor>(); -					for (TrustAnchor oldel : oldtrustanchor) { -						TrustAnchor TAel = new TrustAnchor(); -						TAel.setX509IssuerName(oldel.getX509IssuerName()); -						TAel.setX509SerialNumber(oldel.getX509SerialNumber()); -						TAel.setMode(oldel.getMode()); -						trustanchor.add(TAel); -					} -					dbchainingmodes.setTrustAnchor(trustanchor); -				} -			} -		}  		IdentityLinkSigners idlsigners = dbauth.getIdentityLinkSigners();  		if (idlsigners == null) { @@ -525,43 +496,39 @@ public class EditGeneralConfigAction extends BasicAction {  			forcon.setURL(moaconfig.getSzrgwURL());  		} -		//TODO: Set STORK Config!!! -		if (oldauth != null) { -            ForeignIdentities oldforeign = oldauth.getForeignIdentities(); -			if (oldforeign != null) { -				STORK oldstork = oldforeign.getSTORK(); -				if (oldstork == null) -					oldstork = new STORK(); +            ForeignIdentities foreign = dbauth.getForeignIdentities(); +			if (foreign != null) { +				STORK stork = foreign.getSTORK(); +				if (stork == null) +					stork = new STORK();                  try {                  log.error("QAAAA " + storkconfig.getDefaultQaa()); -				oldstork.setQualityAuthenticationAssuranceLevel(storkconfig.getDefaultQaa()); +				stork.setQualityAuthenticationAssuranceLevel(storkconfig.getDefaultQaa());  				if (storkconfig.getAttributes() != null) -					oldstork.setAttributes(storkconfig.getAttributes()); +					stork.setAttributes(storkconfig.getAttributes());  				else -					oldstork.setAttributes((List<StorkAttribute>) (new ArrayList<StorkAttribute>())); +					stork.setAttributes((List<StorkAttribute>) (new ArrayList<StorkAttribute>()));  				if (storkconfig.getCpepslist() != null) -					oldstork.setCPEPS(storkconfig.getCpepslist()); -				 + +					stork.setCPEPS(storkconfig.getCpepslist());  				else -					oldstork.setCPEPS((List<CPEPS>) (new ArrayList<CPEPS>())); +					stork.setCPEPS((List<CPEPS>) (new ArrayList<CPEPS>())); -				dbforeign.setSTORK(oldstork);                  } catch (Exception e) {                      e.printStackTrace();                  }                  try{ -                   log.error("CPEPS LIST: " + storkconfig.getCpepslist().size() ); -                    log.error("CPEPS 1:" + storkconfig.getCpepslist().get(0).getCountryCode() +storkconfig.getCpepslist().get(0).getURL()); +                   log.info("CPEPS LIST: " + storkconfig.getCpepslist().size() ); +                    log.trace("CPEPS 1:" + storkconfig.getCpepslist().get(0).getCountryCode() +storkconfig.getCpepslist().get(0).getURL());                  }   catch (Exception ex) { -                    ex.printStackTrace(); +                    log.info("CPEPS LIST is null");                  }  			} -		}  		if (MiscUtil.isNotEmpty(moaconfig.getMandateURL())) {  			OnlineMandates dbmandate = dbauth.getOnlineMandates(); @@ -604,7 +571,7 @@ public class EditGeneralConfigAction extends BasicAction {  		}  		moaauth.setTrustProfileID(moaconfig.getMoaspssAuthTrustProfile()); -		moaauth.setVerifyTransformsInfoProfileID(moaconfig.getAuthTransformList()); +		moaauth.getVerifyTransformsInfoProfileID().set(0, moaconfig.getAuthTransformList().get(0));  		SecurityLayer seclayertrans = dbauth.getSecurityLayer();  		if (seclayertrans == null) { @@ -621,19 +588,6 @@ public class EditGeneralConfigAction extends BasicAction {  				elem.setTransformation(moatrans.get(key));  				trans.add(elem);  			} -		} else { -			if (oldauth != null) { -				SecurityLayer oldsectrans = oldauth.getSecurityLayer(); -				if (oldsectrans != null) { -					List<TransformsInfoType> oldtranslist = oldsectrans.getTransformsInfo(); -					for (TransformsInfoType oldel : oldtranslist) { -						TransformsInfoType elem = new TransformsInfoType(); -						elem.setFilename(oldel.getFilename()); -						elem.setTransformation(oldel.getTransformation()); -						trans.add(elem); -					}	 -				} -			}  		}  		if (trans.size() > 0)  			seclayertrans.setTransformsInfo(trans); @@ -660,9 +614,6 @@ public class EditGeneralConfigAction extends BasicAction {  			ConfigurationDBUtils.save(dbconfig); -			if (oldconfig != null) -				ConfigurationDBUtils.delete(oldconfig);			 -			  		} catch (MOADatabaseException e) {  			log.warn("MOAID Configuration can not be stored in Database", e);  			return LanguageHelper.getErrorString("error.db.oa.store", request); diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/StorkConfigValidator.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/StorkConfigValidator.java index 8bc916e5a..f7d61653d 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/StorkConfigValidator.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/validation/moaconfig/StorkConfigValidator.java @@ -28,6 +28,10 @@ public class StorkConfigValidator {  		if (form.getCpepslist() != null) {  			for(CPEPS current : form.getCpepslist()) { +				// if an existing record got deleted +				if(null == current) +					continue; +				  				// check country code  				String check = current.getCountryCode();  				if (MiscUtil.isNotEmpty(check)) { @@ -46,7 +50,7 @@ public class StorkConfigValidator {  					errors.add(LanguageHelper.getErrorString("validation.stork.cpeps.empty",  							new Object[] {check}, request ));  				} -	 +  				// check url  				check = current.getURL();  				if (MiscUtil.isNotEmpty(check)) { @@ -60,6 +64,15 @@ public class StorkConfigValidator {  							new Object[] {check}, request ));  				}  			} + +			// ensure uniqueness of country code +			for (CPEPS one : form.getCpepslist()) +				for (CPEPS another : form.getCpepslist()) +					if (null != one && null != another) +						if (!one.equals(another) && one.getCountryCode().equals(another.getCountryCode())) { +							errors.add(LanguageHelper.getErrorString("validation.stork.cpeps.duplicate", request)); +							break; +						}  		}  		// check qaa | 
