@Override public SecurityConfigValidator createConfigurationValidator(GeoServerSecurityManager securityManager) { return new JdbcSecurityConfigValidator(securityManager); }
@Override public void validate(SecurityUserGroupServiceConfig config) throws SecurityConfigException { super.validate(config); JDBCSecurityServiceConfig jdbcConfig = (JDBCSecurityServiceConfig) config; validateFileNames(jdbcConfig,JDBCUserGroupService.DEFAULT_DDL_FILE,JDBCUserGroupService.DEFAULT_DML_FILE); checkAutomaticTableCreation(jdbcConfig); if (jdbcConfig.isJndi()) validateJNDI(jdbcConfig); else validateJDBC(jdbcConfig); }
protected void validateFileNames(JDBCSecurityServiceConfig config, String defaultDDL, String defaultDML) throws SecurityConfigException { String fileName = config.getPropertyFileNameDDL(); // ddl may be null if (isNotEmpty(fileName)) { if (defaultDDL.equals(fileName)==false) { // not the default property file File file = new File(fileName); if (checkFile(file)==false) { throw createSecurityException(DDL_FILE_INVALID, fileName); } } } fileName = config.getPropertyFileNameDML(); if (isNotEmpty(fileName)==false) { // dml file is required throw createSecurityException(DML_FILE_REQUIRED); } if (defaultDML.equals(fileName)==false) { // not the default property file File file = new File(fileName); if (checkFile(file)==false) { throw createSecurityException(DML_FILE_INVALID, fileName); } } }
protected void validateJNDI(JDBCSecurityServiceConfig config) throws SecurityConfigException { if (isNotEmpty(config.getJndiName())==false) throw createSecurityException(JNDINAME_REQUIRED); }
new JdbcSecurityConfigValidator(getSecurityManager()); try { configJNDI.setJndiName(""); validator.validateAddRoleService(configJNDI); validator.validateAddRoleService(config); try { config.setUserName(""); validator.validateAddRoleService(config); try { config.setConnectURL(null); validator.validateAddRoleService(config); validator.validateAddRoleService(config); config.setPropertyFileNameDDL(null); try { validator.validateAddRoleService(config); .anyTimes(); replay(secMgr); validator = new JdbcSecurityConfigValidator(secMgr); validator.validateModifiedRoleService(config, oldConfig); fail(); } catch (SecurityConfigException ex) {
new JdbcSecurityConfigValidator(getSecurityManager()); try { configJNDI.setJndiName(""); validator.validateAddUserGroupService(configJNDI); fail(); } catch (SecurityConfigException ex) { validator.validateAddUserGroupService(config); fail(); } catch (SecurityConfigException ex) { validator.validateAddUserGroupService(config); fail(); } catch (SecurityConfigException ex) { validator.validateAddUserGroupService(config); fail(); } catch (SecurityConfigException ex) { validator.validateAddUserGroupService(config); fail(); } catch (SecurityConfigException ex) { validator.validateAddUserGroupService(config); } catch (SecurityConfigException ex) { throw new IOException(ex); validator = new JdbcSecurityConfigValidator(secMgr);
if (new JdbcSecurityConfigValidator(getSecurityManager()).getTempDir()!=null) { String invalidPath="abc"+File.separator+"def.properties"; config.setPropertyFileNameDDL(invalidPath); if (new JdbcSecurityConfigValidator(getSecurityManager()).getTempDir()!=null) { String invalidPath="abc"+File.separator+"def.properties"; config.setPropertyFileNameDML(invalidPath);
new JdbcSecurityConfigValidator(getSecurityManager()); validator.validateAddAuthProvider(config); fail(); } catch (SecurityConfigException ex) { try { validator.validateAddAuthProvider(config); fail(); } catch (SecurityConfigException ex) { config.setConnectURL(null); validator.validateAddAuthProvider(config); fail(); } catch (SecurityConfigException ex) {
if (new JdbcSecurityConfigValidator(getSecurityManager()).getTempDir()!=null) { String invalidPath="abc"+File.separator+"def.properties"; config.setPropertyFileNameDDL(invalidPath); if (new JdbcSecurityConfigValidator(getSecurityManager()).getTempDir()!=null) { String invalidPath="abc"+File.separator+"def.properties"; config.setPropertyFileNameDML(invalidPath);
protected void validateJDBC(JDBCSecurityServiceConfig config) throws SecurityConfigException { if (isNotEmpty(config.getDriverClassName())==false) throw createSecurityException(DRIVER_CLASSNAME_REQUIRED); if (isNotEmpty(config.getUserName())==false) throw createSecurityException(USERNAME_REQUIRED); if (isNotEmpty(config.getConnectURL())==false) throw createSecurityException(JDBCURL_REQUIRED); try { Class.forName(config.getDriverClassName()); } catch (ClassNotFoundException e) { throw createSecurityException(DRIVER_CLASS_NOT_FOUND_$1, config.getDriverClassName()); } }
@Override public void validate(SecurityRoleServiceConfig config) throws SecurityConfigException { super.validate(config); JDBCSecurityServiceConfig jdbcConfig = (JDBCSecurityServiceConfig) config; validateFileNames(jdbcConfig,JDBCRoleService.DEFAULT_DDL_FILE,JDBCRoleService.DEFAULT_DML_FILE); checkAutomaticTableCreation(jdbcConfig); if (jdbcConfig.isJndi()) validateJNDI(jdbcConfig); else validateJDBC(jdbcConfig); }
protected void checkAutomaticTableCreation (JDBCSecurityServiceConfig config) throws SecurityConfigException { if (config.isCreatingTables()) { if (isNotEmpty(config.getPropertyFileNameDDL())==false) throw createSecurityException(DDL_FILE_REQUIRED); } }
@Override public void validate(SecurityAuthProviderConfig config) throws SecurityConfigException { super.validate(config); JDBCConnectAuthProviderConfig jdbcConfig = (JDBCConnectAuthProviderConfig) config; if (isNotEmpty(jdbcConfig.getDriverClassName())==false) throw createSecurityException(DRIVER_CLASSNAME_REQUIRED); if (isNotEmpty(jdbcConfig.getConnectURL())==false) throw createSecurityException(JDBCURL_REQUIRED); try { Class.forName(jdbcConfig.getDriverClassName()); } catch (ClassNotFoundException e) { throw createSecurityException(DRIVER_CLASS_NOT_FOUND_$1, jdbcConfig.getDriverClassName()); } } }