public void saveAuthenticationProvider(SecurityAuthProviderConfig config) throws IOException, SecurityConfigException { SecurityConfigValidator validator = SecurityConfigValidator.getConfigurationValiator( GeoServerAuthenticationProvider.class, config.getClassName()); if (config.getId() == null) { config.initBeforeSave(); validator.validateAddAuthProvider(config); } else { validator.validateModifiedAuthProvider( config, authProviderHelper.loadConfig(config.getName())); } // update the running auth providers if (authProviders != null) { GeoServerAuthenticationProvider authProvider = null; for (GeoServerAuthenticationProvider ap : authProviders) { if (config.getName().equals(ap.getName())) { authProvider = ap; break; } } if (authProvider != null) { synchronized (authProvider) { authProvider.initializeFromConfig(config); } } } authProviderHelper.saveConfig(config); }
public void validateRemoveUserGroupService(SecurityUserGroupServiceConfig config) throws SecurityConfigException { validateRemoveNamedService(GeoServerUserGroupService.class, config); try { for (String name : manager.listAuthenticationProviders()) { SecurityAuthProviderConfig authConfig = manager.loadAuthenticationProviderConfig(name); String userGroupService = authConfig.getUserGroupServiceName(); if (isNotEmpty(userGroupService)) { if (authConfig.getUserGroupServiceName().equals(config.getName())) throw createSecurityException( USERGROUP_SERVICE_ACTIVE_$2, config.getName(), authConfig.getName()); } } } catch (IOException ex) { throw new RuntimeException(ex); } }
/** * Removes an authentication provider configuration. * * @param config The authentication provider configuration. */ public void removeAuthenticationProvider(SecurityAuthProviderConfig config) throws IOException, SecurityConfigException { SecurityConfigValidator validator = SecurityConfigValidator.getConfigurationValiator( GeoServerAuthenticationProvider.class, config.getClassName()); validator.validateRemoveAuthProvider(config); authProviderHelper.removeConfig(config.getName()); }
public void validateRemoveAuthProvider(SecurityAuthProviderConfig config) throws SecurityConfigException { validateRemoveNamedService(GeoServerAuthenticationProvider.class, config); for (GeoServerAuthenticationProvider prov : manager.getAuthenticationProviders()) { if (prov.getName().equals(config.getName())) throw createSecurityException(AUTH_PROVIDER_ACTIVE_$1, config.getName()); } }
@Override protected void validateRemoveConfig(SecurityAuthProviderConfig config) throws SecurityConfigException { SecurityConfigValidator.getConfigurationValiator(GeoServerAuthenticationProvider.class, config.getClassName()).validateRemoveAuthProvider(config); }
protected SecurityAuthProviderConfig createAuthConfig( String name, Class<?> aClass, String userGroupServiceName) { SecurityAuthProviderConfig config = new UsernamePasswordAuthenticationProviderConfig(); config.setName(name); config.setClassName(aClass.getName()); config.setUserGroupServiceName(userGroupServiceName); /*SecurityAuthProviderConfig config = createNiceMock(SecurityAuthProviderConfig.class); expect(config.getName()).andReturn(name).anyTimes(); expect(config.getClassName()).andReturn(aClass.getName()).anyTimes(); expect(config.getUserGroupServiceName()).andReturn(userGroupServiceName).anyTimes(); replay(config);*/ return config; }
public void validate(SecurityAuthProviderConfig config) throws SecurityConfigException { if (isNotEmpty(config.getUserGroupServiceName())) { if (getNamesFor(GeoServerUserGroupService.class) .contains(config.getUserGroupServiceName()) == false) throw createSecurityException( USERGROUP_SERVICE_NOT_FOUND_$1, config.getUserGroupServiceName()); } }
@Override public void doLoad(T config) throws Exception { getSecurityManager().loadAuthenticationProvider(config.getName()); } }
@Override protected void validateRemoveConfig(SecurityAuthProviderConfig config) throws SecurityConfigException { SecurityConfigValidator.getConfigurationValiator(GeoServerAuthenticationProvider.class, config.getClassName()).validateRemoveAuthProvider(config); }
@Override public void validate(SecurityAuthProviderConfig config) throws SecurityConfigException { if (isNotEmpty(config.getUserGroupServiceName()) == false) { throw createSecurityException(USERGROUP_SERVICE_REQUIRED); } super.validate(config); }
@Override public void doLoad(T config) throws Exception { getSecurityManager().loadAuthenticationProvider(config.getName()); } }
expect(authProviderConfig.getName()) .andReturn(GeoServerAuthenticationProvider.DEFAULT_NAME) .anyTimes(); expect(authProviderConfig.getUserGroupServiceName()) .andReturn(XMLUserGroupService.DEFAULT_NAME) .anyTimes();
@Override protected void validateRemoveConfig(SecurityAuthProviderConfig config) throws SecurityConfigException { SecurityConfigValidator.getConfigurationValiator( GeoServerAuthenticationProvider.class, config.getClassName()) .validateRemoveAuthProvider(config); }
@Override public void doLoad(T config) throws Exception { getSecurityManager().loadAuthenticationProvider(config.getName()); } }