[HOW TO] Keycloak integration

Hallo zusammen,

Wir Benutzen Keycloak bei uns, um Applikatonen einzubinden, die kein ldap aber OAuth2 Support haben (in unserem Fall Mattermost Enterprise E0).
Da ich euch die drei Tage Frust ersparen will, hier eine kleine Anleitung wie man Keycloak mit linuxmuster.net integriert.
Hier die grobe Vorgehensweise:

  1. Im entsprechenden Keycloak realm eine User Federation vom Typ „ldap“ erstellen.
  2. Folgende Einstellungen sind zu treffen:
  • Vendor: Active Directory
  • Username LDAP attribute: cn
  • RDN LDAP attribute: cn
  • UUID LDAP attribute: samaccountname
  • User Object Classes: person
  • Connection URL: ldap://10.0.0.1
  • Users DN: DC=linuxmuster,DC=lan
  • Custom User LDAP Filter:
    • Nur Lehrer: (|(memberof=CN=role-teacher,OU=Groups,OU=GLOBAL,DC=linuxmuster,DC=lan))
    • Schüler und Lehrer: (|(memberof=CN=role-student,OU=Groups,OU=GLOBAL,DC=linuxmuster,DC=lan)(memberof=CN=role-teacher,OU=Groups,OU=GLOBAL,DC=linuxmuster,DC=lan))
  • Search Scope: subtree
  • Bind Type: simple
  • Bind DN: CN=global-binduser,OU=Management,OU=GLOBAL,DC=linuxmuster,DC=lan
  1. Im Reiter „Mappers“ müssen nun die gewünschten Nutzer-attribute eingetragen werden:
  • Beispiel: first name:
    • Name: first name
    • Mapper Type: user-attribute-ldap-mapper
    • User Model Attribute: firstName
    • LDAP Attribute: sophomorixFirstNameASCII
  • Alle anderen Attribute, die benötigt werden, können an dieser Stelle auch eingetragen werden:
    • (User Model Attribute --> LDAP Attribute)
    • username --> cn
    • lastName --> sn
    • displayname --> displayName
    • … Funktioniert für alle Attribute eines Users :slight_smile:

Vielleicht hilft es ja jemandem :slight_smile:

Viele Grüße
Dorian

7 „Gefällt mir“

Hallo Dorian!

1000k Danke schön, für die Beschreibung.

Beste Grüße

PS: Nutze meinen Post um deine Lösung auch gleich als Verweis auf deineLösung markieren zu können!

Ein Beitrag wurde in ein neues Thema verschoben: Keycloak - Usern die Möglichkeit geben ihr Passwort zu aktualisieren