Files
rootandClaude Sonnet 5 8c48c0f8c1 COR-04: ldap-feld-migration
LDAP-Sync ergaenzt eine fehlende ldap_uid bei einem Treffer nachtraeglich,
ohne den Lauf bei fehlender UID zu blockieren.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 14:30:17 +00:00

31 lines
1.2 KiB
Go

// Package ldapsync implementiert Core IAM-05: LDAP/Active-Directory-
// Anbindung je Tenant fuer Benutzer-Synchronisation, Login-Delegation und
// Rollenzuordnung aus Gruppen ueber eine explizite Erlaubnis-Matrix.
//
// WICHTIGER HINWEIS: In dieser Umgebung steht kein echter LDAP/AD-Server zur
// Verfuegung (analog zur Archive-Engine bei AUD-05). Client ist deshalb eine
// Schnittstelle — die Sync-/Rollenzuordnungs-Logik ist gegen einen Fake in
// den Tests vollstaendig geprueft, eine echte Verbindungspruefung gegen
// LDAP/AD steht noch aus.
package ldapsync
// Entry ist ein aus LDAP gelesener Benutzerdatensatz. UID ist optional
// (COR-04): leer bleibt der Benutzer ohne ldap_uid, bis ein spaeterer
// Sync-Lauf ihn mitliefert.
type Entry struct {
Email string
Name string
Groups []string
Disabled bool
UID string
}
// Client abstrahiert die eigentliche LDAP-Verbindung (Bind + Search).
type Client interface {
// Search liefert alle Benutzer, die dem konfigurierten Filter
// entsprechen. Ein Fehler bedeutet "Quelle nicht erreichbar oder
// fehlerhaft" — Run() bricht dann komplett und folgenlos ab
// (Akzeptanzkriterium 2).
Search() ([]Entry, error)
}