5.9 KiB
Telefonbuch-Programm Benutzerhandbuch
Inhaltsverzeichnis
- Einführung
- Installation
- Konfiguration
- Container-Rollout mit Podman
- Active Directory Konfiguration
- Verwendung der Benutzeroberfläche
- Fehlerbehebung
Einführung
Dieses Telefonbuch-Programm ermöglicht es Ihnen, Kontaktinformationen aus Ihrem Active Directory (AD) zu extrahieren und in einer benutzerfreundlichen Weboberfläche darzustellen. Es unterstützt sowohl Benutzer als auch Kontakte aus dem AD und wird als Podman-Container bereitgestellt.
Installation
- Stellen Sie sicher, dass Podman und podman-compose auf Ihrem System installiert sind.
- Klonen Sie das Repository oder laden Sie den Quellcode herunter.
- Navigieren Sie zum Projektverzeichnis.
Konfiguration
Umgebungsvariablen
Erstellen Sie eine .env
-Datei im Projektverzeichnis mit folgenden Variablen:
LDAP_SERVER=<Ihr LDAP-Server>
BIND_DN=<Ihr Bind DN>
BIND_PASSWORD=<Ihr Bind-Passwort>
SEARCH_BASE=<Ihr Suchbasis-DN>
config.yaml
Überprüfen und passen Sie die config.yaml
Datei im static
-Verzeichnis an:
phone_rules:
invalid_number: "+49 5331 89"
country:
prefix: "49"
area_codes:
- "5331"
internal_prefix: "89"
Container-Rollout mit Podman
-
Bauen und Starten des Containers:
podman-compose up -d
-
Überprüfen Sie, ob der Container läuft:
podman ps
-
Zugriff auf die Anwendung: Öffnen Sie einen Webbrowser und navigieren Sie zu
http://localhost:8082
. -
Stoppen des Containers:
podman-compose down
-
Logs anzeigen:
podman logs <container-name>
Active Directory Konfiguration
Erforderliche Attribute
Für Benutzer und Kontakte im AD sollten folgende Attribute korrekt gefüllt sein:
givenName
: Vornamesn
: Nachnamemail
: E-Mail-AdressetelephoneNumber
: Bürotelefonnummer > Konfigurationsformat+49 5331 89xxx
oder+49 5331 89xxxxx
mobile
: Mobiltelefonnummer > Konfigurationsformat+49 1(5..7) xxxxxx
otherTelephone
: Weitere Telefonnummern > Konfigurationsformat+49 xxxx xxxxxx
physicalDeliveryOfficeName
: Abteilung
Für Kontakte:
- Erstellen Sie Kontaktobjekte in Ihrem AD
- Füllen Sie die oben genannten Attribute entsprechend aus
Anzeigeverhalten von Einträgen
Das Telefonbuch-Programm filtert die Einträge aus dem Active Directory, um sicherzustellen, dass nur relevante und vollständige Informationen angezeigt werden. Rufnummer die in keine weiterführend Nummer haben, hinter dem Prefix, werden über InvalidNumber(unvollständige Rufnummer) in der config.yaml
zusätzlich konfiguriert. -> Es werden nur vollständige Rufnmmer angezeigt, die im Format +49 5331 89xxx(xx) vorliegen. Aus der korrekten Rufnummer wird dann auch die interne Rufnummer generiert. Diese Funktion betrifft auch nur Attribute telephoneNumber
aus dem AD.
Allgemeine Bedingungen für alle Einträge
Ein Eintrag (Benutzer oder Kontakt) wird nur dann angezeigt, wenn:
- Der Vorname (
givenName
) nicht leer ist. - Der Nachname (
sn
) nicht leer ist.
Spezifische Bedingungen für Benutzer
Ein Benutzer wird im Telefonbuch angezeigt, wenn:
- Die allgemeinen Bedingungen erfüllt sind UND
- Mindestens eine der folgenden Bedingungen zutrifft:
- Die Bürotelefonnummer (
telephoneNumber
) ist vorhanden und nicht als ungültig markiert (sieheconfig.yaml
). ->InvalidNumber
- Eine Mobiltelefonnummer (
mobile
) ist vorhanden. - Die E-Mail-Adresse (
mail
) ist vorhanden.
- Die Bürotelefonnummer (
Ein Benutzer wird NICHT angezeigt, wenn:
- Keine Telefonnummer (weder Büro noch Mobil) vorhanden ist ODER
- Die einzige vorhandene Telefonnummer als ungültig markiert ist (siehe
config.yaml
) UND - Keine E-Mail-Adresse vorhanden ist.
Spezifische Bedingungen für Kontakte
Ein Kontakt wird im Telefonbuch angezeigt, wenn die allgemeinen Bedingungen erfüllt sind. Kontakte werden großzügiger behandelt als Benutzer und werden angezeigt, auch wenn keine Telefonnummer oder E-Mail-Adresse vorhanden ist.
Hinweise
- Die Abteilung (
physicalDeliveryOfficeName
) ist optional und beeinflusst nicht die Anzeige im Telefonbuch. - Zusätzliche Telefonnummern (
otherTelephone
) werden angezeigt, wenn vorhanden, beeinflussen aber nicht die Entscheidung, ob ein Eintrag im Telefonbuch erscheint. - Die Unterscheidung zwischen Benutzern und Kontakten basiert auf dem
objectClass
-Attribut im Active Directory.
Verwendung der Benutzeroberfläche
- Starten Sie das Programm.
- Öffnen Sie einen Webbrowser und navigieren Sie zu
http://localhost:<SERVER_PORT>
.
Suchfunktion
- Verwenden Sie das Suchfeld oben auf der Seite, um nach Namen, Telefonnummern oder anderen Informationen zu suchen.
- Die Suche ist Case-Sensitive (unterscheidet zwischen Groß- und Kleinschreibung).
Sortierung
- Klicken Sie auf die Spaltenüberschriften, um die Tabelle nach dieser Spalte zu sortieren.
- Ein erneuter Klick auf dieselbe Spalte kehrt die Sortierreihenfolge um.
Fehlerbehebung
- Überprüfen Sie die Container-Logs mit
podman logs <container-name>
. - Stellen Sie sicher, dass alle Umgebungsvariablen in der
.env
-Datei korrekt gesetzt sind. - Überprüfen Sie die Netzwerkverbindung zum LDAP-Server vom Host-System aus.
- Verifizieren Sie die LDAP-Anmeldeinformationen und Zugriffsrechte.
- Bei Problemen mit dem Volume-Mount, überprüfen Sie die Berechtigungen des
static
-Verzeichnisses.
Wenn Probleme weiterhin bestehen, erstellen Sie bitte ein Issue im GitHub-Repository oder kontaktieren Sie den Entwickler.