Freigeben über


DatabaseBlobAuditingPolicy interface

Eine Richtlinie für die Datenbank-BLOB-Überwachung.

Extends

Eigenschaften

auditActionsAndGroups

Gibt die zu überwachenden Actions-Groups und Aktionen an.

Die empfohlene Gruppe von Aktionsgruppen ist die folgende Kombination : Dadurch werden alle Abfragen und gespeicherten Prozeduren überwacht, die für die Datenbank ausgeführt werden, sowie erfolgreiche und fehlgeschlagene Anmeldungen:

BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.

Diese oben genannte Kombination ist auch der Satz, der standardmäßig konfiguriert ist, wenn die Überwachung über das Azure-Portal aktiviert wird.

Die unterstützten Aktionsgruppen für die Überwachung sind (Hinweis: Wählen Sie nur bestimmte Gruppen aus, die Ihre Überwachungsanforderungen abdecken. Die Verwendung unnötiger Gruppen könnte zu sehr großen Mengen von Überwachungsdatensätzen führen:

APPLICATION_ROLE_CHANGE_PASSWORD_GROUP BACKUP_RESTORE_GROUP DATABASE_LOGOUT_GROUP DATABASE_OBJECT_CHANGE_GROUP DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP DATABASE_OBJECT_PERMISSION_CHANGE_GROUP DATABASE_OPERATION_GROUP DATABASE_PERMISSION_CHANGE_GROUP DATABASE_PRINCIPAL_CHANGE_GROUP DATABASE_PRINCIPAL_IMPERSONATION_GROUP DATABASE_ROLE_MEMBER_CHANGE_GROUP FAILED_DATABASE_AUTHENTICATION_GROUP SCHEMA_OBJECT_ACCESS_GROUP SCHEMA_OBJECT_CHANGE_GROUP SCHEMA_OBJECT_ OWNERSHIP_CHANGE_GROUP SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP USER_CHANGE_PASSWORD_GROUP BATCH_STARTED_GROUP BATCH_COMPLETED_GROUP DBCC_GROUP DATABASE_OWNERSHIP_CHANGE_GROUP DATABASE_CHANGE_GROUP LEDGER_OPERATION_GROUP

Dies sind Gruppen, die alle sql-Anweisungen und gespeicherten Prozeduren abdecken, die für die Datenbank ausgeführt werden, und sollten nicht in Kombination mit anderen Gruppen verwendet werden, da dies zu doppelten Überwachungsprotokollen führt.

Weitere Informationen finden Sie unter Database-Level Überwachen von Aktionsgruppen.

Für die Datenbanküberwachungsrichtlinie können auch bestimmte Aktionen angegeben werden (beachten Sie, dass Aktionen für die Serverüberwachungsrichtlinie nicht angegeben werden können). Die unterstützten Aktionen zum Überwachen sind: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES

Das allgemeine Formular zum Definieren einer zu überwachenden Aktion lautet: {action} ON {object} BY {principal}

Beachten Sie, dass <das Objekt im obigen Format auf ein Objekt> wie eine Tabelle, Ansicht oder gespeicherte Prozedur oder eine gesamte Datenbank oder ein gesamtes Schema verweisen kann. In letzteren Fällen werden die Formulare DATABASE::{db_name} und SCHEMA::{schema_name} verwendet.

Beispiel: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public

Weitere Informationen finden Sie unter Database-Level Überwachungsaktionen

isAzureMonitorTargetEnabled

Gibt an, ob Überwachungsereignisse an Azure Monitor gesendet werden. Um die Ereignisse an Azure Monitor zu senden, geben Sie "State" als "Enabled" und "IsAzureMonitorTargetEnabled" als "true" an.

Bei Verwendung der REST-API zum Konfigurieren der Überwachung sollten auch Diagnoseeinstellungen mit der Diagnoseprotokollkategorie "SQLSecurityAuditEvents" in der Datenbank erstellt werden. Beachten Sie, dass Sie für die Überwachung auf Serverebene die Datenbank "master" als {databaseName} verwenden sollten.

URI-Format der Diagnoseeinstellungen: PUT-https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

Weitere Informationen finden Sie unter REST-API für Diagnoseeinstellungen oder Diagnoseeinstellungen powerShell-

isManagedIdentityInUse

Gibt an, ob verwaltete Identität für den Zugriff auf BLOB-Speicher verwendet wird.

isStorageSecondaryKeyInUse

Gibt an, ob storageAccountAccessKey-Wert der Sekundärschlüssel des Speichers ist.

kind

Ressourcentyp. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Er kann nur vom Server aufgefüllt werden.

queueDelayMs

Gibt die Zeitspanne in Millisekunden an, die verstrichen werden kann, bevor Überwachungsaktionen verarbeitet werden müssen. Der Standardwert ist 1000 (1 Sekunde). Das Maximum beträgt 2.147.483.647.

retentionDays

Gibt die Anzahl der Tage an, die in den Überwachungsprotokollen im Speicherkonto gespeichert werden sollen.

state

Gibt den Status der Überwachung an. Wenn der Status aktiviert ist, sind "storageEndpoint" oder "isAzureMonitorTargetEnabled" erforderlich.

storageAccountAccessKey

Gibt den Bezeichnerschlüssel des Überwachungsspeicherkontos an. Wenn der Status aktiviert ist und "storageEndpoint" angegeben ist, verwendet "storageAccountAccessKey" nicht die vom Sql Server zugewiesene verwaltete Identität für den Zugriff auf den Speicher. Voraussetzungen für die Verwendung der verwalteten Identitätsauthentifizierung:

  1. Weisen Sie SQL Server einer vom System zugewiesenen verwalteten Identität in Azure Active Directory (AAD) zu.
  2. Gewähren Sie SQL Server-Identitätszugriff auf das Speicherkonto, indem Sie der Serveridentität die RBAC-Rolle "Storage Blob Data Contributor" hinzufügen. Weitere Informationen finden Sie unter Überwachung des Speichers mit verwalteter Identitätsauthentifizierung
storageAccountSubscriptionId

Gibt die BLOB-Speicherabonnement-ID an.

storageEndpoint

Gibt den BLOB-Speicherendpunkt an (z. B. https://MyAccount.blob.core.windows.net). Wenn der Status aktiviert ist, ist "storageEndpoint" oder "isAzureMonitorTargetEnabled" erforderlich.

Geerbte Eigenschaften

id

Ressourcen-ID. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Er kann nur vom Server aufgefüllt werden.

name

Ressourcenname. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Er kann nur vom Server aufgefüllt werden.

type

Ressourcentyp. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Er kann nur vom Server aufgefüllt werden.

Details zur Eigenschaft

auditActionsAndGroups

Gibt die zu überwachenden Actions-Groups und Aktionen an.

Die empfohlene Gruppe von Aktionsgruppen ist die folgende Kombination : Dadurch werden alle Abfragen und gespeicherten Prozeduren überwacht, die für die Datenbank ausgeführt werden, sowie erfolgreiche und fehlgeschlagene Anmeldungen:

BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.

Diese oben genannte Kombination ist auch der Satz, der standardmäßig konfiguriert ist, wenn die Überwachung über das Azure-Portal aktiviert wird.

Die unterstützten Aktionsgruppen für die Überwachung sind (Hinweis: Wählen Sie nur bestimmte Gruppen aus, die Ihre Überwachungsanforderungen abdecken. Die Verwendung unnötiger Gruppen könnte zu sehr großen Mengen von Überwachungsdatensätzen führen:

APPLICATION_ROLE_CHANGE_PASSWORD_GROUP BACKUP_RESTORE_GROUP DATABASE_LOGOUT_GROUP DATABASE_OBJECT_CHANGE_GROUP DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP DATABASE_OBJECT_PERMISSION_CHANGE_GROUP DATABASE_OPERATION_GROUP DATABASE_PERMISSION_CHANGE_GROUP DATABASE_PRINCIPAL_CHANGE_GROUP DATABASE_PRINCIPAL_IMPERSONATION_GROUP DATABASE_ROLE_MEMBER_CHANGE_GROUP FAILED_DATABASE_AUTHENTICATION_GROUP SCHEMA_OBJECT_ACCESS_GROUP SCHEMA_OBJECT_CHANGE_GROUP SCHEMA_OBJECT_ OWNERSHIP_CHANGE_GROUP SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP USER_CHANGE_PASSWORD_GROUP BATCH_STARTED_GROUP BATCH_COMPLETED_GROUP DBCC_GROUP DATABASE_OWNERSHIP_CHANGE_GROUP DATABASE_CHANGE_GROUP LEDGER_OPERATION_GROUP

Dies sind Gruppen, die alle sql-Anweisungen und gespeicherten Prozeduren abdecken, die für die Datenbank ausgeführt werden, und sollten nicht in Kombination mit anderen Gruppen verwendet werden, da dies zu doppelten Überwachungsprotokollen führt.

Weitere Informationen finden Sie unter Database-Level Überwachen von Aktionsgruppen.

Für die Datenbanküberwachungsrichtlinie können auch bestimmte Aktionen angegeben werden (beachten Sie, dass Aktionen für die Serverüberwachungsrichtlinie nicht angegeben werden können). Die unterstützten Aktionen zum Überwachen sind: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES

Das allgemeine Formular zum Definieren einer zu überwachenden Aktion lautet: {action} ON {object} BY {principal}

Beachten Sie, dass <das Objekt im obigen Format auf ein Objekt> wie eine Tabelle, Ansicht oder gespeicherte Prozedur oder eine gesamte Datenbank oder ein gesamtes Schema verweisen kann. In letzteren Fällen werden die Formulare DATABASE::{db_name} und SCHEMA::{schema_name} verwendet.

Beispiel: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public

Weitere Informationen finden Sie unter Database-Level Überwachungsaktionen

auditActionsAndGroups?: string[]

Eigenschaftswert

string[]

isAzureMonitorTargetEnabled

Gibt an, ob Überwachungsereignisse an Azure Monitor gesendet werden. Um die Ereignisse an Azure Monitor zu senden, geben Sie "State" als "Enabled" und "IsAzureMonitorTargetEnabled" als "true" an.

Bei Verwendung der REST-API zum Konfigurieren der Überwachung sollten auch Diagnoseeinstellungen mit der Diagnoseprotokollkategorie "SQLSecurityAuditEvents" in der Datenbank erstellt werden. Beachten Sie, dass Sie für die Überwachung auf Serverebene die Datenbank "master" als {databaseName} verwenden sollten.

URI-Format der Diagnoseeinstellungen: PUT-https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

Weitere Informationen finden Sie unter REST-API für Diagnoseeinstellungen oder Diagnoseeinstellungen powerShell-

isAzureMonitorTargetEnabled?: boolean

Eigenschaftswert

boolean

isManagedIdentityInUse

Gibt an, ob verwaltete Identität für den Zugriff auf BLOB-Speicher verwendet wird.

isManagedIdentityInUse?: boolean

Eigenschaftswert

boolean

isStorageSecondaryKeyInUse

Gibt an, ob storageAccountAccessKey-Wert der Sekundärschlüssel des Speichers ist.

isStorageSecondaryKeyInUse?: boolean

Eigenschaftswert

boolean

kind

Ressourcentyp. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Er kann nur vom Server aufgefüllt werden.

kind?: string

Eigenschaftswert

string

queueDelayMs

Gibt die Zeitspanne in Millisekunden an, die verstrichen werden kann, bevor Überwachungsaktionen verarbeitet werden müssen. Der Standardwert ist 1000 (1 Sekunde). Das Maximum beträgt 2.147.483.647.

queueDelayMs?: number

Eigenschaftswert

number

retentionDays

Gibt die Anzahl der Tage an, die in den Überwachungsprotokollen im Speicherkonto gespeichert werden sollen.

retentionDays?: number

Eigenschaftswert

number

state

Gibt den Status der Überwachung an. Wenn der Status aktiviert ist, sind "storageEndpoint" oder "isAzureMonitorTargetEnabled" erforderlich.

state?: BlobAuditingPolicyState

Eigenschaftswert

storageAccountAccessKey

Gibt den Bezeichnerschlüssel des Überwachungsspeicherkontos an. Wenn der Status aktiviert ist und "storageEndpoint" angegeben ist, verwendet "storageAccountAccessKey" nicht die vom Sql Server zugewiesene verwaltete Identität für den Zugriff auf den Speicher. Voraussetzungen für die Verwendung der verwalteten Identitätsauthentifizierung:

  1. Weisen Sie SQL Server einer vom System zugewiesenen verwalteten Identität in Azure Active Directory (AAD) zu.
  2. Gewähren Sie SQL Server-Identitätszugriff auf das Speicherkonto, indem Sie der Serveridentität die RBAC-Rolle "Storage Blob Data Contributor" hinzufügen. Weitere Informationen finden Sie unter Überwachung des Speichers mit verwalteter Identitätsauthentifizierung
storageAccountAccessKey?: string

Eigenschaftswert

string

storageAccountSubscriptionId

Gibt die BLOB-Speicherabonnement-ID an.

storageAccountSubscriptionId?: string

Eigenschaftswert

string

storageEndpoint

Gibt den BLOB-Speicherendpunkt an (z. B. https://MyAccount.blob.core.windows.net). Wenn der Status aktiviert ist, ist "storageEndpoint" oder "isAzureMonitorTargetEnabled" erforderlich.

storageEndpoint?: string

Eigenschaftswert

string

Geerbte Eigenschaftsdetails

id

Ressourcen-ID. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Er kann nur vom Server aufgefüllt werden.

id?: string

Eigenschaftswert

string

geerbt vonProxyResource.id

name

Ressourcenname. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Er kann nur vom Server aufgefüllt werden.

name?: string

Eigenschaftswert

string

geerbt vonProxyResource.name

type

Ressourcentyp. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Er kann nur vom Server aufgefüllt werden.

type?: string

Eigenschaftswert

string

von"ProxyResource.type" geerbt