Kontext
Jedes Objekt innerhalb von DTZ muss einen übergeordneten Kontext haben. Dieser repräsentiert die Organisationsstruktur, die ein Objekt hält, ermöglicht Zugriffskontrolle und bietet Abrechnung sowie Buchführung. Jedem Benutzer ist standardmäßig ein Kontext an seine Sitzung angehängt. Wenn ein Benutzer also angemeldet ist, unabhängig von der Methode (apikey, oauth, etc.), ist der Sitzung bereits ein Kontext zugeordnet.
flowchart LR
uid[User Identity] -- "has access" --> context
subgraph context
Context[Context Core] -- "owns" --> Objectstore
Context -- "owns" --> Containers
Context -- "owns" --> Rss2Email
Context -- "owns" --> E@{ shape: processes, label: "Other Services"}
end
Der aktuelle Kontext wird immer in der Titelleiste oben links angezeigt.

Der Wechsel des Kontexts erfolgt durch Auswahl des neuen Kontexts im Drop-down-Menü.
Ein neuer Kontext kann über die Hauptseite oder den folgenden Link erstellt werden.
https://dtz.rocks/new/ | Neuer Kontext
In Terraform wird der Kontext implizit aus der Benutzersitzung abgeleitet oder mittels der Datenquelle dtz_context abgefragt—even wenn er nicht explizit im Resource-Block deklariert ist.
Kontext-Admin
Der Kontext-Admin ist eine Rolle, die der Eigentümer-Identität das Recht gibt, Berechtigungen und Rollen bezüglich des Kontexts zu steuern. Der Ersteller des Kontexts erhält stets die Rolle des Kontext-Admins.
Außerdem wird eine neue Identität für den Kontext erstellt, die innerhalb des Kontexts als Service Principal dient. Die Identität wird mit folgendem Alias erstellt.
admin@{context_id}.dtz.rocks
Alle Kontext-Admins erhalten automatisch Zugriff auf alle innerhalb des Kontexts genutzten Dienste.