private void reloadImportLDAP() { try { synchronized (importLDAPSynch) { if (importLDAP != null) { importLDAP.dispose(); importLDAP = null; } if (ldapImportDoc != null && isEnabled(ldapImportDoc)) { Class<?> cls = getClass(ldapImportDoc); if (cls != null) { if (OSecurityComponent.class.isAssignableFrom(cls)) { importLDAP = (OSecurityComponent) cls.newInstance(); importLDAP.config(server, serverConfig, ldapImportDoc); importLDAP.active(); } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.reloadImportLDAP() class is not an OSecurityComponent"); } } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.reloadImportLDAP() ImportLDAP class property is missing"); } } } } catch (Exception ex) { OLogManager.instance() .error(this, "ODefaultServerSecurity.reloadImportLDAP() Exception: %s", ex.getMessage()); } }
// Returns the package plus type name of Class. private static String getFullTypeName(Class<?> type) { String typeName = null; typeName = type.getSimpleName(); Package pack = type.getPackage(); if (pack != null) { typeName = pack.getName() + "." + typeName; } return typeName; }
private void reloadPasswordValidator() { try { synchronized (passwordValidatorSynch) { if (passwordValidator != null) { passwordValidator.dispose(); passwordValidator = null; } if (passwdValDoc != null && isEnabled(passwdValDoc)) { Class<?> cls = getClass(passwdValDoc); if (cls != null) { if (OPasswordValidator.class.isAssignableFrom(cls)) { passwordValidator = (OPasswordValidator) cls.newInstance(); passwordValidator.config(server, serverConfig, passwdValDoc); passwordValidator.active(); } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.reloadPasswordValidator() class is not an OPasswordValidator"); } } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.reloadPasswordValidator() PasswordValidator class property is missing"); } } } } catch (Exception ex) { OLogManager.instance() .error( this, "ODefaultServerSecurity.reloadPasswordValidator() Exception: %s", ex.getMessage()); } }
private void reloadAuditingService() { try { synchronized (auditingSynch) { if (auditingService != null) { auditingService.dispose(); auditingService = null; } if (auditingDoc != null && isEnabled(auditingDoc)) { Class<?> cls = getClass(auditingDoc); if (cls != null) { if (OAuditingService.class.isAssignableFrom(cls)) { auditingService = (OAuditingService) cls.newInstance(); auditingService.config(server, serverConfig, auditingDoc); auditingService.active(); } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.reloadAuditingService() class is not an OAuditingService"); } } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.reloadAuditingService() Auditing class property is missing"); } } } } catch (Exception ex) { OLogManager.instance() .error( this, "ODefaultServerSecurity.reloadAuditingService() Exception: %s", ex.getMessage()); } }
private Class<?> getClass(final ODocument jsonConfig) { Class<?> cls = null; try { if (jsonConfig.containsField("class")) { final String clsName = jsonConfig.field("class"); if (securityClassMap.containsKey(clsName)) { cls = securityClassMap.get(clsName); } else { cls = Class.forName(clsName); } } } catch (Throwable th) { OLogManager.instance().error(this, "ODefaultServerSecurity.getClass() Throwable: ", th); } return cls; }
private void loadAuthenticators(final ODocument authDoc) { synchronized (authenticatorsList) { for (OSecurityAuthenticator sa : authenticatorsList) { sa.dispose(); } authenticatorsList.clear(); if (authDoc.containsField("authenticators")) { List<ODocument> authMethodsList = authDoc.field("authenticators"); for (ODocument authMethodDoc : authMethodsList) { try { if (authMethodDoc.containsField("name")) { final String name = authMethodDoc.field("name"); // defaults to enabled if "enabled" is missing boolean enabled = true; if (authMethodDoc.containsField("enabled")) enabled = authMethodDoc.field("enabled"); if (enabled) { Class<?> authClass = getClass(authMethodDoc); if (authClass != null) { if (OSecurityAuthenticator.class.isAssignableFrom(authClass)) { OSecurityAuthenticator authPlugin = (OSecurityAuthenticator) authClass.newInstance(); authPlugin.config(server, serverConfig, authMethodDoc); authPlugin.active(); authenticatorsList.add(authPlugin); } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.loadAuthenticators() class is not an OSecurityAuthenticator"); } } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.loadAuthenticators() authentication class is null for %s", name); } } } else { OLogManager.instance() .error( this, "ODefaultServerSecurity.loadAuthenticators() authentication object is missing name"); } } catch (Throwable ex) { OLogManager.instance() .error(this, "ODefaultServerSecurity.loadAuthenticators() Exception: ", ex); } } } } }