Genie-Agenten können Ihre Tabellen, Metriken und Dokumente gleichzeitig analysieren, um kontext- und berechtigungsbezogene Erkenntnisse zu liefern.
von Doyoung Jung
• Basieren Sie Genie-Agenten auf strukturierten Daten (Managed Tables, External Tables, Foreign Tables, Views, Metric Views und Materialized Views) und unstrukturierten Dateien (Unity Catalog Volumes), sodass ein einziger Agent Antworten über alle diese Daten hinweg liefern kann.
• Die Agent-Governance ist auf der Katalogebene angesiedelt, nicht auf der Modellebene. Die Governance skaliert mit dem Agenten, anstatt außer Kontrolle zu geraten.
• Mit Automatic Identity Management (AIM), Object Privileges, ABAC, Row Filters und Column Masks in Unity Catalog werden Genie-Agenten unter der Identität des Benutzers ausgeführt, und jede Antwort wird durch die Berechtigungen dieses Benutzers gefiltert.
Einen Agenten zur Automatisierung einfacher Geschäftsaufgaben zu erstellen, kann einfach sein. Aber einen zu entwickeln, der Ihr Unternehmen tatsächlich versteht und Ihre bestehende Data Governance respektiert, ist weitaus schwieriger.
Lange Zeit mussten Teams separate Systeme nutzen, um strukturierte und unstrukturierte Daten zu analysieren, und verbrachten oft Wochen damit, beide Welten miteinander zu verbinden. Indem sie Analysen direkt aus Tabellen und unstrukturierten Dateien ermöglichen, vereinfachen Genie-Agenten diese Architektur. So können Sie einen einzelnen Agenten sowohl auf strukturierten als auch auf unstrukturierten Daten aufbauen.
Wenn Sie diese Daten konsolidieren, stellt sich eine entscheidende Frage: Wenn ein einziger Agent Zugriff auf alles hat, was hindert ihn dann daran, der falschen Person die falschen Informationen zu geben?
Die gute Nachricht ist, dass die Antwort bei Databricks bereits in Ihrer bestehenden Data-Governance-Grundlage liegt. Dieselben Unity Catalog-Mechanismen, auf die Sie sich heute schon verlassen (Identitätssynchronisierung, Objektberechtigungen, ABAC, Zeilenfilter und Spaltenmasken), steuern Genie-Agenten automatisch und ohne zusätzlichen Einrichtungsaufwand. Diese nahtlose Vererbung basiert auf einer gut durchdachten Governance-Strategie, die wir im Detail untersuchen werden.
Um diese Konzepte zu veranschaulichen, werden wir diese Szenarien anhand von Beispielen von Brickstore, einem fiktiven globalen Bausteinhändler, als Referenzpunkt durchgehen.
Das architektonische Grundprinzip ist einfach: Genie-Agenten werden mit den Anmeldedaten des Endbenutzers ausgeführt. Unity Catalog setzt Governance standardmäßig durch und stellt sicher, dass der Zugriff auf Tabellen und Volumes direkt an die bestehende Identität und die Berechtigungen des Endbenutzers gebunden ist.
Dies ist von entscheidender Bedeutung, da viele selbst entwickelte Systeme Agenten weitreichenden Zugriff gewähren und sich auf Prompt Engineering verlassen, um Ergebnisse auf der Modellebene zu filtern. Dadurch wird das LLM praktisch zu Ihrer Sicherheitsgrenze – ein gefährliches Risiko, da Modelle manipuliert oder umgangen werden können. Einem Auditor zu sagen: „Ich habe Anweisungen hinzugefügt, die besagen, dass eingeschränkte Daten nicht angezeigt werden dürfen“, ist keine vertretbare Governance-Kontrolle.
Mit dem in diesem Artikel beschriebenen Governance-Framework bleibt Unity Catalog Ihre Sicherheitsgrenze und nicht das Modell, genau wie im gesamten Rest von Databricks. Während Genie bestimmt, wie die Daten abgefragt werden, ist es nicht in der Lage, einen Datensatz zurückzugeben, für den der Endbenutzer keine Berechtigung hat, da jede Antwort auf Datenebene gefiltert wird, bevor sie das Lakehouse verlässt.
Das architektonische Fundament beginnt mit der Sicherstellung, dass Ihre Unternehmensidentitäten sowohl präzise als auch aktuell sind.
Zugriffskontrollen sind grundsätzlich nur so zuverlässig wie die Identitäten, die sie bewerten. Eine Richtlinie, die besagt: „Mitglieder von brickstore_apac können nur APAC-Bestellungen sehen“, ist bedeutungslos, wenn Ihre Gruppenmitgliedschaften in Databricks eine veraltete, manuell gepflegte Kopie der Daten Ihres Identitätsanbieters sind.
Automatic Identity Management für Microsoft Entra ID und Okta schließt diese Lücke. Wenn diese Option aktiviert ist, werden Benutzer, Gruppen, Gruppenmitgliedschaften und Dienstprinzipale automatisch von diesen Identitätsanbietern in Databricks synchronisiert, ohne dass eine SCIM-Anwendung erforderlich ist. Die Just-in-Time-Bereitstellung ist immer aktiv. Ein Benutzer, der sich noch nie bei Databricks angemeldet hat, wird also bei der ersten Anmeldung bereitgestellt und bringt seine bestehenden Gruppenmitgliedschaften bereits mit.
Hier ist der Ablauf Schritt für Schritt:
brickstore_apac hinzu.Der Vorteil ist, dass Governance kontinuierlich erfolgt und keine einmalige Einrichtung ist. Wenn ein Mitarbeiter von APAC zu AMER wechselt, verschiebt der IdP ihn zwischen den Gruppen, die Synchronisierung überträgt dies, und die nächste Frage, die er Genie stellt, liefert die AMER-Ansicht – ohne dass jemand ein Ticket erstellen oder Änderungen am Genie-Agenten vornehmen muss. Wenn der Mitarbeiter das Unternehmen verlässt, wird er im IdP deaktiviert und sein Zugriff auf alle Genie-Agenten wird sofort entzogen.
Sobald die Identitäten ordnungsgemäß eingerichtet sind, können wir uns darauf konzentrieren, was sie sehen dürfen. Bei strukturierten Daten kann ein Genie-Agent auf alle Daten-Assets von Unity Catalog zugreifen – Tabellen, Views, materialisierte Views, Metrik-Views, Streaming-Tabellen und sogar fremde Tabellen, die aus externen Systemen föderiert wurden.
Zum Beispiel sind Delta-Tabellen die Fakten und Dimensionen. Bei Brickstore sind das brickstore.sales.orders (jede Bestellung mit einer region und einer customer_email) und brickstore.sales.products (der Bausteinkatalog). Metric Views sind die gesteuerte semantische Schicht darüber – sie codieren die Definitionen Ihrer Geschäftskennzahlen (z. B. was „Nettoumsatz“ bedeutet, wie „verkaufte Bausteine“ berechnet wird, was als „meistverkaufter Baustein“ gilt) einmal in YAML, sodass jeder Konsument sie auf dieselbe Weise berechnet.
Über diesen Assets liegen vier Ebenen der Zugriffskontrolle, die in der Praxis oft miteinander verwechselt werden:
Ebene | Beantwortete Frage | Mechanismus |
Objektberechtigungen | Wer hat welche Zugriffsebene auf welche Ressource? |
|
Attributbasierte Zugriffskontrolle (ABAC) | Welche Richtlinie gilt und wofür? | Durch gesteuerte Tags gesteuerte Richtlinien, die einmal zugewiesen werden und sich vererben (z. B. ist jede Spalte mit dem Tag „PII“ nur für bestimmte Gruppen verfügbar) |
Zeilenfilter | Auf welche Zeilen hat ein Benutzer Zugriff? | Benutzerdefinierte SQL-Funktion (UDF), die jede Zeile zum Abfragezeitpunkt auswertet (Zeilen, bei denen die Funktion FALSE zurückgibt, werden aus den Abfrageergebnissen ausgeschlossen) |
Spaltenmasken | Welche Spalten sollen wie maskiert werden? | SQL-UDF, die den Spaltenwert als Eingabe entgegennimmt und den ursprünglichen Wert oder eine maskierte Version zurückgibt |
Objektberechtigungen sind die erste Zugriffsebene: Ohne SELECT kann Genie die Tabelle nicht im Namen des Endbenutzers abfragen. Aber den Zugriff auf eine Tabelle zu gewähren bedeutet nicht, dass Sie allen Zugriff gewähren müssen. Sie legen Zeilenfilter und Spaltenmasken über diese Berechtigungen, sodass ein Regionalleiter die Bestellungstabelle abfragen kann, während er nur die Zeilen seiner eigenen Region und niemals die unverschlüsselte E-Mail-Adresse des Kunden sieht. Diese Zeilen- und Spaltensteuerungen basieren auf genau denselben Gruppen, die Ihre Berechtigungen bereits verwenden – is_account_group_member('brickstore_apac') und ähnlichen. ABAC, das als Nächstes folgt, ersetzt nichts davon; es ist lediglich eine Möglichkeit, dieselben Filter und Masken über eine Richtlinie statt Tabelle für Tabelle zuzuweisen.
Der alte Weg für die Zeilen- und Spaltensicherheit war tabellenspezifisch: Schreiben Sie einen Zeilenfilter, hängen Sie ihn an orders an; schreiben Sie eine Spaltenmaske, hängen Sie sie an eine andere Tabelle an; wiederholen Sie dies endlos. Für einmalige Logik mag das passen, aber bei Hunderten von Tabellen ist diese Konfiguration anfällig für Lücken.
ABAC-Richtlinien, die jetzt zusammen mit verwalteten Tags und automatischer Datenklassifizierung in Unity Catalog GA sind, kehren dies um. Sie kennzeichnen sensible Daten mit verwalteten Tags (Schlüssel-Wert-Paare auf Kontoebene mit kontrolliertem Zugriff wie pii:email), und Sie schreiben eine Richtlinie, die besagt: „Überall dort, wo dieses Tag erscheint, wird dieser Schutz angewendet.“ Neue Tabellen erben den Schutz in dem Moment, in dem sie getaggt werden, sodass kein Aufwand pro Tabelle entsteht.
Eine Spaltenmaske + ABAC-Richtlinie, die jede E-Mail-Spalte im Katalog schützt, in einer einzigen Anweisung:
Und ein Zeilenfilter + ABAC-Richtlinie, gesteuert durch die Gruppenmitgliedschaft, sodass jeder Manager nur die Bestellungen seiner Region sieht:
Das Ergebnis: Der APAC-Manager stellt eine Frage zu Bestellungen und der Genie Agent gibt nur APAC-Zeilen zurück, wobei customer_email maskiert ist. Der AMER-Manager fragt dieselbe Tabelle ab und erhält AMER-Zeilen.
In der Vergangenheit war die Governance-Strategie für Teams beim Umgang mit unstrukturierten Daten eine größere Herausforderung. Während strukturierte Daten sicher in einem Data Warehouse oder einer Datenbank verwaltet werden, werden Dokumente oft in einem isolierten Speichersystem aufbewahrt, das durch separate ACLs geregelt wird.
Die Lösung besteht darin, Dateien innerhalb derselben Governance-Ebene wie Ihre strukturierten Daten aufzubewahren. Sie können sie in Unity Catalog Volumes ablegen, und sie werden wie alles andere zu sicherungsfähigen Objekten. Sie erteilen den Gruppen und Benutzern, die sie sehen dürfen, das Recht GRANT READ VOLUME, und Genie analysiert sie unter demselben Identitätsvertrag:
Ein Verhalten sollten Sie verstehen, bevor Sie Ihren Agenten entwerfen: Wenn Sie ein Volume an einen Genie Agent anhängen, wird es zu einer erforderlichen Quelle. Das bedeutet, dass der Agent beim Laden den Zugriff auf jede angehängte Quelle überprüft. Ein Benutzer, der kein READ VOLUME-Recht für ein angehängtes Volume besitzt, kann diesen Agenten also überhaupt nicht verwenden. Mit anderen Worten: Volume-Berechtigungen regeln Dokumente als Voraussetzung für die Nutzung des Agenten. Stellen Sie also sicher, dass Sie die Dokumentenquellen jedes Agenten auf die Zielgruppe abstimmen, die diesen Agenten verwenden soll. Wenn zwei Zielgruppen unterschiedliche Dokumente benötigen, müssen Sie ihnen möglicherweise verschiedene Genie Agents bereitstellen (die jeweils nur die Volumes mounten, die der Benutzer lesen kann).
Denken Sie auch daran, dass ein Unity Catalog Volume die kleinste sicherungsfähige Einheit ist, sodass Berechtigungen für das gesamte Volume und nicht für einzelne Dateien gelten. Sie können nicht bestimmte Dateien zur Freigabe auswählen; Sie müssen den Zugriff auf das gesamte Volume oder gar nicht gewähren.
Unter Berücksichtigung dieser Aspekte können Volumes direkt an Genie Agents als Wissensquelle angehängt werden, genau wie Sie es bei einer Tabelle oder Ansicht tun würden. Genie Agents lesen weit mehr als nur PDFs – zu den unterstützten Formaten gehören PDF, Bilddateien (JPG, JPEG, PNG, TIFF, TIF) und Office-Dokumente (DOC, DOCX, PPT, PPTX) sowie Klartext und Markdown. In der Praxis bedeutet das, dass gescannte Verträge, Präsentationen und Spezifikationsblätter gleichermaßen geeignet sind, nicht nur saubere PDFs. (Siehe die Dokumentation zu Genie Agents Volumes für die vollständige Liste und die aktuellen Grenzwerte.)

Um ein genaues Routing und eine optimale Leistung zu gewährleisten, befolgen Sie diese Best Practices für die Konfiguration Ihrer Volumes:
An diesem Punkt ist der Genie Agent voll befähigt, als echter Fachexperte zu agieren – mit vollem Zugriff auf strukturierte und unstrukturierte Daten. Die zugrunde liegende Wissensdatenbank ist weiterhin durch Zeilenfilter, Spaltenmasken und Volume-Berechtigungen basierend auf benutzerbezogenen Berechtigungen umfassend geschützt.
Wir testen unsere Implementierung, indem wir sie mit zwei verschiedenen Benutzern prüfen, die genau dieselbe Frage stellen, was zu zwei jeweils korrekten Antworten führen sollte.
Stellen Sie sich zwei gleichzeitige Genie Agent-Sitzungen vor, die beide auf denselben Assets basieren – der Tabelle orders, dem Katalog products und dem Volume market_report. Während ein Anfragender zu brickstore_apac gehört und der andere zu brickstore_amer, senden beide genau dieselbe Anfrage:
„Welches Produkt ist in diesem Quartal unser Bestseller und was treibt diese Nachfrage an? Listen Sie außerdem die wichtigsten Kunden auf, die hinter diesen Verkäufen stehen, sowie deren E-Mails.“
Antwort 1 – für den APAC-Manager

Antwort 2 – für den AMER-Manager

Es gibt drei Dinge, die erwähnenswert sind:
Hier sind einige Muster, auf die Sie achten sollten, wenn Sie die Erkenntnisse aus diesem Blog in die Produktion übertragen:
Einen Agent zu erstellen kann einfach sein, aber seine Governance erfordert echte Konzeptionsarbeit. In Databricks werden Enterprise-Identitäten vom IdP synchronisiert, Objektberechtigungen regeln den Zugriff, ABAC und kontrollierte Tags bieten Schutz in großem Umfang, Zeilenfilter und Spaltenmasken steuern, welche Daten zurückgegeben werden, und Dokumente werden im selben System wie die Daten aufbewahrt.
Mit diesem Setup erben Genie-Agents die gesamte Governance ohne zusätzliche Konfiguration.
Um mit der Erstellung Ihres ersten kontrollierten Genie-Agents zu beginnen, besuchen Sie die Genie-Dokumentation und die Dokumentation zu ABAC-Richtlinien.
(Dieser Blogbeitrag wurde mit KI-gestützten Tools übersetzt.) Originalbeitrag
Abonnieren Sie unseren Blog und erhalten Sie die neuesten Beiträge direkt in Ihren Posteingang.