Die meisten unserer Kunden nutzen Active Directory. Die Integration einer Java-Anwendung mit AD über LDAP ist eine Standardanforderung — und überraschend oft eine schmerzhafte.
JNDI-Grundlagen¶
Immer LDAPS (Port 636), niemals Plain LDAP. Ein Dienstkonto mit minimalen Berechtigungen zum Binden. Benutzer anhand von sAMAccountName suchen, DN ermitteln, mit dem Benutzerpasswort binden.
Autorisierung über AD-Gruppen¶
Zuordnung von AD-Gruppen zu Anwendungsrollen. Vorsicht bei verschachtelten Gruppen — man benötigt den LDAP_MATCHING_RULE_IN_CHAIN-Filter für eine rekursive Abfrage.
Spring Security LDAP¶
Für neue Projekte bevorzugen wir das Spring Security LDAP-Modul — nur ein paar Zeilen XML-Konfiguration. Deutlich einfacher als manuelles JNDI.
Häufige Probleme¶
Connection Timeout mit Fallback auf ein sekundäres AD. Referrals mit Vorsicht behandeln. Sonderzeichen — UTF-8-Dekodierung überprüfen.
Fazit¶
LDAPS, ein Dienstkonto, Kontostatus-Prüfungen und korrekte Gruppenzuordnung — das sind die Grundlagen. Spring Security vereinfacht die Implementierung erheblich.
Brauchen Sie Hilfe bei der Implementierung?
Unsere Experten helfen Ihnen bei Design, Implementierung und Betrieb. Von der Architektur bis zur Produktion.
Kontaktieren Sie uns