Konfigurieren geschützter Tabellen in Azure Monitor Protokollen (Vorschau)

In diesem Artikel erfahren Sie, wie Sie die Schutzebene einer Tabelle festlegen, autorisierten Benutzern Zugriff gewähren und überprüfen, ob Ihre Konfiguration wie erwartet funktioniert. Geschützte Tabellen verwenden ein „standardmäßiges Verweigern“-Modell, so dass nicht privilegierte Standard- und angepasste Leserollen erst dann auf vertrauliche Daten zugreifen können, wenn Sie die Berechtigung über ABAC-Bedingungen ausdrücklich erteilen.

Voraussetzungen

Anforderung Details
Azure-Abonnement Ein aktives Azure-Abonnement mit einem Log Analytics Arbeitsbereich.
Erlaubnisse Besitzer oder Log Analytics Mitwirkender auf dem Arbeitsbereich. Sie benötigen die Aktion, um die Microsoft.OperationalInsights/workspaces/tables/protectionLevel/write Schutzebene einer Tabelle zu ändern.
Kenntnisse in RBAC und ABAC Verständnis von Azure RBAC und ABAC-Bedingungen. Hintergrundinformationen zu ABAC in Log Analytics finden Sie unter Granular RBAC in Azure Monitor.

Festlegen der Schutzebene einer Tabelle

Das Festlegen der Schutzebene einer Tabelle auf Protected verhindert sofort, dass nicht privilegierte Standardrollen mit Lesezugriff und benutzerdefinierte Rollen auf die Daten in der Tabelle zugreifen. Führen Sie diese Schritte für jede Tabelle aus, die vertrauliche Telemetrie enthält.

  1. Wechseln Sie im Azure-Portal zu Log Analytics Arbeitsbereichen, und wählen Sie Ihren Arbeitsbereich aus.
  2. Wählen Sie unter "Einstellungen" "Tabellen" aus.
  3. Suchen Sie die Tabelle, die Sie schützen möchten, und wählen Sie das Dreipunktmenü (...) aus.
  4. Wählen Sie "Tabelle verwalten" aus.
  5. Wählen Sie unter "Schutzebene" die Option "Geschützt" aus.
  6. Wählen Sie Speichern.

Screenshot des Azure Portals mit dem Bereich

Gewähren des Zugriffs auf geschützte Tabellen

Nachdem Sie eine Tabelle geschützt haben, müssen Sie benutzern, die die Daten benötigen, explizit Zugriff gewähren. Verwenden Sie die integrierte Rolle " Privileged Monitoring Data Reader " für den allgemeinen Zugriff, oder erstellen Sie benutzerdefinierte Rollen mit protectionLevel ABAC-Bedingungen für einen gezielteren Zugriff.

Weisen Sie die Rolle Privileged Monitoring Data Reader zu

Die integrierte Rolle Privileged Monitoring Data Reader gewährt Lesezugriff auf alle geschützten Tabellen im zugewiesenen Geltungsbereich.

Das Azure-Portal unterstützt das Hinzufügen von ABAC-Bedingungen zu integrierten Rollen nicht. Diese Einschränkung ist eine UX-Sicherheit, um Benutzerfehler zu verhindern. Um dieser Rolle benutzerdefinierte Bedingungen hinzuzufügen, verwenden Sie ARM-Vorlagen, die REST-API oder andere programmgesteuerte Methoden.

  1. Wechseln Sie im Azure-Portal zu dem Bereich, in dem Sie die Rolle zuweisen möchten (Abonnement, Ressourcengruppe, Arbeitsbereich oder jede unterstützte Azure Ressource).
  2. Wählen Sie Zugriffssteuerung (IAM)>Hinzufügen>Rollenvergabe hinzufügen.
  3. Suchen Sie auf der Registerkarte " Rolle " nach Privileged Monitoring Data Reader , und wählen Sie sie aus.
  4. Wählen Sie auf der Registerkarte " Mitglieder " den Benutzer, die Gruppe oder die verwaltete Identität aus.
  5. Wählen Sie Überprüfen + zuweisen.

Zugriff nur auf bestimmte geschützte Tabellen gewähren

Wenn Sie den Zugriff auf einzelne geschützte Tabellen statt auf alle einschränken müssen, erstellen Sie eine benutzerdefinierte Rollenzuweisung mit ABAC-Bedingungen, die sowohl auf Tabellenname als auch auf Schutzebene filtern.

  1. Erstellen oder auswählen Sie eine benutzerdefinierte Rolle basierend auf der Zugriffsmethode , die Sie verwenden möchten.

    • Das DataActions, das für den arbeitsbereichszentrierten Zugriff erforderlich ist: Microsoft.OperationalInsights/workspaces/tables/data/read
    • Der DataActions wird für den ressourcenbezogenen Zugriff benötigt: Microsoft.Insights/logs/data/read
  2. Fügen Sie beim Erstellen der Rollenzuweisung eine Bedingung mit zwei Ausdrücken hinzu, die mit AND verbunden sind:

    Expression Merkmal Operator Wert
    1 Microsoft.OperationalInsights/workspaces/tables:name StringEquals Der name der spezifischen Tabelle (z. B AppTraces. )
    2 Microsoft.OperationalInsights/workspaces/tables:protectionLevel StringEquals Protected

    Die Bedingung im ABAC-Format sieht wie folgt aus:

    (
      (
        !(ActionMatches{'Microsoft.OperationalInsights/workspaces/tables/data/read'})
      )
      OR
      (
        @Resource[Microsoft.OperationalInsights/workspaces/tables:name] StringEquals 'AppTraces'
        AND
        @Resource[Microsoft.OperationalInsights/workspaces/tables:protectionLevel] StringEquals 'Protected'
      )
    )
    

    Passen Sie den Tabellennamen und den Operator nach Bedarf an. Verwenden Sie ForAllOfAnyValues:StringEquals für den Zugriff auf mehrere Tabellen mit einer Liste von Tabellennamen. Weitere Informationen zur Ausdruckssyntax finden Sie unter Granular RBAC in Azure Monitor.

Gewähren von zeitgebundenen Zugriffen mit PIM

Verwenden Sie Microsoft Entra Privileged Identity Management (PIM), um just-in-time, zeitlich begrenzten Zugriff auf geschützte Tabellen zu gewähren.

  1. Erstellen Sie in PIM eine berechtigte Aufgabe für die Privileged Monitoring Data Reader-Rolle (oder Ihre benutzerdefinierte Rolle) im gewünschten Bereich.
  2. Legen Sie die maximale Aktivierungsdauer gemäß der Richtlinie Ihrer Organisation fest.
  3. Wenn Benutzer Zugriff benötigen, aktivieren sie die Rolle in PIM. Der Zugriff wird automatisch widerrufen, wenn das Aktivierungsfenster abläuft.

Dieses Muster eignet sich gut für Vorfallreaktions- und Supportszenarien, in denen Techniker temporären Zugriff auf vertrauliche Protokolle benötigen.

Aktivieren des DataActionsOnly-Modus

Standardmäßig bieten einige Rollen, die auf Steuerungsebenenaktionen basieren, z. B. Lese- und Überwachungsleseprogramm, impliziten Lesezugriff auf Protokolldaten. Im DataActionsOnly-Modus wird dieser Zugriffspfad entfernt, sodass nur DataActions den Datenzugriff steuern.

  1. Wechseln Sie im Azure-Portal zu Log Analytics Arbeitsbereichen, und wählen Sie Ihren Arbeitsbereich aus.
  2. Wählen Sie unter Einstellungen die Option Eigenschaften aus.
  3. Wählen Sie im Datenautorisierungsmodusnur Datenaktionen aus.

Screenshot des Azure Portals mit dem Bereich

Nachdem Sie den Modus DataActionsOnly aktiviert haben, vergewissern Sie sich, dass Benutzern, die sich zuvor beim Protokollzugriff auf Control-Plane-Rollen verlassen haben, nun entsprechende Rollenzuweisungen auf Grundlage von DataActions erhalten.

Überprüfen Sie Ihre Konfiguration

Führen Sie diese Überprüfungen aus, um zu bestätigen, dass Schutz- und Zugriffserteilungen ordnungsgemäß funktionieren.

Vergewissern Sie sich, dass nicht privilegierte Benutzer keine Daten sehen

  1. Melden Sie sich als ein Benutzer an, der über die Rolle Log Analytics Reader verfügt, aber nicht über die Rolle Privileged Monitoring Data Reader oder eine angepasste Rolle mit einer protectionLevel-Bedingung.

  2. Öffnen Sie den Arbeitsbereich im Azure-Portal, und wechseln Sie zu "Protokolle".

  3. Führen Sie eine Abfrage für die geschützte Tabelle aus.

    ProtectedTableName
    | take 10
    
  4. Vergewissern Sie sich, dass die Abfrage erfolgreich ist, aber keine Zeilen zurückgibt.

Bestätigen, dass privilegierte Benutzer Daten sehen

  1. Melden Sie sich als Benutzer an, der über die Rolle "Privileged Monitoring Data Reader" oder eine entsprechende benutzerdefinierte Rolle mit ABAC-Bedingungen verfügt.
  2. Führen Sie dieselbe Abfrage aus.
  3. Vergewissern Sie sich, dass die Abfrage Datenzeilen zurückgibt.

Überprüfen des Aktivitätsprotokolls auf Konfigurationsänderungen

Öffnen Sie das Aktivitätsprotokoll für den Arbeitsbereich, und filtern Sie nach dem Vorgangsnamen "Tabelle aktualisieren". Suchen Sie nach Einträgen, die Änderungen an der protectionLevel Eigenschaft anzeigen. Diese Einträge bestätigen, wann und von wem Tabellen geschützt wurden.