@Override public GeoServerUserGroupService createUserGroupService(String name) throws Exception { return createUserGroupService(name, getPBEPasswordEncoder().getName()); }
@Override public String encode(CharSequence rawPassword) { return createCharEncoder().encodePassword(decodeToCharArray(rawPassword.toString()), null); } }
byte[] lookupPasswordFromKeyStore() { try { if (!keystoreProvider.containsAlias(getKeyAliasInKeyStore())) { throw new RuntimeException( "Keystore: " + keystoreProvider.getResource().path() + " does not" + " contain alias: " + getKeyAliasInKeyStore()); } return keystoreProvider.getSecretKey(getKeyAliasInKeyStore()).getEncoded(); } catch (IOException e) { throw new RuntimeException( "Cannot find alias: " + getKeyAliasInKeyStore() + " in " + keystoreProvider.getResource().path()); } }
protected GeoServerPBEPasswordEncoder createPbePasswordEncoder(GeoServerSecurityManager secMgr) throws IOException { GeoServerPBEPasswordEncoder pbePwe = new GeoServerPBEPasswordEncoder(); pbePwe.setBeanName("pbePasswordEncoder"); pbePwe.setPrefix("crypt1"); pbePwe.setAlgorithm("PBEWITHMD5ANDDES"); pbePwe.initialize(secMgr); return pbePwe; }
protected GeoServerPBEPasswordEncoder createStrongPbePasswordEncoder( GeoServerSecurityManager secMgr) throws IOException { GeoServerPBEPasswordEncoder strongPbePwe = new GeoServerPBEPasswordEncoder(); strongPbePwe.setBeanName("strongPbePasswordEncoder"); strongPbePwe.setPrefix("crypt2"); strongPbePwe.setProviderName("BC"); strongPbePwe.setAvailableWithoutStrongCryptogaphy(false); strongPbePwe.initialize(secMgr); return strongPbePwe; }
encoder.initializeFor(service); assertEquals(PasswordEncodingType.ENCRYPT, encoder.getEncodingType()); assertEquals( encoder.getKeyAliasInKeyStore(), keyStoreProvider.aliasForGroupService(service.getName())); getSecurityManager().loadPasswordEncoder(encoder.getName()); encoder2.initializeFor(service); String enc = encoder.encodePassword(password, null); assertTrue( enc.startsWith( encoder.getPrefix() + AbstractGeoserverPasswordEncoder.PREFIX_DELIMTER)); String encFromArray = encoder.encodePassword(passwordArray, null); assertTrue( encFromArray.startsWith( encoder.getPrefix() + AbstractGeoserverPasswordEncoder.PREFIX_DELIMTER)); assertTrue(encoder2.isPasswordValid(enc, password, null)); assertTrue(encoder2.isPasswordValid(encFromArray, password, null)); assertTrue(encoder2.isPasswordValid(enc, passwordArray, null)); assertTrue(encoder2.isPasswordValid(encFromArray, passwordArray, null)); assertEquals(password, encoder2.decode(enc)); assertEquals(password, encoder3.decode(enc)); assertEquals(password, encoder.decode(enc));
@Test public void testEncryption2() throws Exception { SecurityManagerConfig config = getSecurityManager().getSecurityConfig(); config.setConfigPasswordEncrypterName(getPBEPasswordEncoder().getName()); getSecurityManager().saveSecurityConfig(config); String serviceName = "testEncrypt2"; String prefix = getPBEPasswordEncoder().getPrefix() + GeoServerPasswordEncoder.PREFIX_DELIMTER;
.startsWith(getPlainTextPasswordEncoder().getPrefix())); config.setPasswordEncoderName(getPBEPasswordEncoder().getName()); getSecurityManager().saveUserGroupService(config); service.initializeFromConfig(config); service.loadUserByUsername("u1") .getPassword() .startsWith(getPBEPasswordEncoder().getPrefix())); assertTrue( service.loadUserByUsername("u2") .getPassword() .startsWith(getPBEPasswordEncoder().getPrefix())); .startsWith(getDigestPasswordEncoder().getPrefix())); config.setPasswordEncoderName(getPBEPasswordEncoder().getName()); getSecurityManager().saveUserGroupService(config); service.initializeFromConfig(config); service.loadUserByUsername("u3") .getPassword() .startsWith(getPBEPasswordEncoder().getPrefix())); config.setPasswordEncoderName(getPBEPasswordEncoder().getName()); getSecurityManager().saveUserGroupService(config); service.initializeFromConfig(config);
@Override public GeoServerUserGroupService createUserGroupService(String name) throws Exception { return createUserGroupService(name, getPBEPasswordEncoder().getName()); }
@Override protected SecurityUserGroupServiceConfig createConfigObject(String name) { MemoryUserGroupServiceConfigImpl config = new MemoryUserGroupServiceConfigImpl(); config.setClassName(MemoryUserGroupService.class.getName()); config.setName(name); config.setPasswordEncoderName(getPBEPasswordEncoder().getName()); config.setPasswordPolicyName(PasswordValidator.DEFAULT_NAME); return config; }
config.setConfigPasswordEncrypterName(getPBEPasswordEncoder().getName()); getSecurityManager().saveSecurityConfig(config); getSecurityManager().updateConfigurationFilesWithEncryptedFields();
@Override protected XMLUserGroupServiceConfig createConfigObject(String name) { XMLUserGroupServiceConfig config = new XMLUserGroupServiceConfig(); config.setName(name); config.setPasswordEncoderName(getPBEPasswordEncoder().getName()); config.setPasswordPolicyName(PasswordValidator.DEFAULT_NAME); config.setClassName(XMLUserGroupService.class.getName()); config.setCheckInterval(1000); config.setFileName("users.xml"); config.setValidating(true); config.setPasswordEncoderName(getPlainTextPasswordEncoder().getName()); config.setPasswordPolicyName(PasswordValidator.DEFAULT_NAME); return config; }
protected UserGroupStoreValidationWrapper createStore(String name) throws IOException { MemoryUserGroupServiceConfigImpl config = new MemoryUserGroupServiceConfigImpl(); config.setName(name); config.setPasswordEncoderName(getPBEPasswordEncoder().getName()); config.setPasswordPolicyName(PasswordValidator.DEFAULT_NAME); GeoServerUserGroupService service = new MemoryUserGroupService(); service.setSecurityManager(getSecurityManager()); service.initializeFromConfig(config); return new UserGroupStoreValidationWrapper(service.createStore()); }
ugconfig.setName("testAdminRole"); ugconfig.setClassName(MemoryUserGroupService.class.getName()); ugconfig.setPasswordEncoderName(getPBEPasswordEncoder().getName()); ugconfig.setPasswordPolicyName(PasswordValidator.DEFAULT_NAME); GeoServerUserGroupService ugService = new MemoryUserGroupService();
config.setName("testWebServiceAuthKey3"); config.setClassName(WebServiceBodyResponseUserGroupService.class.getName()); config.setPasswordEncoderName(getPBEPasswordEncoder().getName()); config.setPasswordPolicyName(PasswordValidator.DEFAULT_NAME); config.setSearchRoles("^.*?\"roles\"\\s*:\\s*\"([^\"]+)\".*$");
SecurityManagerConfig config = new SecurityManagerConfig(); config.setRoleServiceName(XMLRoleService.DEFAULT_NAME); config.setConfigPasswordEncrypterName(getPBEPasswordEncoder().getName()); config.getAuthProviderNames().add(GeoServerAuthenticationProvider.DEFAULT_NAME); config.setConfigPasswordEncrypterName(getStrongPBEPasswordEncoder().getName()); try { validator.validateManagerConfig(config, new SecurityManagerConfig()); config.setConfigPasswordEncrypterName(getPBEPasswordEncoder().getName()); config.setRoleServiceName("XX");
config.setPasswordEncoderName(getStrongPBEPasswordEncoder().getName());