LDAP mit PLANTA secure
Allgemeines
Information
PLANTA project bietet bereits mittels der Komponente PLANTA secure einen erhöhten Sicherheitsstandard durch beispielsweise Zwei-Faktor-Authentifizierung (2FA). Diese Funktion wird durch die Authentifizierung mittels LDAP erweitert. Dieser Ansatz funktioniert, indem folgende Komponenten miteinander kommunizieren:
- PLANTA Client
- PLANTA Server
- PLANTA Client Adapter (CA) (ab C 39.5.31 integriert in PLANTA Client)
- PLANTA Server Adapter (SA) (integriert in PLANTA Server)
- Verzeichnis-(Directory-)Server
Funktionsweise
- Zur Authentifizierung werden vom ClientAdapter die Anmeldedaten abgefragt und zum ServerAdapter übertragen.
- Der ServerAdapter verbindet sich mittels LDAP mit dem Verzeichnisdienst und authentifiziert den Benutzer.
- Nun wird der Benutzer mit dem ausgewählten Attribut am Server angemeldet.
- Der Client bekommt die erfolgreiche Authentifizierung mit dem ausgewählten Attribut gemeldet.
PLANTA secure konfigurieren
secure.conf
- Auf dem Server müssen folgende Parameter in der Datei secure.conf angepasst werden:
reverse_proxy.auth = true
reverse_proxy.user_header = x-authenticated-user
reverse_proxy.user_format = plain
servlet.connection = your_host:your_port
Interface und Port, auf das sich der Client-Adapter verbinden soll.
ldap_configuration = config/ldap.conf
Der Pfad der LDAP-Konfigurationsdatei.
reverse_proxy.auth = true
reverse_proxy.user_header = x-authenticated-user
reverse_proxy.user_format = plain
auth_method.ldap = true
auth_method.ldap_useSSL = true
auth_method.ldap_configuration = config/ldap.conf
ldap.conf
- Auf dem Server müssen folgende Parameter in der Datei ldap.conf angepasst werden:
bean:contextSource
url - ldaps://your.ldap.url:port
Die Url des Verzeichnisdienstes mit vorangestelltem Protokoll und dem Port
base - ou=user,DC=ldap,DC=url
Die Startebene für die Suche im Verzeichnisdienst
userDn - maxservice@yourldap.url
Ein Serviceuser, der Zugriff auf den Verzeichnisdienst hat
password - mysecretpassphrase
Das Passwort für den Serviceuser
baseEnvironmentProperties
Eine Aufzählung von Properties, die an LDAP weitergegeben werden.
Die aufgelisteten Attribute unter dem Schlüssel java.naming.ldap.attributes.binary
werden dann als binäre Werte ausgelesen.
Sollen mehrere Attribute aufgelistet werden, müssen diese durch Leerzeichen getrennt werden.
z.B.
<map>
<entry key="java.naming.ldap.attributes.binary" value="objectGUID"/>
</map>
bean:ldapConfig
ldapUserFilter
Ein Filter, mit dem die Suche eingeschränkt werden kann
ldapSearchScope = "SUBTREE"
Die Suchtiefe unterhalb der Startebene. Mögliche Werte sind: "SUBTREE","ONELEVEL_SCOPE" oder "OBJECT_SCOPE"
plantaUserData
Eine Aufzählung von Attributen, die aus LDAP ausgelesen und in die DB übertragen werden.
Die Attribute werden als Schlüsselwert übergeben.
Das Attribut, das mit login
im Wert gekennzeichnet ist, wird auf die Benutzerkennung geprüft.
Das Attribut, das mit uuid
im Wert gekennzeichnet ist, wird in einen UUID String konvertiert und als der Benutzer angemeldet.
z.B.
<map>
<entry key="userPrincipalName" value="login"/>
<entry key="mail" value=""/>
<entry key="sAMAccountName" value=""/>
<entry key="sn" value=""/>
<entry key="objectGUID" value="uuid"/>
</map>
Das Attribut userPrincipalName
wird für die Authentifizierung des Benutzers benutzt, der dann mit dem Attribut objectGUID
als Benutzer angemeldet wird.
Zudem werden alle angegebenen Attribute in die DB geschrieben. Wenn kein Attribut mit uuid gekennzeichnet wird, wird das Attribut mit login
zur Anmeldung benutzt.
ldap:context-source
url - ldaps://your.ldap.url:port
Die Url des Verzeichnisdienstes mit vorangestelltem Protokoll und dem Port
base - ou=user,DC=ldap,DC=url
Die Startebene für die Suche im Verzeichnisdienst
username - maxservice@yourldap.url
Ein Serviceuser, der Zugriff auf den Verzeichnisdienst hat
password - mysecretpassphrase
Das Passwort für den Serviceuser
ldap:ldap-template
search-scope = "SUBTREE"
Die Suchtiefe unterhalb der Startebene
bean:ldapConfig
ldapUserFilter -
Ein Filter, mit dem die Suche eingeschränkt werden kann
ldapUserDN - dn
Das Attribut, das den DN Eintrag enthält
ldapUserId - mail
Das Attribut, das auf die Benutzerkennung geprüft wird
plantaUserId - sAMAccountName
Das Attribut, das die Benutzerkennung enthält, mit der der Benutzer angemeldet wird.
Weitere Einstellungen
- Für den Client-Adapter muss das richtige Plugin LDAP in der planta.ini hinterlegt werden. Es gibt hier zudem weitere Einstellungsmöglichkeiten, die hier dokumentiert sind.
- Der PLANTA-Server muss für die proxy Authentifizierung konfiguriert werden.
- Weitere Informationen zu allgemeinen Einstellungen von PLANTA secure finden Sie hier.
- Die Benutzer müssen entsprechend mit der Benutzerkennung im PLANTA Server angelegt sein.
- Momentan wird das Auslesen binärer Attribute nicht unterstützt.
- Für den Client-Adapter muss das richtige Plugin LDAP in der PlantaClientAdapter.exe.config hinterlegt werden. Es gibt hier zudem weitere Einstellungsmöglichkeiten, die in der Datei selbst dokumentiert sind.
- Der PLANTA-Server muss für die proxy Authentifizierung konfiguriert werden.
- Weitere Informationen zu allgemeinen Einstellungen von PLANTA secure finden Sie hier.
- Die Benutzer müssen entsprechend mit der Benutzerkennung im PLANTA Server angelegt sein.
- Momentan wird das Auslesen binärer Attribute nicht unterstützt.