2

我有一组基于 Spring LDAP 框架的旧自动化测试用例。它们连接到外部 LDAP 服务器。我正在考虑用嵌入式服务器替换外部服务器。UnboundID InMemoryDirectoryServer 看起来很有吸引力,特别是如果有一种方法允许基于 Spring LDAP 的客户端连接基于 UnboundID 的嵌入式服务器。问题是:怎么做?我是LDAP新手,请帮忙。

4

1 回答 1

4

外部和嵌入式 LDAP 服务器的情况实际上并没有太大区别。配置时LdapContextSource,您必须将服务器的 url 设置为类似ldap://localhost:33389/(假设您的嵌入式服务器侦听端口 33389)。

请注意,默认情况下,UnboundIDInMemoryDirectoryServer将在运行时随机选择一个空闲端口,除非您将其配置为侦听固定端口。这可能会帮助您入门:

InMemoryDirectoryServerConfig config = 
        new InMemoryDirectoryServerConfig("dc=example, dc=com");

// make sure that the server listens on port 33389
config.setListenerConfigs(
        new InMemoryListenerConfig("myListener", null, 33389, null, null, null));

InMemoryDirectoryServer ds = new InMemoryDirectoryServer(config);

ds.startListening();

// import some test data from an ldif file
ds.importFromLDIF(true,"content.ldif");
于 2013-02-18T22:08:05.253 回答