diff options
Diffstat (limited to 'id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils')
3 files changed, 145 insertions, 146 deletions
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/ConfigurationEncryptionUtils.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/ConfigurationEncryptionUtils.java index 08cd7c59d..e26e67196 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/ConfigurationEncryptionUtils.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/ConfigurationEncryptionUtils.java @@ -33,47 +33,51 @@ import at.gv.egovernment.moa.logging.Logger; */ public class ConfigurationEncryptionUtils extends AbstractEncrytionUtil { - private static ConfigurationEncryptionUtils instance = null; - private static String key = null; - - public static ConfigurationEncryptionUtils getInstance() { - if (instance == null) { - try { - key = ConfigurationProvider.getInstance().getConfigurationEncryptionKey(); - instance = new ConfigurationEncryptionUtils(); - - } catch (Exception e) { - Logger.warn("MOAConfiguration encryption initialization FAILED.", e); - - } - } - return instance; - } - - /** - * @throws DatabaseEncryptionException - */ - public ConfigurationEncryptionUtils() throws DatabaseEncryptionException { - super(); - - } + private static ConfigurationEncryptionUtils instance = null; + private static String key = null; - /* (non-Javadoc) - * @see at.gv.egovernment.moa.id.util.AbstractEncrytionUtil#getSalt() - */ - @Override - protected String getSalt() { - return "Configuration-Salt"; - - } + public static ConfigurationEncryptionUtils getInstance() { + if (instance == null) { + try { + key = ConfigurationProvider.getInstance().getConfigurationEncryptionKey(); + instance = new ConfigurationEncryptionUtils(); - /* (non-Javadoc) - * @see at.gv.egovernment.moa.id.util.AbstractEncrytionUtil#getKey() - */ - @Override - protected String getKey() { - return key; - - } + } catch (final Exception e) { + Logger.warn("MOAConfiguration encryption initialization FAILED.", e); + + } + } + return instance; + } + + /** + * @throws DatabaseEncryptionException + */ + public ConfigurationEncryptionUtils() throws DatabaseEncryptionException { + super(); + + } + + /* + * (non-Javadoc) + * + * @see at.gv.egovernment.moa.id.util.AbstractEncrytionUtil#getSalt() + */ + @Override + protected String getSalt() { + return "Configuration-Salt"; + + } + + /* + * (non-Javadoc) + * + * @see at.gv.egovernment.moa.id.util.AbstractEncrytionUtil#getKey() + */ + @Override + protected String getKey() { + return key; + + } } diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/SAML2Utils.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/SAML2Utils.java index eca4c05ef..c4a9894ca 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/SAML2Utils.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/SAML2Utils.java @@ -32,7 +32,6 @@ import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transform.TransformerException; -import org.opensaml.Configuration; import org.opensaml.xml.XMLObject; import org.opensaml.xml.XMLObjectBuilder; import org.opensaml.xml.XMLObjectBuilderFactory; @@ -41,59 +40,59 @@ import org.opensaml.xml.io.MarshallingException; public class SAML2Utils { - static { - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - factory.setNamespaceAware(true); - factory.setValidating(false); - try { - builder = factory.newDocumentBuilder(); - } catch (ParserConfigurationException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } + static { + final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + factory.setNamespaceAware(true); + factory.setValidating(false); + try { + builder = factory.newDocumentBuilder(); + } catch (final ParserConfigurationException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } - private static DocumentBuilder builder; + private static DocumentBuilder builder; - public static <T> T createSAMLObject(final Class<T> clazz) { - try { + public static <T> T createSAMLObject(final Class<T> clazz) { + try { - XMLObjectBuilderFactory builderFactory = Configuration - .getBuilderFactory(); + final XMLObjectBuilderFactory builderFactory = org.opensaml.xml.Configuration + .getBuilderFactory(); - QName defaultElementName = (QName) clazz.getDeclaredField( - "DEFAULT_ELEMENT_NAME").get(null); - Map<QName, XMLObjectBuilder> builder = builderFactory.getBuilders(); - Iterator<QName> it = builder.keySet().iterator(); + final QName defaultElementName = (QName) clazz.getDeclaredField( + "DEFAULT_ELEMENT_NAME").get(null); + final Map<QName, XMLObjectBuilder> builder = builderFactory.getBuilders(); + final Iterator<QName> it = builder.keySet().iterator(); - while (it.hasNext()) { - QName qname = it.next(); - if (qname.equals(defaultElementName)) { - System.out.printf("Builder for: %s\n", qname.toString()); - } - } - XMLObjectBuilder xmlBuilder = builderFactory - .getBuilder(defaultElementName); - - T object = (T) xmlBuilder.buildObject(defaultElementName); - return object; - } catch (Throwable e) { - System.out.printf("Failed to create object for: %s\n", - clazz.toString()); - e.printStackTrace(); - return null; - } - } + while (it.hasNext()) { + final QName qname = it.next(); + if (qname.equals(defaultElementName)) { + System.out.printf("Builder for: %s\n", qname.toString()); + } + } + final XMLObjectBuilder xmlBuilder = builderFactory + .getBuilder(defaultElementName); + + final T object = (T) xmlBuilder.buildObject(defaultElementName); + return object; + } catch (final Throwable e) { + System.out.printf("Failed to create object for: %s\n", + clazz.toString()); + e.printStackTrace(); + return null; + } + } + + public static org.w3c.dom.Document asDOMDocument(XMLObject object) throws IOException, + MarshallingException, TransformerException { + final org.w3c.dom.Document document = builder.newDocument(); + final Marshaller out = org.opensaml.xml.Configuration.getMarshallerFactory().getMarshaller( + object); + out.marshall(object, document); + return document; + } - public static org.w3c.dom.Document asDOMDocument(XMLObject object) throws IOException, - MarshallingException, TransformerException { - org.w3c.dom.Document document = builder.newDocument(); - Marshaller out = Configuration.getMarshallerFactory().getMarshaller( - object); - out.marshall(object, document); - return document; - } - // public static SignatureTrustEngine getSignatureKnownKeysTrustEngine() throws ConfigurationException { // MetadataCredentialResolver resolver; // @@ -113,7 +112,5 @@ public class SAML2Utils { // return engine; // // } - - } diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/UserRequestCleaner.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/UserRequestCleaner.java index 5f55a61d5..a78de7362 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/UserRequestCleaner.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/UserRequestCleaner.java @@ -26,68 +26,66 @@ import java.util.Calendar; import java.util.Date; import java.util.List; -import org.apache.log4j.Logger; - import at.gv.egovernment.moa.id.commons.db.dao.config.UserDatabase; import at.gv.egovernment.moa.id.config.webgui.exception.ConfigurationException; import at.gv.egovernment.moa.id.configuration.auth.AuthenticationManager; import at.gv.egovernment.moa.id.configuration.config.ConfigurationProvider; import at.gv.egovernment.moa.id.configuration.helper.DateTimeHelper; +import lombok.extern.slf4j.Slf4j; - +@Slf4j public class UserRequestCleaner implements Runnable { - private static final Logger log = Logger.getLogger(UserRequestCleaner.class); - - private static final long SESSION_CLEANUP_INTERVAL = 5 * 60; // 5 min - - public void run() { - while (true) { - try { - ConfigurationProvider config = ConfigurationProvider.getInstance(); - - //clean up user request storage - List<UserDatabase> userrequests = config.getUserManagement().getAllOpenUsersRequests(); - if (userrequests != null) { - Calendar cal = Calendar.getInstance(); - cal.add(Calendar.HOUR, config.getUserRequestCleanUpDelay()*-1); - Date cleanupdate = cal.getTime(); - - for(UserDatabase dbuser : userrequests) { - Date requestdate = DateTimeHelper.parseDateTime(dbuser.getLastLogin()); - - if (requestdate != null && requestdate.after(cleanupdate)) { - log.info("Remove UserRequest from Database"); - config.getUserManagement().delete(dbuser); - } - - } - } - - //clean up active user storage - AuthenticationManager.getInstance().removeAllUsersAfterTimeOut(); - - Thread.sleep(SESSION_CLEANUP_INTERVAL * 1000); - - } catch (ConfigurationException e) { - log.info("UserRequestCleaner can not load configuration", e); - - } catch (InterruptedException e) { - - } - } - } - - /** - * start the sessionCleaner - */ - public static void start() { - // start the session cleanup thread - Thread sessionCleaner = new Thread(new UserRequestCleaner()); - sessionCleaner.setName("UserRequestCleaner"); - sessionCleaner.setDaemon(true); - sessionCleaner.setPriority(Thread.MIN_PRIORITY); - sessionCleaner.start(); - } - + private static final long SESSION_CLEANUP_INTERVAL = 5 * 60; // 5 min + + @Override + public void run() { + while (true) { + try { + final ConfigurationProvider config = ConfigurationProvider.getInstance(); + + // clean up user request storage + final List<UserDatabase> userrequests = config.getUserManagement().getAllOpenUsersRequests(); + if (userrequests != null) { + final Calendar cal = Calendar.getInstance(); + cal.add(Calendar.HOUR, config.getUserRequestCleanUpDelay() * -1); + final Date cleanupdate = cal.getTime(); + + for (final UserDatabase dbuser : userrequests) { + final Date requestdate = DateTimeHelper.parseDateTime(dbuser.getLastLogin()); + + if (requestdate != null && requestdate.after(cleanupdate)) { + log.info("Remove UserRequest from Database"); + config.getUserManagement().delete(dbuser); + } + + } + } + + // clean up active user storage + AuthenticationManager.getInstance().removeAllUsersAfterTimeOut(); + + Thread.sleep(SESSION_CLEANUP_INTERVAL * 1000); + + } catch (final ConfigurationException e) { + log.info("UserRequestCleaner can not load configuration", e); + + } catch (final InterruptedException e) { + + } + } + } + + /** + * start the sessionCleaner + */ + public static void start() { + // start the session cleanup thread + final Thread sessionCleaner = new Thread(new UserRequestCleaner()); + sessionCleaner.setName("UserRequestCleaner"); + sessionCleaner.setDaemon(true); + sessionCleaner.setPriority(Thread.MIN_PRIORITY); + sessionCleaner.start(); + } + } |