Unterschiede zwischen Auditprotokollen und Standardtabellen
Die Dataverse-Audit-Tabelle ist eine spezielle Systemtabelle, in der Änderungen an anderen Tabellen in Ihrer Umgebung aufgezeichnet werden. Im Gegensatz zu Standardtabellen unterstützt die Audit-Tabelle nicht die Change Tracking API (Delta-Links) von Dataverse. Stattdessen verwendet Data Mission Sync einen zeitstempelbasierten Wasserzeichenansatz, um Audit-Daten zu synchronisieren.
| 💡 Hinweis: Um Audit-Protokolle zu synchronisieren, muss die Überwachung in Ihrer Dataverse-Umgebung aktiviert sein. Weitere Informationen finden Sie in der Microsoft-Dokumentation zur Konfiguration der Dataverse-Überwachung. |
Wasserzeichenbasierte Synchronisierung
Für die Audit-Tabelle verfolgt Data Mission Sync den zuletzt synchronisierten Datensatz unter Verwendung des Zeitstempels „createdon” als Wasserzeichen. Bei jeder Synchronisierung werden Audit-Datensätze abgerufen, die nach dem letzten Wasserzeichen erstellt wurden, um sicherzustellen, dass keine Audit-Einträge übersehen werden.
Dieser Ansatz unterscheidet sich von Standardtabellen, die die native Change Tracking-API von Dataverse mit Delta-Links verwenden. Die Wasserzeichenmethode ist aus folgenden Gründen erforderlich:
• Die Audit-Tabelle ist schreibgeschützt und kann nur angehängt werden (Datensätze werden niemals aktualisiert oder gelöscht).
• Die Change Tracking API wird für die Audit-Tabelle nicht unterstützt.
• Der Zeitstempel „createdon“ bietet eine zuverlässige Reihenfolge für die inkrementelle Abfrage.
Zweiphasige Verarbeitung
Auditdaten werden in zwei Phasen verarbeitet:
1. Abruf von Audit-Einträgen: Die wichtigsten Audit-Datensätze werden abgerufen, die Metadaten zu jeder Änderung enthalten (wer, wann, welche Tabelle, welche Aktion).
2. Audit-Detail-Extraktion: Das JSON-Feld „changedata“ wird geparst, um detaillierte Änderungen auf Attributebene (alter Wert, neuer Wert) in eine separate Auditdetail-Tabelle zu extrahieren.
Zieltabellen für Auditdaten
Wenn Sie die Audit-Tabelle synchronisieren, erstellt Data Mission Sync zwei Tabellen in Ihrer Azure SQL-Datenbank:
| Tabelle | Beschreibung |
| audit | Enthält die wichtigsten Audit-Datensätze, darunter auditid, action, objectid, entity_name, userid, createdon und die rohen changedata-JSON-Daten. |
| auditdetail | Enthält geparste Änderungen auf Attributebene, die aus den geänderten Daten im JSON-Format extrahiert wurden. Jede Zeile steht für ein geändertes Feld mit Spalten für den Attributnamen, den alten Wert und den neuen Wert. |
Behandlung von NULL-Werten
Data Mission Sync bewahrt die semantische Bedeutung von NULL-Werten in Audit-Daten:
• NULL in oldvalue bedeutet, dass das Feld zuvor nicht gesetzt war (neuer Datensatz oder Feld war leer).
• NULL in „newvalue” bedeutet, dass das Feld gelöscht wurde
• Eine leere Zeichenfolge bedeutet, dass das Feld explizit auf einen leeren Wert gesetzt wurde
Diese Unterscheidung ist wichtig für eine genaue Analyse des Prüfpfads und die Erstellung von Compliance-Berichten.