Benutzerdaten in Webanwendungen übernehmen

Personalakte

Benutzerdatenbanken wie ein ein zentraler LDAP-Server oder dedizierte Identity-Management-Lösungen wie FreeIPA oder Active Directory enthalten eine Menge an Informationen über die darin gespeicherten Benutzer. Wir zeigen eine Methode, wie Webanwendungen sehr einfach auf diese Informationen zurückgreifen können.
In der November-Ausgabe beleuchtet IT-Administrator wesentliche Aspekte des Infrastrukturmanagements. Dazu gehört die Frage, wie Sie Rechenzentren erfolgreich ... (mehr)

Meldet sich ein Benutzer an einer Webanwendung an, wird er meistens über eine interne Datenbank authentifiziert und autorisiert. Alternativ dazu besteht auch die Möglichkeit, auf ein bereits vorhandenes Identity-Managementsystem zurückzugreifen. Der Zugriff auf ein solches System erfolgt im Backend dann beispielsweise über LDAP oder im Fall einer föderierten Authentifizierung mit Hilfe der Security Assertion Markup Language (SAML). Oftmals ist es auch wünschenswert, dass zusätzliche Informationen über einen Benutzer, die mit dem Benutzerobjekt im Backend gespeichert sind, auch von der Webanwendung genutzt werden können. Beispielsweise könnte damit der komplette Name des Benutzers zur Begrüßung nach einem Login verwendet werden.

Listing 1 zeigt ein klassisches Beispiel für ein LDAP-Benutzer-Objekt ohne die dazugehörigen Objektklassen. LDAP-Attribute wie "sn", "givenName" oder "mail" können in einer Webanwendung nicht ohne weiteres ausgewertet werden, da das klassische Posix-Interface des Name-Service-Switch hierfür keine Möglichkeiten anbietet. Natürlich soll sich auch nicht die Anwendung selbst darum kümmern, diese Informationen zu beziehen, da dies den Komplexitätsgrad der Anwendung erhöhen würde. Aus diesem Grund gilt es also, andere Wege zu finden, um an sie zu gelangen.

Listing 1: LDAP-Benutzer-Objekt



dn: uid=jdoe,cn=users,cn=accounts,dc=example,dc=com
employeeNumber: 23
preferredLanguage: EN
mobile: +4912345678
departmentNumber: 512
memberOf: cn=ipausers,cn=groups,cn=accounts,dc=example,dc=com
krbPasswordExpiration: 20180924161224Z
krbLoginFailedCount: 0
krbTicketFlags: 128
krbLastPwdChange: 20180626161224Z
displayName: John Doe
uid: jdoe
krbCanonicalName: jdoe@EXAMPLE.COM
loginShell: /bin/sh
initials: jd
sn: Doe
homeDirectory: /home/jdoe
mail: jdoe@example.com
krbPrincipalName:
...

Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.

comments powered by Disqus

Artikel der Woche

Rechneranalyse mit Microsoft-Sysinternals-Tools

Der Rechner verhält sich eigenartig oder Sie haben eine unbekannte Applikation im Task Manager entdeckt und möchten erfahren, worum es sich dabei genau handelt und ob sie möglicherweise gefährlich ist? In so einem Fall helfen die Sysinternals-Tools von Microsoft. Dieser Beitrag stellt die drei Werkzeuge Autoruns, Process Explorer und TCPView vor. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2018