Aufbau sicherer RAG-Workflows mit Datenpartitionierung auf Chunk-Ebene
Vektordatenbanken sind zu einem Eckpfeiler für den Betrieb KI-gestützter Anwendungen geworden, insbesondere RAG (Retrieval Augmented Generation), und ermöglichen schnelle und effiziente Ähnlichkeitssuchen über riesige hochdimensionale Datensätze hinweg. Effektive Partitionierung wird entscheidend, wenn diese Datenbanken skalieren, um Milliarden von Vektoren aufzunehmen. Durch die Organisation von Daten in logische Segmente verbessert Partitionierung die Abfrageleistung, unterstützt Skalierbarkeit und gewährleistet sicheres Datenmanagement durch mandantenspezifische Isolation in Mehrbenutzerumgebungen.
Moderne Vektordatenbanken wie Milvus und Zilliz Cloud (das verwaltete Milvus) haben fortschrittliche Partitionierungsfunktionen eingeführt, um den Anforderungen von Unternehmensanwendungen gerecht zu werden. Mit der wachsenden Anzahl von Partitionen steigt jedoch auch die Komplexität ihrer effektiven Verwaltung. Unternehmen suchen nun nach datenschutzorientierten Lösungen, die Partitionierung skalieren können und sich zugleich nahtlos in KI-Workflows integrieren lassen.
Bei einem kürzlich von Zilliz veranstalteten South Bay Unstructured Data Meetup teilte Rob Quiros, CEO und Mitgründer von Caber Systems, einen innovativen Ansatz zur Partitionierung von Vektordatenbanken mithilfe von Zugriffspolitiken pro Benutzer und pro Chunk. Er erläuterte, wie die Integration von Berechtigungen und Autorisierung in Partitionen Daten auf Chunk-Ebene absichern und Datenschutzbedenken adressieren kann. Dieser Blog fasst seine Erkenntnisse zusammen und untersucht, wie Caber Systems die Milvus-Vektordatenbank nutzt, um ein robustes, datenschutzorientiertes Datenmanagement zu erreichen. Weitere Details finden Sie in der vollständigen Aufzeichnung seines Vortrags auf YouTube.
Herausforderungen bei der Zugriffskontrolle für Vektordatenbanken
Moderne Vektordatenbanken wie Milvus unterstützen effektiv Mandantenfähigkeit, wodurch getrennte Speicherung und Verwaltung für unterschiedliche Kundendatensätze ermöglicht werden. Diese Fähigkeit stellt sicher, dass die Daten eines Mandanten isoliert und für andere unzugänglich sind, und bildet eine robuste Grundlage für sicheres und organisiertes Datenmanagement. Während diese Trennung jedoch die übergreifende Datenisolation gut abdeckt, ist die Implementierung granularer benutzerspezifischer Zugriffskontrollen innerhalb dieser Datensätze anspruchsvoller. Dies liegt an der Vielfalt der Zugriffskontrollmodi, die Unternehmen benötigen.
Einige davon sind:
Rollenbasierte Zugriffskontrolle (RBAC) - Weist Berechtigungen basierend auf vordefinierten Rollen zu, hat jedoch Schwierigkeiten mit komplexen, dynamischen Anforderungen.
Attributbasierte Zugriffskontrolle (ABAC) - Verwendet Attribute wie Benutzerrollen, Datensensibilität oder geografischen Standort, erfordert jedoch ein robustes Richtlinienverwaltungssystem.
Beziehungsbasierte Zugriffskontrolle (ReBAC) - Gewährt Zugriff basierend auf Beziehungen zwischen Abteilungen oder Teams, was die Durchsetzungsmechanismen komplexer macht.
Darüber hinaus kann die Bereitstellung und Verwaltung solcher Zugriffskontrollen zu einem administrativen Albtraum werden. Von der Zuweisung von Berechtigungen bis zur Bearbeitung von Zugriffsanfragen oder Streitfällen kann der operative Aufwand auch Support-Teams überfordern. Die folgende Abbildung von Permit.io zeigt ein Beispiel für ReBAC-Kontrolle. Sie veranschaulicht einen komplizierten Prozess für den Zugriff auf einen bestimmten Daten-Chunk, der nur während der laufenden Sitzung gültig ist.
Abbildung: Ein Beispiel für ReBAC-Kontrolle
Abbildung: Ein Beispiel für ReBAC-Kontrolle
Die Rolle von Agenten beim Datenzugriff
In RAG-Systemen fragen die Agenten, die im Namen der Benutzer handeln, Vektordatenbanken ab und rufen Informationen ab. Obwohl sie die Effizienz verbessern, indem sie die Aufgabe automatisieren, stellen sie eine erhebliche Sicherheitsherausforderung dar. Agenten fungieren als Stellvertreter für Benutzeraktionen, was bedeutet, dass sie beim Datenzugriff Benutzerberechtigungen erben. Dieser Mechanismus ist jedoch anfällig für Angriffe:
Agent-Spoofing: Böswillige Akteure können sich als Agenten ausgeben und Benutzeranmeldedaten ausnutzen, um auf sensible Daten zuzugreifen.
Datenleck: Wenn die Sitzung eines Agenten kompromittiert wird, könnte sie unbefugten Zugriff auf große Datenmengen gewähren.
Abbildung: Sicherheitsprobleme mit Agentic RAG
Abbildung: Sicherheitsprobleme mit Agentic RAG
Um diese Risiken zu mindern, müssen Unternehmen strenge Maßnahmen ergreifen:
Authentifizierung: Starke Agentenauthentifizierung, um Identitäten zu überprüfen und Spoofing zu verhindern.
Sitzungsverwaltung: Beschränkung von Agentensitzungen auf vordefinierte Zeiträume, wie Reback demonstrierte.
Protokollierung und Überwachung: Umfassende Audit-Trails, um Agentenaktivitäten nachzuverfolgen und Anomalien zu erkennen.
Obwohl die Ergreifung dieser Maßnahmen helfen kann, die Angriffe zu bekämpfen, wird die Umsetzung all dessen sehr mühsam.
Datenduplizierung – Eine erhebliche Herausforderung für Unternehmen
Datenduplizierung ist ein anhaltendes Problem in Unternehmensumgebungen. Dokumente durchlaufen häufig mehrere Iterationen durch Copy-Paste, Dateifreigabe oder Versionierung, was zu redundanten Chunks führt, die in Vektordatenbanken gespeichert werden. Diese Duplizierung erhöht den Speicheraufwand und verschlechtert die Generalisierbarkeit von LLMs. Rob erwähnt seine frühere Erfahrung mit Datendeduplizierung bei Riverbed, wo sie feststellten, dass 90-95 % der Daten Duplikate waren, die eliminiert werden mussten.
Abbildung: Datenduplizierung ist eine große Herausforderung beim Festlegen von Berechtigungen
Abbildung: Datenduplizierung ist eine große Herausforderung beim Festlegen von Berechtigungen
Eine wesentliche Komplikation entsteht, wenn Metadaten, einschließlich Berechtigungen, direkt von Dokumenten auf Chunks in Vektordatenbanken kopiert werden. Wenn doppelte Chunks in verschiedenen Dokumenten mit unterschiedlichen Berechtigungen existieren, können die Metadaten überschrieben werden, was zu Konflikten oder unsachgemäßen Zugriffskontrollen führt. Daher ist die Auflösung von Berechtigungen auf Chunk-Ebene entscheidend, um Datensicherheit und Compliance zu gewährleisten.
Unten ist ein Beispiel für den Apple 10-Q-Bericht, in dem man sehen kann, dass der Boilerplate-Text beider Dokumente gleich ist und dass die Unterschiede zwischen den Versionen minimal sind. Daher besteht das Ziel hier darin, die Ursprünge der Daten-Chunks und ihre zugehörigen Berechtigungen zu identifizieren und nachzuverfolgen, damit die korrekten Zugriffsregeln konsistent angewendet werden können.
Abbildung: Beispiel ähnlicher Dokumente aus Apples 10Q-Einreichungen
Sicherung von Daten auf Chunk-Ebene
Um diese Probleme anzugehen, schlug Caber eine Lösung vor, um Daten auf Chunk-Ebene zu sichern. Dies geschieht, indem die in die Vektordatenbank aufgenommenen Dokumente betrachtet und parallel ein Index erstellt wird, um die Beziehungen zwischen Chunks und ihren Quellen abzubilden. Dieser Lineage-Graph bietet Einblick in den Ursprung jedes Chunks und die zugehörigen Berechtigungen und ermöglicht so die deterministische Zuweisung von Berechtigungen.
Abbildung- Cabers Ansatz zur Sicherung von Daten auf Chunk-Ebene
Abbildung: Cabers Ansatz zur Sicherung von Daten auf Chunk-Ebene (Quelle)
Beispiel-Lineage-Graph mit Apples 10-Q-Einreichungen
Um Apples Beispiel fortzuführen: Der folgende Graph enthält Daten-Chunks aus mehreren Versionen von Apples 10-Q-Einreichungen. Die roten Knoten im Graphen stellen die gemeinsamen Daten-Chunks über alle Dokumente hinweg dar. Mithilfe einer Richtlinie werden die Berechtigungen für jeden dieser Chunks bestimmt. Diese Berechtigungen werden dann berücksichtigt, während die Daten aus der Vektordatenbank abgerufen werden, um sicherzustellen, dass die Benutzer über die entsprechende Autorisierung für den Zugriff auf diese Chunks verfügen.
Figure: Dynamische Zuordnung der Lineage jedes Chunks für Berechtigungen mit Caber
Beispiel-RAG-Demo mit Apples 10-Q-Einreichungen
Anfangs werden die Daten in der Vektordatenbank wie Milvus ohne Berechtigungsmetadaten gespeichert. Wenn die Daten aus RAG ausgegeben werden, ermöglicht Cabers Integration in den Workflow über ein SDK das Filtern und Schwärzen dieser Daten auf granularer Ebene, bevor sie an das LLM weitergegeben werden können. Beispielsweise zeigt die Abbildung die Zugriffsautorisierung für zwei verschiedene Benutzer – Amy, CFO des Unternehmens, ist autorisiert, auf alle Daten-Chunks aus den 10-Q-Berichten von 2023 und 2024 zuzugreifen. Im Gegensatz dazu wurde Bob, einem anderen Benutzer, derselbe Zugriff verweigert und er erhält eine generische Antwort.
Figure: RAG-Beispiel, das unterschiedlichen Zugriff für zwei Benutzer demonstriert
Cabers Integration in LLM-Workflows und seine Fähigkeiten
Figure: Caber integriert sich in LLM-Workflows
Caber kann mithilfe eines SDK in LLM-Workflows integriert werden und ermöglicht so eine nahtlose Verwaltung der Zugriffskontrolle. Über Identity Connectors ruft das System Informationen zur Benutzerauthentifizierung ab, während andere Connectors helfen, einen Index von Daten-Chunks zusammen mit ihren zugehörigen Berechtigungen aufzubauen. Wenn beispielsweise ein Benutzer mit dem System interagiert, übergibt der Agent den Prompt an die Vektordatenbank. Die RAG-Antwort wird dann an die LLMs gesendet, die die endgültige Antwort bereitstellen. Während dieses Prozesses werden die Daten basierend auf ihrem Fluss nachverfolgt, und alle Verbindungen werden dem jeweiligen Benutzer zugeordnet.
Hier hilft die Verwendung von Milvus als Vektordatenbank dabei, dynamische Partitionierung und Multi-Tenancy zu unterstützen, was es ideal für datenschutzorientierte Anwendungen macht, die Zugriffskontrolle pro Chunk erfordern. Mit Funktionen wie HNSW-Indexierung stellt es Hochgeschwindigkeitsabfragen über Milliarden von Vektoren hinweg sicher.
Verantwortlichkeit und Auditierbarkeit
Die Nachverfolgbarkeit, die Caber bietet, ermöglicht entscheidende Verantwortlichkeit und Audit-Fähigkeiten. Besonders in komplexen Szenarien mit Agentic AI, in denen LLMs autonom im Namen von Benutzern handeln, besteht aufgrund der recht unvorhersehbaren Aktionen eine hohe Wahrscheinlichkeit, dass etwas schiefgeht (z. B.: sensible Daten werden offengelegt). Hier ist das Wissen darüber, wie sich die Daten durch verschiedene API- und Objektaufrufe bewegt haben, entscheidend, um herauszufinden, an welchem genauen Schritt das System versagt hat.
Figure: Verantwortlichkeit und Auditierbarkeit
Detaillierte Observability des Anwendungsflusses
Caber ermöglicht außerdem die Analyse und das Debugging von Anwendungstools durch detaillierte Observability des Anwendungsflusses. Die Fähigkeit nachzuverfolgen, wann und durch welche Dienste auf die Daten des Benutzers zugegriffen wurde, ermöglicht es Organisationen, Engpässe, Ineffizienzen und Sicherheitsrisiken innerhalb der Datenpipelines der Anwendung besser zu identifizieren.
Figure: Observability des Anwendungsflusses
Anforderungen an die Daten-Compliance in Bezug auf Richtlinien
Die oben gewonnenen Erkenntnisse können in LLMs zurückgespeist werden, um Sicherheitsrichtlinien zu verbessern und Lücken proaktiv zu schließen. Das Framework unterstützt Zugriffskontrolle, Auditierbarkeit, Behebung und Analyse, gewährleistet Compliance und erhöht die Systemresilienz.
Daten-Compliance-Anforderungen zu Richtlinien.png
Daten-Compliance-Anforderungen zu Richtlinien (Quelle)
Fazit
Mit dem Wachstum der Anwendungsfälle von LLM-Anwendungen verlassen sich immer mehr Unternehmen auf RAG, um ihre Aufgaben auszuführen. Daher wird die Sicherung und Verwaltung des Datenzugriffs auf granularer Ebene sehr wichtig. Lösungen wie Caber, kombiniert mit den fortschrittlichen Partitionierungs- und Suchfunktionen von Milvus, bieten den idealen Rahmen, um Herausforderungen wie Datenduplizierung und die Festlegung der Zugriffskontrolle für die sichere Nutzung von Daten zu bewältigen.
Relevante Ressourcen
Weiterlesen

Introducing Business Critical Plan: Enterprise-Grade Security and Compliance for Mission-Critical AI Applications
Discover Zilliz Cloud’s Business Critical Plan—offering advanced security, compliance, and uptime for mission-critical AI and vector database workloads.

Zilliz Cloud Update: Tiered Storage, Business Critical Plan, Cross-Region Backup, and Pricing Changes
This release offers a rebuilt tiered storage with lower costs, a new Business Critical plan for enhanced security, and pricing updates, among other features.

Demystifying the Milvus Sizing Tool
Explore how to use the Sizing Tool to select the optimal configuration for your Milvus deployment.


