DatabaseBlobAuditingPolicy interface
Eine Datenbankblobüberwachungsrichtlinie.
- Extends
Eigenschaften
audit |
Gibt die zu überwachenden Actions-Groups und Aktionen an. Die empfohlene Gruppe von Aktionsgruppen für die Verwendung ist die folgende Kombination: Dadurch werden alle Abfragen und gespeicherten Prozeduren, die für die Datenbank ausgeführt werden, sowie erfolgreiche und fehlgeschlagene Anmeldungen überwacht: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP. Diese obige Kombination ist auch die Gruppe, die standardmäßig konfiguriert wird, wenn die Überwachung über die Azure-Portal aktiviert wird. Die zu überwachenden Aktionsgruppen sind (Hinweis: Wählen Sie nur bestimmte Gruppen aus, die Ihre Überwachungsanforderungen abdecken. Die Verwendung unnötiger Gruppen kann zu sehr großen Mengen an Ü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 nicht in Kombination mit anderen Gruppen verwendet werden sollten, da dies zu doppelten Überwachungsprotokollen führt. Weitere Informationen finden Sie unter Überwachungsaktionsgruppen auf Datenbankebene. Für die Datenbanküberwachungsrichtlinie können auch bestimmte Aktionen angegeben werden (beachten Sie, dass Aktionen nicht für die Serverüberwachungsrichtlinie angegeben werden können). Die zu überwachenden Aktionen werden unterstützt: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES Das allgemeine Formular zum Definieren einer zu überwachenden Aktion ist: {action} ON {object} BY {principal} Beachten Sie, dass im obigen Format auf ein Objekt wie eine Tabelle, Eine Sicht oder eine gespeicherte Prozedur oder eine gesamte Datenbank oder ein schema verweisen kann. Für letztere Fälle werden jeweils 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 Überwachungsaktionen auf Datenbankebene. |
is |
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. Wenn Sie die REST-API zum Konfigurieren der Überwachung verwenden, 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 für 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. |
is |
Gibt an, ob die verwaltete Identität für den Zugriff auf Blobspeicher verwendet wird. |
is |
Gibt an, ob der Wert storageAccountAccessKey der sekundäre Schlüssel des Speichers ist. |
kind | Ressourcentyp. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Sie kann nur vom Server aufgefüllt werden. |
queue |
Gibt in Millisekunden den Zeitraum an, der verstreichen kann, bevor die Verarbeitung von Überwachungsaktionen erzwungen wird. Der standardmäßige Mindestwert beträgt 1000 (1 Sekunde). Das Maximum beträgt 2.147.483.647. |
retention |
Gibt die Anzahl der Tage an, die in den Überwachungsprotokollen im Speicherkonto aufbewahrt werden sollen. |
state | Gibt den Status der Überwachung an. Wenn der Status Aktiviert ist, sind storageEndpoint oder isAzureMonitorTargetEnabled erforderlich. |
storage |
Gibt den Bezeichnerschlüssel des Überwachungsspeicherkontos an. Wenn der Status Aktiviert und storageEndpoint angegeben ist, wird die vom SQL Server systemseitig zugewiesene verwaltete Identität für den Zugriff auf den Speicher nicht angegeben. Voraussetzungen für die Verwendung der Authentifizierung mit verwalteter Identität:
|
storage |
Gibt die Blob Storage-Abonnement-ID an. |
storage |
Gibt den Blobspeicherendpunkt 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. Sie kann nur vom Server aufgefüllt werden. |
name | Name der Ressource. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Sie kann nur vom Server aufgefüllt werden. |
type | Der Ressourcentyp. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Sie 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 für die Verwendung ist die folgende Kombination: Dadurch werden alle Abfragen und gespeicherten Prozeduren, die für die Datenbank ausgeführt werden, sowie erfolgreiche und fehlgeschlagene Anmeldungen überwacht:
BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.
Diese obige Kombination ist auch die Gruppe, die standardmäßig konfiguriert wird, wenn die Überwachung über die Azure-Portal aktiviert wird.
Die zu überwachenden Aktionsgruppen sind (Hinweis: Wählen Sie nur bestimmte Gruppen aus, die Ihre Überwachungsanforderungen abdecken. Die Verwendung unnötiger Gruppen kann zu sehr großen Mengen an Ü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 nicht in Kombination mit anderen Gruppen verwendet werden sollten, da dies zu doppelten Überwachungsprotokollen führt.
Weitere Informationen finden Sie unter Überwachungsaktionsgruppen auf Datenbankebene.
Für die Datenbanküberwachungsrichtlinie können auch bestimmte Aktionen angegeben werden (beachten Sie, dass Aktionen nicht für die Serverüberwachungsrichtlinie angegeben werden können). Die zu überwachenden Aktionen werden unterstützt: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES
Das allgemeine Formular zum Definieren einer zu überwachenden Aktion ist: {action} ON {object} BY {principal}
Beachten Sie, dass im obigen Format auf ein Objekt wie eine Tabelle, Eine Sicht oder eine gespeicherte Prozedur oder eine gesamte Datenbank oder ein schema verweisen kann. Für letztere Fälle werden jeweils 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 Überwachungsaktionen auf Datenbankebene.
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.
Wenn Sie die REST-API zum Konfigurieren der Überwachung verwenden, 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 für 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 die verwaltete Identität für den Zugriff auf Blobspeicher verwendet wird.
isManagedIdentityInUse?: boolean
Eigenschaftswert
boolean
isStorageSecondaryKeyInUse
Gibt an, ob der Wert storageAccountAccessKey der sekundäre Schlüssel des Speichers ist.
isStorageSecondaryKeyInUse?: boolean
Eigenschaftswert
boolean
kind
Ressourcentyp. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Sie kann nur vom Server aufgefüllt werden.
kind?: string
Eigenschaftswert
string
queueDelayMs
Gibt in Millisekunden den Zeitraum an, der verstreichen kann, bevor die Verarbeitung von Überwachungsaktionen erzwungen wird. Der standardmäßige Mindestwert beträgt 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 aufbewahrt 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 und storageEndpoint angegeben ist, wird die vom SQL Server systemseitig zugewiesene verwaltete Identität für den Zugriff auf den Speicher nicht angegeben. Voraussetzungen für die Verwendung der Authentifizierung mit verwalteter Identität:
- Weisen Sie SQL Server einer systemseitig zugewiesenen verwalteten Identität in Azure Active Directory (AAD) zu.
- 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 Überwachen des Speichers mithilfe der Authentifizierung mit verwalteter Identität.
storageAccountAccessKey?: string
Eigenschaftswert
string
storageAccountSubscriptionId
Gibt die Blob Storage-Abonnement-ID an.
storageAccountSubscriptionId?: string
Eigenschaftswert
string
storageEndpoint
Gibt den Blobspeicherendpunkt 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. Sie kann nur vom Server aufgefüllt werden.
id?: string
Eigenschaftswert
string
Geerbt vonProxyResource.id
name
Name der Ressource. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Sie kann nur vom Server aufgefüllt werden.
name?: string
Eigenschaftswert
string
Geerbt vonProxyResource.name
type
Der Ressourcentyp. HINWEIS: Diese Eigenschaft wird nicht serialisiert. Sie kann nur vom Server aufgefüllt werden.
type?: string
Eigenschaftswert
string
Geerbt vonProxyResource.type