Freigeben über


Set-AzureRmSqlDatabaseAuditing

Ändert die Überwachungseinstellungen für eine Azure SQL-Datenbank.

Warnung

Das AzureRM PowerShell-Modul ist seit dem 29. Februar 2024 offiziell veraltet. Benutzern wird empfohlen, von AzureRM zum Az PowerShell-Modul zu migrieren, um weiterhin Support und Updates zu erhalten.

Obwohl das AzureRM-Modul weiterhin funktioniert, wird es nicht mehr Standard tained oder unterstützt, wobei eine fortgesetzte Verwendung nach Ermessen und Risiko des Benutzers erfolgt. Weitere Informationen zum Übergang zum Az-Modul finden Sie in unseren Migrationsressourcen.

Syntax

Set-AzureRmSqlDatabaseAuditing
   -State <String>
   [-PassThru]
   [-AuditActionGroup <AuditActionGroups[]>]
   [-AuditAction <String[]>]
   [-StorageAccountName <String>]
   [-StorageKeyType <String>]
   [-RetentionInDays <UInt32>]
   [-PredicateExpression <String>]
   [-ServerName] <String>
   [-DatabaseName] <String>
   [-ResourceGroupName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzureRmSqlDatabaseAuditing
   -State <String>
   [-PassThru]
   [-AuditActionGroup <AuditActionGroups[]>]
   [-AuditAction <String[]>]
   -StorageAccountName <String>
   [-StorageAccountSubscriptionId <Guid>]
   [-StorageKeyType <String>]
   [-RetentionInDays <UInt32>]
   [-PredicateExpression <String>]
   [-ServerName] <String>
   [-DatabaseName] <String>
   [-ResourceGroupName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Beschreibung

Das Cmdlet Set-AzureRmSqlDatabaseAuditing ändert die Überwachungseinstellungen einer Azure SQL-Datenbank. Verwenden Sie zum Verwenden des Cmdlets die Parameter ResourceGroupName, ServerName und DatabaseName, um die Datenbank zu identifizieren. Geben Sie den Parameter StorageAccountName an, um das Speicherkonto für die Überwachungsprotokolle und den Parameter StorageKeyType anzugeben, um die Speicherschlüssel zu definieren. Verwenden Sie den Parameter "State ", um die Richtlinie zu aktivieren/zu deaktivieren. Sie können die Aufbewahrung für die Überwachungsprotokolle auch definieren, indem Sie den Wert des Parameters "RetentionInDays " festlegen, um den Zeitraum für die Überwachungsprotokolle zu definieren. Nachdem das Cmdlet erfolgreich ausgeführt wurde, wird die Überwachung der Datenbank aktiviert. Wenn das Cmdlet erfolgreich ist und Sie den PassThru-Parameter verwenden, wird zusätzlich zu den Datenbankbezeichnern ein Objekt zurückgegeben, das die aktuelle Blobüberwachungsrichtlinie beschreibt. Datenbankbezeichner umfassen, sind jedoch nicht beschränkt auf ResourceGroupName, ServerName und DatabaseName.

Beispiele

Beispiel 1: Aktivieren der Überwachungsrichtlinie einer Azure SQL-Datenbank

PS C:\>Set-AzureRmSqlDatabaseAuditing -State Enabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -StorageAccountName "Storage22" -DatabaseName "Database01"

Beispiel 2: Deaktivieren der Blobüberwachungsrichtlinie einer Azure SQL-Datenbank

PS C:\>Set-AzureRmSqlDatabaseAuditing -State Disabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"

Beispiel 3: Aktivieren der Überwachungsrichtlinie einer Azure SQL-Datenbank mithilfe eines Speicherkontos aus einem anderen Abonnement

PS C:\>Set-AzureRmSqlDatabaseAuditing -State Enabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -StorageAccountName "Storage22" -StorageAccountSubscriptionId "7fe3301d-31d3-4668-af5e-211a890ba6e3"

Beispiel 4: Aktivieren der erweiterten Überwachungsrichtlinie einer Azure SQL-Datenbank

PS C:\>Set-AzureRmSqlDatabaseAuditing -State Enabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -StorageAccountName "Storage22" -DatabaseName "Database01" -PredicateExpression "statement <> 'select 1'"

Beispiel 5: Entfernen Sie die erweiterte Überwachungsrichtlinie einer Azure SQL-Datenbank, und legen Sie statt dieser eine Überwachungsrichtlinie fest.

PS C:\>Set-AzureRmSqlDatabaseAuditing -State Enabled -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -StorageAccountName "Storage22" -DatabaseName "Database01" -PredicateExpression ""

Parameter

-AuditAction

Die Gruppe von Überwachungsaktionen. Die unterstützten Aktionen zum Überwachen sind: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES The general form for defining an action to be audited is: [action] ON [object] BY [principal] Note that [object] in the above format can refer to an object like a table, view, or stored procedure, or entire database or schema. In letzteren Fällen werden die Formulare DATABASE::[dbname] und SCHEMA::[schemaname] verwendet. Beispiel: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public For more information, see https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-AuditActionGroup

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. Diese Gruppen decken alle SQL-Anweisungen und gespeicherten Prozeduren ab, 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 https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups.

Typ:AuditActionGroups[]
Zulässige Werte:BATCH_STARTED_GROUP, BATCH_COMPLETED_GROUP, 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, AUDIT_CHANGE_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
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DatabaseName

SQL-Datenbank Name.

Typ:String
Position:2
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-DefaultProfile

Die Anmeldeinformationen, Konten, Mandanten und Abonnements, die für die Kommunikation mit Azure verwendet werden.

Typ:IAzureContextContainer
Aliase:AzureRmContext, AzureCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PassThru

{{Fill PassThru Description}}

Typ:SwitchParameter
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PredicateExpression

Die Anweisung der Where-Klausel zum Filtern von Überwachungsprotokollen.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ResourceGroupName

Der Name der Ressourcengruppe.

Typ:String
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-RetentionInDays

Die Anzahl der Aufbewahrungstage für die Überwachungsprotokolle.

Typ:Nullable<T>[UInt32]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ServerName

SQL-Datenbank Servername.

Typ:String
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-State

Der Zustand der Richtlinie.

Typ:String
Zulässige Werte:Enabled, Disabled
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-StorageAccountName

Der Name des Speicherkontos. Platzhalterzeichen sind nicht zulässig. Dieser Parameter ist nicht erforderlich. Wenn Sie diesen Parameter nicht angeben, verwendet das Cmdlet das Speicherkonto, das zuvor als Teil der Überwachungsrichtlinie definiert wurde. Wenn dies das erste Mal ist, dass eine Überwachungsrichtlinie definiert ist und Sie diesen Parameter nicht angeben, schlägt das Cmdlet fehl.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-StorageAccountSubscriptionId

Gibt die Abonnement-ID des Speicherkontos an.

Typ:Guid
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-StorageKeyType

Gibt an, welche der zu verwendenden Speicherzugriffsschlüssel verwendet werden sollen.

Typ:String
Zulässige Werte:Primary, Secondary
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False