Rollen aus mehreren Quellen
In einer Geschäftsanwendung bündelt eine Rolle bestimmte Berechtigungen. Die Rolle „Prüfberichte lesen“ kann beispielsweise den Zugriff auf Berichte eines Standorts erlauben. Ihre Zuweisung kann aus einer Verzeichnisgruppe stammen oder von einer zuständigen Person direkt in der Anwendung vorgenommen worden sein.
Für den aktuellen Zugriff mag zunächst nur wichtig erscheinen, dass die Rolle vorhanden ist. Beim späteren Entzug reicht diese Information nicht mehr. Der Austritt aus einer Verzeichnisgruppe hebt eine davon unabhängige manuelle Freigabe nicht automatisch auf. Ebenso darf eine Synchronisation eine fremde Zuweisung nicht nachträglich zu ihrem eigenen Bestand erklären.
Den Vergabegrund mitführen
Zusätzlich zur wirksamen Rolle wird deshalb ihre Herkunft festgehalten. Zu einem solchen Nachweis gehören beispielsweise die Quelle, das betroffene Benutzerkonto, die Rolle und der Organisationsbereich. Der nächste Abgleich betrachtet dann nur die Vergaben, für die seine eigene Quelle zuständig ist.
Das ist mehr als ein Änderungsprotokoll. Ein Protokoll hält fest, was früher geschehen ist. Der Herkunftsnachweis beschreibt dagegen auch, welche Quellen die aktuelle Zuweisung weiterhin begründen. Er wird bei der Entscheidung über einen Entzug mit ausgewertet.
Eine Quelle entfällt
Im Beispiel erhält ein Benutzer dieselbe Rolle für denselben Standort aus zwei angebundenen Verzeichnissen. Beim nächsten Abgleich meldet Verzeichnis A die betreffende Gruppe nicht mehr. Der Nachweis von A wird entfernt. Die Rollenzuweisung bleibt jedoch erhalten, solange Verzeichnis B sie weiterhin begründet.
Erst wenn auch der letzte durch diese Synchronisation verwaltete Vergabegrund entfällt, kann die gemeinsame Zuweisung entfernt werden. Ein bereits zuvor manuell vergebenes Recht wird dabei gesondert behandelt: Die Synchronisation übernimmt es nicht als eigene Vergabe und entzieht es auch nicht aufgrund eines fehlenden Gruppeneintrags.
| Ausgangslage | Folge eines Abgleichs |
|---|---|
| Nur Quelle A vergibt die Rolle | Entfällt A, kann ihre Zuweisung zurückgenommen werden. |
| A und B begründen dieselbe Rolle | Der Entzug von A lässt den gültigen Nachweis von B bestehen. |
| Rolle wurde zuvor manuell vergeben | Die Synchronisation ist nicht für ihren Entzug zuständig. |
Kontosperren getrennt behandeln
Eine Kontosperre betrifft die Nutzbarkeit des Kontos insgesamt. Sie ist daher eine andere Entscheidung als die Zuweisung einer einzelnen Rolle. Auch hier ist die Herkunft wichtig: Meldet ein Verzeichnis das Konto wieder als aktiv, darf dadurch eine unabhängig gesetzte administrative Sperre nicht aufgehoben werden.
Eine automatische Wiederaktivierung setzt voraus, dass die Synchronisation die noch maßgebliche Sperre selbst verantwortet und kein anderer gültiger Sperrgrund entgegensteht. Wurde der Kontozustand inzwischen manuell geändert, ist die frühere Synchronisationsentscheidung keine ausreichende Grundlage mehr.
Gleichzeitige Änderungen
Zwischen dem Lesen eines Kontos und dem Schreiben des neuen Zustands kann eine weitere Änderung eintreffen. Die Verarbeitung sollte deshalb die gelesene Version beim Speichern berücksichtigen. Stimmt sie nicht mehr, muss der aktuelle Zustand neu bewertet werden.
Zusätzlich können zeitlich begrenzte Zuständigkeiten konkurrierende Abgleichläufe koordinieren. Geht eine solche Zuständigkeit verloren, darf ein verspäteter Lauf die neuere Entscheidung nicht überstimmen. Bleibt nach einem Fehler unklar, welche Sperrgründe noch gelten, ist eine nachvollziehbare administrative Klärung sinnvoller als eine unbegründete automatische Freigabe.
Wirksame Rechte und bestehende Sitzungen
Der aktualisierte Rechtebestand und eine bereits ausgestellte Sitzung sind getrennte Ebenen. Ein Zugangstoken kann noch alte Rollenangaben enthalten. Für zeitnahe Rechteänderungen muss daher zusätzlich festgelegt werden, wann Sitzungen erneuert, serverseitig nachgeprüft oder beendet werden.
Eine klare Herkunftsverwaltung beantwortet zunächst, weshalb eine Berechtigung besteht. Zusammen mit den Regeln für Sitzungen und Sperren lässt sich daraus ein Betriebsablauf ableiten, der automatische Gruppenverwaltung und bewusste lokale Entscheidungen miteinander vereinbart.