@Bean @ConditionalOnMissingBean public ContextSource ldapContextSource() { LdapContextSource source = new LdapContextSource(); source.setUserDn(this.properties.getUsername()); source.setPassword(this.properties.getPassword()); source.setAnonymousReadOnly(this.properties.getAnonymousReadOnly()); source.setBase(this.properties.getBase()); source.setUrls(this.properties.determineUrls(this.environment)); source.setBaseEnvironmentProperties( Collections.unmodifiableMap(this.properties.getBaseEnvironment())); return source; }
// ... LdapContextSource ctxSrc = new LdapContextSource(); ctxSrc.setUrl("ldap://<ldapUrl>:389"); ctxSrc.setBase("DC=bar,DC=test,DC=foo"); ctxSrc.setUserDn("<username>@bar.test.foo"); ctxSrc.setPassword("<password>"); ctxSrc.afterPropertiesSet(); /* ! */ LdapTemplate tmpl = new LdapTemplate(ctxSrc); // ...
LdapContextSource ctxSrc = new LdapContextSource(); ctxSrc.setUrl("ldap://<url>"); ctxSrc.setBase("dc=example,dc=local"); ctxSrc.setUserDn("<user>@example.local"); ctxSrc.setPassword("<pass>"); ctxSrc.afterPropertiesSet(); // this method should be called. LdapTemplate tmpl = new LdapTemplate(ctxSrc); setLdapTemplate(tmpl);
LdapContextSource buildLdapContextSource(LdapServerInventory inv, Map<String, Object> baseEnvironmentProperties) { LdapContextSource ldapContextSource; ldapContextSource = new LdapContextSource(); ldapContextSource.setUrl(inv.getUrl()); ldapContextSource.setBase(inv.getBase()); ldapContextSource.setUserDn(inv.getUsername()); ldapContextSource.setPassword(inv.getPassword()); ldapContextSource.setDirObjectFactory(DefaultDirObjectFactory.class); if (inv.getEncryption().equals(LdapEncryptionType.TLS.toString())) { setTls(ldapContextSource); } ldapContextSource.setCacheEnvironmentProperties(false); ldapContextSource.setPooled(false); ldapContextSource.setReferral("follow"); if (baseEnvironmentProperties != null && !baseEnvironmentProperties.isEmpty()) { ldapContextSource.setBaseEnvironmentProperties(baseEnvironmentProperties); } try { ldapContextSource.afterPropertiesSet(); logger.info("Test LDAP Context Source loaded "); } catch (Exception e) { logger.error("Test LDAP Context Source not loaded ", e); throw new CloudRuntimeException("Test LDAP Context Source not loaded", e); } return ldapContextSource; }
/** * Spring context source for ldap connection * * @return Ldap context */ @Bean @ConditionalOnMissingBean public LdapContextSource contextSource() { LdapContextSource ldapContextSource = new LdapContextSource(); ldapContextSource.setUrls(ldapUrl); ldapContextSource.setBase(ldapBaseDN); ldapContextSource.setUserDn(ldapUserDN); ldapContextSource.setPassword(ldapPassword); ldapContextSource.setPooled(true); return ldapContextSource; }
@Bean @ConditionalOnMissingBean public ContextSource contextSource() { LdapContextSource contextSource = new LdapContextSource(); contextSource.setUserDn(this.properties.getUsername()); contextSource.setPassword(this.properties.getPassword()); contextSource.setBase(this.properties.getBase()); contextSource.setUrls(this.properties.determineUrls(this.environment)); contextSource.setBaseEnvironmentProperties(Collections .<String, Object>unmodifiableMap(this.properties.getBaseEnvironment())); return contextSource; }
@Bean public LdapContextSource ldapContextSource() { LdapContextSource contextSource = new LdapContextSource(); contextSource.setAnonymousReadOnly(anonymousReadOnly); contextSource.setUrl(url); contextSource.setBase(base); contextSource.setUserDn(userDn); contextSource.setPassword(password); return contextSource; }
protected LdapContextSource createLdapContextSource(IdpAuthConfig idpAuthConfig) { LdapContextSource ldapContextSource = new LdapContextSource(); ldapContextSource.setBase(idpAuthConfig.getLdapBase()); List<String> ldapUrls = idpAuthConfig.getLdapUrls(); ldapContextSource.setUrls(ldapUrls.toArray(new String[ldapUrls.size()])); ldapContextSource.setUserDn(idpAuthConfig.getLdapUser()); ldapContextSource.setPassword(idpAuthConfig.getLdapPassword()); ldapContextSource.afterPropertiesSet(); return ldapContextSource; } }
protected LdapContextSource createLdapContextSource(RestLdapConfig ldapConfig) { LdapContextSource ldapContextSource = new LdapContextSource(); ldapContextSource.setBase(ldapConfig.getLdapBase()); List<String> ldapUrls = ldapConfig.getLdapUrls(); ldapContextSource.setUrls(ldapUrls.toArray(new String[ldapUrls.size()])); ldapContextSource.setUserDn(ldapConfig.getLdapUser()); ldapContextSource.setPassword(ldapConfig.getLdapPassword()); ldapContextSource.afterPropertiesSet(); return ldapContextSource; }
@Test public void testGetAnonymousEnvWithEmptyBaseSet() throws Exception { tested.setUrl("ldap://ldap.example.com:389"); tested.setBase(null); tested.afterPropertiesSet(); Hashtable env = tested.getAnonymousEnv(); assertThat(env.get(Context.PROVIDER_URL)).isEqualTo("ldap://ldap.example.com:389"); // check that base was not added to environment assertThat(env.get(DefaultDirObjectFactory.JNDI_ENV_BASE_PATH_KEY)).isNull(); }
@Override protected final Object doCreateInstance(final String dnsName) throws Exception { Assert.hasText(userDn); LdapContextSource instance = new LdapContextSource(); instance.setUrl("ldap://" + dnsName); instance.setUserDn(userDn); instance.setPassword(password); instance.setBase(base); instance.setPooled(pooled); setAdditionalContextSourceProperties(instance, dnsName); instance.afterPropertiesSet(); return instance; }
@Test public void testGetAuthenticatedEnv() throws Exception { tested.setBase("dc=example,dc=se"); tested.setUrl("ldap://ldap.example.com:389"); tested.setPooled(true); tested.setUserDn("cn=Some User"); tested.setPassword("secret"); tested.afterPropertiesSet(); Hashtable env = tested.getAuthenticatedEnv("cn=Some User", "secret"); assertThat(env.get(Context.PROVIDER_URL)).isEqualTo("ldap://ldap.example.com:389/dc=example,dc=se"); assertThat(env.get(LdapContextSource.SUN_LDAP_POOLING_FLAG)).isEqualTo("true"); assertThat(env.get(Context.SECURITY_PRINCIPAL)).isEqualTo("cn=Some User"); assertThat(env.get(Context.SECURITY_CREDENTIALS)).isEqualTo("secret"); // check that base was added to environment assertThat(env.get(DefaultDirObjectFactory.JNDI_ENV_BASE_PATH_KEY)).isEqualTo(LdapUtils.newLdapName("dc=example,dc=se")); }
@Override protected final Object doCreateInstance(final String dnsName) throws Exception { Assert.hasText(userDn); LdapContextSource instance = new LdapContextSource(); instance.setUrl("ldap://" + dnsName); instance.setUserDn(userDn); instance.setPassword(password); instance.setBase(base); instance.setPooled(pooled); setAdditionalContextSourceProperties(instance, dnsName); instance.afterPropertiesSet(); return instance; }
@Override public void init(FilterConfig filterConfig) throws ServletException { ldapContextSource = new LdapContextSource(); checkRequiredConfigProperties(webAuthConfig); ldapContextSource.setBase(webAuthConfig.getLdapBase()); List<String> ldapUrls = webAuthConfig.getLdapUrls(); ldapContextSource.setUrls(ldapUrls.toArray(new String[ldapUrls.size()])); ldapContextSource.setUserDn(webAuthConfig.getLdapUser()); ldapContextSource.setPassword(webAuthConfig.getLdapPassword()); ldapContextSource.afterPropertiesSet(); ldapTemplate = new LdapTemplate(ldapContextSource); ldapTemplate.setIgnorePartialResultException(true); }
@PostConstruct protected void init() { if (webLdapConfig.getLdapEnabled()) { ldapContextSource = new LdapContextSource(); checkRequiredConfigProperties(webLdapConfig); ldapContextSource.setBase(webLdapConfig.getLdapBase()); List<String> ldapUrls = webLdapConfig.getLdapUrls(); ldapContextSource.setUrls(ldapUrls.toArray(new String[ldapUrls.size()])); ldapContextSource.setUserDn(webLdapConfig.getLdapUser()); ldapContextSource.setPassword(webLdapConfig.getLdapPassword()); ldapContextSource.afterPropertiesSet(); ldapTemplate = new LdapTemplate(ldapContextSource); ldapTemplate.setIgnorePartialResultException(true); } } }
@Override public void init(FilterConfig filterConfig) throws ServletException { ldapContextSource = new LdapContextSource(); checkRequiredConfigProperties(webLdapConfig); ldapContextSource.setBase(webLdapConfig.getLdapBase()); List<String> ldapUrls = webLdapConfig.getLdapUrls(); ldapContextSource.setUrls(ldapUrls.toArray(new String[ldapUrls.size()])); ldapContextSource.setUserDn(webLdapConfig.getLdapUser()); ldapContextSource.setPassword(webLdapConfig.getLdapPassword()); ldapContextSource.afterPropertiesSet(); ldapTemplate = new LdapTemplate(ldapContextSource); ldapTemplate.setIgnorePartialResultException(true); }
@Autowired public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { LdapContextSource lcs = new LdapContextSource(); lcs.setUserDn("userDHHere"); lcs.setPassword("passwordHere"); lcs.setUrl("ldapIpAddress:port"); lcs.setReferral("follow"); lcs.setBase("dc=hostHere,dc=com"); lcs.afterPropertiesSet(); auth .ldapAuthentication() .contextSource(lcs) .userSearchBase("ouBaseHere") .userSearchFilter("userNameSearchHere") } }
@Test public void testPostProcessBeforeInitializationWithLdapNameAwareNoBasePathSet() throws Exception { final LdapContextSource expectedContextSource = new LdapContextSource(); String expectedPath = "dc=example, dc=com"; expectedContextSource.setBase(expectedPath); tested = new BaseLdapPathBeanPostProcessor() { BaseLdapPathSource getBaseLdapPathSourceFromApplicationContext() { return expectedContextSource; } }; Object result = tested.postProcessBeforeInitialization(ldapNameAwareMock, "someName"); verify(ldapNameAwareMock).setBaseLdapPath(LdapUtils.newLdapName(expectedPath)); assertThat(result).isSameAs(ldapNameAwareMock); }
@Test public void testPostProcessBeforeInitializationWithLdapPathAwareNoBasePathSet() throws Exception { final LdapContextSource expectedContextSource = new LdapContextSource(); String expectedPath = "dc=example, dc=com"; expectedContextSource.setBase(expectedPath); tested = new BaseLdapPathBeanPostProcessor() { BaseLdapPathSource getBaseLdapPathSourceFromApplicationContext() { return expectedContextSource; } }; Object result = tested.postProcessBeforeInitialization(ldapPathAwareMock, "someName"); verify(ldapPathAwareMock).setBaseLdapPath(new DistinguishedName(expectedPath)); assertThat(result).isSameAs(ldapPathAwareMock); }
private static LdapContextSource buildLdapContextSource(LdapDO ldapDO) { LdapContextSource contextSource = new LdapContextSource(); contextSource.setUrl(ldapDO.getUrl()); contextSource.setBase(ldapDO.getBase()); contextSource.setUserDn(ldapDO.getUserDn()); contextSource.setPassword(ldapDO.getPassword()); contextSource.setPooled(true); contextSource.afterPropertiesSet(); return contextSource; }