gpt4 book ai didi

java - 使用java获取LDAP服务器版本

转载 作者:行者123 更新时间:2023-11-30 04:05:03 24 4
gpt4 key购买 nike

我发现这个简单的例子用java如何连接到LDAP服务器:

import javax.naming.*;
import javax.naming.directory.*;

import java.util.Hashtable;

/**
* Demonstrates how to create an initial context to an LDAP server
* using SSL. For this example to work, JSSE must be installed and
* configured, and the issuer of the LDAP server's certificate must
* be in the JSSE trust store.
*
* usage: java Ssl
*/
class Ssl {
public static void main(String[] args) {
// Set up environment for creating initial context
Hashtable env = new Hashtable(11);
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, "ldap://localhost:636/o=JNDITutorial");

// Specify SSL
env.put(Context.SECURITY_PROTOCOL, "ssl");

// Authenticate as S. User and password "mysecret"
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_PRINCIPAL, "cn=S. User, ou=NewHires, o=JNDITutorial");
env.put(Context.SECURITY_CREDENTIALS, "mysecret");

try {
// Create initial context
DirContext ctx = new InitialDirContext(env);

System.out.println(ctx.lookup("ou=NewHires"));

// ... do something useful with ctx

// Close the context when we're done
ctx.close();
} catch (NamingException e) {
e.printStackTrace();
}
}
}

有什么方法可以在连接时获取 LDAP 服务器和版本吗?

最佳答案

尝试查看http://ldapwiki.willeke.com/wiki/Determine%20LDAP%20Server%20Vendor我们提供了一些我们发现通常有效的方法。没有一种方法适用于所有 LDAP 服务器实现。

LDAP 版本也太模糊。您想要吗:LDAPSupported Version ?或 vendorVersion LDAP?

此外,除非您绑定(bind)具有适当权限的帐户,否则某些 rootDSE 条目可能不可用。

关于java - 使用java获取LDAP服务器版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20983547/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com