Suchergebnisse :

×

Moderne Drupal-Anwendungen nutzen häufig OAuth 2.0-Identitätsanbieter für die zentrale Authentifizierung. Obwohl dieser Ansatz die Authentifizierung verbessert, kann er eine Lücke in der Verwaltung von Benutzersitzungen innerhalb von Drupal selbst hinterlassen.

Die Authentifizierung kann an den Identitätsanbieter delegiert werden, die Sitzungsverwaltung verbleibt jedoch innerhalb von Drupal, wodurch eine Trennung zwischen Tokengültigkeit und Sitzungslebensdauer entsteht.

Die Lösung bietet ein gewisses Maß an Anpassbarkeit, die nativ in Drupal integriert ist. Das Ergebnis ist eine konsistente Zugriffskontrolle, ein reduziertes Sicherheitsrisiko und ein Sitzungsverhalten, das die OAuth-Autorisierungsrichtlinien präzise widerspiegelt.

In diesem Abschnitt besprechen wir alles von den Anforderungen und dem Implementierungsprozess bis hin zu den Ergebnissen.

Usecase-Kartenlogo

OAuth-Client-Modul

Modul herunterladen

Wenn eine Drupal-Website OAuth zur Authentifizierung verwendet, wird erwartet, dass die Zugriffsentscheidungen der Gültigkeitsdauer des OAuth-Tokens entsprechen. Theoretisch sollte der Zugriff sofort nach Ablauf des Tokens beendet werden. In der Praxis ist dies jedoch nicht immer der Fall.

Drupal-Sitzungen laufen oft auch dann weiter, wenn das zugehörige OAuth-Token abgelaufen ist. Da Sitzungsverwaltung und Tokenvalidierung getrennt voneinander funktionieren, gibt es keinen integrierten Mechanismus, um eine aktive Drupal-Sitzung automatisch zu beenden, wenn das Token ungültig wird.

  • Diese Diskrepanz führt zu einer gravierenden Lücke in der Zugriffskontrolle. Benutzer können über den vorgesehenen Autorisierungszeitraum hinaus Zugriff behalten. Abgelaufene Token führen nicht zuverlässig zum Beenden der Sitzung. Es gibt keine zentrale Kontrollinstanz, die sicherstellt, dass die Sitzungsdauer exakt der Token-Lebensdauer entspricht.
  • Damit können Sie als Administrator Folgendes tun:
    • Synchronisiert die Lebensdauer der Drupal-Sitzung mit dem Ablaufdatum des OAuth-Tokens.
    • Wählen Sie den genauen Token-Ablaufparameter des Identitätsanbieters aus, den Sie verwenden möchten.
    • Legen Sie genau fest, was in Drupal passiert, wenn das Token abläuft.
  • Bei dieser Konfiguration behandelt Drupal Authentifizierung und Sitzungsverwaltung nicht mehr getrennt, sondern sie arbeiten zusammen, genau wie es sein soll.

Beim Anmelden übergibt der OAuth-Identitätsanbieter ein Zugriffstoken mit eigener Gültigkeitsdauer. Das Modul liest diesen Ablaufwert aus dem Token aus und verwendet ihn, um die Dauer Ihrer Drupal-Sitzung festzulegen.

  • Sobald Sie die Synchronisierung aktivieren, passiert Folgendes:
    • Drupal gleicht die Dauer Ihrer Sitzung mit der Gültigkeit des OAuth-Tokens ab.
    • Es prüft ständig, ob das Token noch gültig ist, während Sie angemeldet sind.
    • Sobald das Token abläuft, führt Drupal die von Ihnen festgelegte Aktion aus.
  • Als Administrator stehen Ihnen verschiedene Optionen zur Verfügung:
    • Sie können die Option wählen, Benutzer direkt nach Ablauf des Tokens auszuloggen.
    • Alternativ können Sie versuchen, dies zu automatisieren und Drupal anzuweisen, das Token mithilfe eines Refresh-Tokens zu erneuern. Hinweis: Dies hängt von Ihrem Identitätsanbieter ab.
  • Das alles läuft automatisch ab; zusätzlicher Code oder externe Scheduler sind nicht nötig. Drupal kümmert sich darum.
  • Synchronisierung zwischen der Gültigkeit des OAuth-Tokens und den Drupal-Sitzungen.
  • Beseitigung veralteter oder nicht verwalteter Benutzersitzungen.
  • Verbesserte Konsistenz der Zugriffskontrolle.
  • Reduziertes Sicherheitsrisiko durch abgelaufenes Token.

Die Sitzungsverwaltung mit Token-Ablaufsynchronisierung ermöglicht es Drupal, die Zugriffskontrolle – insbesondere den Zugriffsentzug – basierend auf der Gültigkeit des OAuth-Tokens durchzusetzen. Der Sinn des OAuth-Tokens besteht darin, ein Attribut bereitzustellen, das Zugriff auf bestimmte Ressourcen gewährt. Daher ist es logisch, dass der Zugriff nach Ablauf des Tokens ebenfalls entzogen wird.

Wir melden uns so schnell wie möglich bei Ihnen

mo-Form

 Danke für Ihre Antwort. Wir werden uns bald bei Ihnen melden.

Etwas ist schief gelaufen. Bitte senden Sie Ihre Anfrage erneut

Inhaltsverzeichnis

Hallo!

Brauchen Sie Hilfe? Wir sind hier!

Unterstützung