ray30002
Goto Top

JDNI, LDAP, Windows Server 2003 SE Probleme

wäre super wenn mir jemand aus meinem Schlamassel helfen könnte.

Hallo Allerseits,
ich schreibe die Frage mal unter die Rubrik Windows Server, da ich die Probleme eher dort und nicht bei Java vermute.
Also bei folgendem Problem bin ich so langsam mit meinem Latein am Ende. Ich habe für die Admins eines Computerpools ein kleines Java Programm geschrieben mit dem verschiedene Operationen im AD, wie beispielsweise Benutzer suchen und in eine OU hinzufügen, möglich sind. Das lief jetzt auch gut 3 Monate einwandfrei und alle waren zufrieden, nur haben vor ca. 2 Wochen die Probleme angefangen. Manchmal und unregelmäßig lehnt der Server die Operationen ab. Die Java Exception dazu sieht folgendermaßen aus:

javax.naming.AuthenticationNotSupportedException: [LDAP: error code 8 - 00002028: LdapErr: DSID-0C0901FC, comment: The server requires binds to turn on integrity checking if SSL\TLS are not already active on the connection, data 0, v1772

Da aber am Programm in der Zwischenzeit nichts geändert und das Problem auch nur manchmal auftritt, denke ich nicht das hier der Fehler liegt. Hier aber zur Sicherheit nochmal die Stelle an der die Serververbindung initiiert wird:

import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.ldap.InitialLdapContext;
import javax.naming.ldap.LdapContext;

public class OpenServerCon {

	final static String ADMIN_NAME = "CN=Administrator,CN=Users,DC=xxxx,DC=xxx,DC=xxxx,DC=xx";  

	static LdapContext ctx;

	public static LdapContext init(String pass)
			throws javax.naming.AuthenticationException, Exception {
		Hashtable env = new Hashtable();
		final String ADMIN_PASSWORD = pass;
		env.put(Context.INITIAL_CONTEXT_FACTORY,
				"com.sun.jndi.ldap.LdapCtxFactory");  
		env.put(Context.SECURITY_AUTHENTICATION, "simple");  
		env.put(Context.SECURITY_PRINCIPAL, ADMIN_NAME);
		env.put(Context.SECURITY_CREDENTIALS, ADMIN_PASSWORD);
		env.put(Context.REFERRAL, "follow");  
		env.put(Context.PROVIDER_URL, "ldap://xxx.xx.xxx.2:389");  
		ctx = new InitialLdapContext(env, null);
		

		return ctx;
	}
}

Das Java Programm wird auf Windows XP Clients ausgeführt die Mitglieder der Domäne sind.
Die Server Gruppenrichtlinie sagt an der mir bekannten Stelle auch nichts was die Anfrage verhindern könnte.

Netzwerksicherheit: Signaturanforderungen für LDAP-Clients Keine

Oder habe ich hier etwas übersehen?

Vielen Dank für eure Hilfe

Rafael

Content-Key: 142094

Url: https://administrator.de/contentid/142094

Printed on: April 25, 2024 at 04:04 o'clock

Member: ray30002
ray30002 May 05, 2010 at 13:31:42 (UTC)
Goto Top
Habe jetzt das Loglevel für LDAP hochgedreht (besser spät als nie) und bekomme folgenden Fehler:

Source: NTDS LDAP ID: 1535

Internes Ereignis: Der LDAP-Server hat einen Fehler zurückgegeben: 
 
Zusätzliche Daten 
Fehlerwert:
0000208D: NameErr: DSID-031001CD, problem 2001 (NO_OBJECT), data 0, best match of:
	'CN=Dfs-Configuration,CN=System,DC=xxxx,DC=xxxx,DC=xxxx,DC=de'


Wer kann damit was anfangen? eventid.net konnte mir nicht helfen...

Vielen Dank!!!
Member: trasheinz
trasheinz Jun 30, 2010 at 12:08:38 (UTC)
Goto Top
Salut,

Ich stecke zur Zeit beim selben Problem fest. Hast du dazu eine Lösung gefunden oder konnst du dies irgenwie umgehen?

Freundlich grüsst,
Heinz
Member: ray30002
ray30002 Jun 30, 2010 at 12:24:35 (UTC)
Goto Top
Hey,

wirklich loesen konnte ich das Problem nicht, aber umgehen. Das Problem ist bei nur aufgetreten wenn ich Nutzer aus der eine Ebene hoeher liegenden Domaene auslesen wollte (und da auch nur sporadisch). Wird wohl irgendwas mit deren Richtlinien zu tun haben, aber da habe ich keinen Zugriff drauf. Die einzigen Schreibvorgaenge die ich machen muss sind aber in meiner eigenen Subdomaene und dadurch ergab sich folgende Loesung:
Schreibvorgaenge werden nach wie vor ueber den Port 389 gemacht, aber die Lesevorgaenge ueber 3268 (siehe: http://technet.microsoft.com/en-us/library/cc978012.aspx ).
Falls dein Problem in deiner eigenen Domaene besteht solltest du eigentlich mit der Richtlinie: Netzwerksicherheit: Signaturanforderungen für LDAP-Clients Keine
Kannst ja auch mal auf dem Server schauen ob die Richtlinie korrekt uebernommen wird. gpresult und rsop.msc sollten dabei helfen.

Viele Gruesse

Rafael