우리 조직에는 LDAP 서버가있는 CORP 네트워크가 있으며 사용자 이름 (사용자) (&)을 증명함으로써 Java 프로그램을 통해 해당 서버에 매우 쉽게 연결할 수 있습니다. 아래 자바 코드는 org LDAP 서버에 연결하는 것입니다.Apache Directory Server LDAP 설정
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, "ldap://corp.testorg.com:10389");
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_PRINCIPAL, "CORP\\username");
env.put(Context.SECURITY_CREDENTIALS, "password");
try
{
DirContext ctx = new InitialDirContext(env);
System.out.println("connected");
}
하지만 내 문제는 내가 내 로컬 컴퓨터에 아파치 DS를 통해 내 자신의 LDAP 서버를 생성 한 후 다음 나는 사용자 이름으로 기본 DN을 제공해야 같은 프로그램을 통해 그 지역의 LDAP 서버에 연결을 시도했다는 것이다 등 아래
put(Context.SECURITY_PRINCIPAL, "cn=username,ou=users,o=test")
내가 이해하지 못하는하고 사용자 이름과 기본 DN을 제공해야하는 이유. LDAP 서버의 일부 구성이 누락되었습니다. 알려주세요.
오케이. 따라서 CORP는 서비스 제공 업체가 제공합니다. 하지만 그들은 내가 로컬 LDAP 서버에서 할 수 있도록 그런 설정을했는지 & 나는 SECURITY_PRINCIPAL의 사용자 이름으로 기본 DN을 전달하면 안된다. –