Condividi tramite


Set-AzSqlServerAudit

Modifica le impostazioni di controllo di un server SQL di Azure.

Sintassi

Set-AzSqlServerAudit
   [-AuditActionGroup <AuditActionGroups[]>]
   [-PredicateExpression <String>]
   [-StorageKeyType <String>]
   [-RetentionInDays <UInt32>]
   [-BlobStorageTargetState <String>]
   [-StorageAccountResourceId <String>]
   [-EventHubTargetState <String>]
   [-EventHubName <String>]
   [-EventHubAuthorizationRuleResourceId <String>]
   [-LogAnalyticsTargetState <String>]
   [-WorkspaceResourceId <String>]
   [-PassThru]
   [-UseIdentity <String>]
   [-ResourceGroupName] <String>
   [-ServerName] <String>
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzSqlServerAudit
   [-AuditActionGroup <AuditActionGroups[]>]
   [-PredicateExpression <String>]
   [-StorageKeyType <String>]
   [-RetentionInDays <UInt32>]
   [-BlobStorageTargetState <String>]
   [-StorageAccountResourceId <String>]
   [-EventHubTargetState <String>]
   [-EventHubName <String>]
   [-EventHubAuthorizationRuleResourceId <String>]
   [-LogAnalyticsTargetState <String>]
   [-WorkspaceResourceId <String>]
   [-PassThru]
   [-UseIdentity <String>]
   -ServerObject <AzureSqlServerModel>
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Descrizione

Il cmdlet Set-AzSqlServerAudit modifica le impostazioni di controllo di un server SQL di Azure. Per usare il cmdlet, usare i parametri ResourceGroupName e ServerName per identificare il server. Quando l'archiviazione BLOB è una destinazione per i log di controllo, specificare il parametro StorageAccountResourceId per determinare l'account di archiviazione per i log di controllo e il parametro StorageKeyType per definire le chiavi di archiviazione. Se si usa l'archiviazione BLOB come destinazione, è anche possibile definire la conservazione per i log di controllo impostando il valore del parametro RetentionInDays per definire il periodo per i log di controllo.

Esempio

Esempio 1: Abilitare i criteri di controllo dell'archiviazione BLOB di un server SQL di Azure

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -BlobStorageTargetState Enabled -StorageAccountResourceId "/subscriptions/7fe3301d-31d3-4668-af5e-211a890ba6e3/resourceGroups/resourcegroup01/providers/Microsoft.Storage/storageAccounts/mystorage"

Esempio 2: Disabilitare i criteri di controllo dell'archiviazione BLOB di un server SQL di Azure

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -BlobStorageTargetState Disabled

Esempio 3: Abilitare i criteri di controllo dell'archiviazione BLOB di un server SQL di Azure con filtri usando un predicato T-SQL

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -BlobStorageTargetState Enabled -StorageAccountResourceId "/subscriptions/7fe3301d-31d3-4668-af5e-211a890ba6e3/resourceGroups/resourcegroup01/providers/Microsoft.Storage/storageAccounts/mystorage" -PredicateExpression "statement <> 'select 1'"

Esempio 4: Rimuovere l'impostazione di filtro dai criteri di controllo di un server SQL di Azure

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -PredicateExpression ""

Esempio 5: Abilitare i criteri di controllo dell'hub eventi di un server SQL di Azure

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -EventHubTargetState Enabled -EventHubName "EventHubName" -EventHubAuthorizationRuleResourceId "EventHubAuthorizationRuleResourceId"

Esempio 6: Disabilitare i criteri di controllo dell'hub eventi di un server SQL di Azure

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -EventHubTargetState Disabled

Esempio 7: Abilitare i criteri di controllo di Log Analytics di un server SQL di Azure

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -LogAnalyticsTargetState Enabled -WorkspaceResourceId "/subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2"

Esempio 8: Disabilitare i criteri di controllo di Log Analytics di un server SQL di Azure

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -LogAnalyticsTargetState Disabled

Esempio 9: Disabilitare, tramite pipeline, i criteri di controllo di Log Analytics di un server SQL di Azure

Get-AzSqlServer -ResourceGroupName "ResourceGroup01" -ServerName "Server01" | Set-AzSqlServerAudit -LogAnalyticsTargetState Disabled

Esempio 10: Disabilitare l'invio di record di controllo di un server SQL di Azure all'archiviazione BLOB e abilitare l'invio a Log Analytics.

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -LogAnalyticsTargetState Enabled -WorkspaceResourceId "/subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2" -BlobStorageTargetState Disabled

Esempio 11: Abilitare l'invio di record di controllo di un server SQL di Azure all'archiviazione BLOB, all'hub eventi e all'analisi dei log.

Set-AzSqlServerAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -BlobStorageTargetState Enabled -StorageAccountResourceId "/subscriptions/7fe3301d-31d3-4668-af5e-211a890ba6e3/resourceGroups/resourcegroup01/providers/Microsoft.Storage/storageAccounts/mystorage" -EventHubTargetState Enabled -EventHubName "EventHubName" -EventHubAuthorizationRuleResourceId "EventHubAuthorizationRuleResourceId" -LogAnalyticsTargetState Enabled  -WorkspaceResourceId "/subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2"

Parametri

-AsJob

Eseguire il cmdlet in background

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-AuditActionGroup

Il set consigliato di gruppi di azioni da usare è la combinazione seguente: in questo modo verranno controllate tutte le query e le stored procedure eseguite sul database, nonché gli accessi riusciti e non riusciti:

"BATCH_COMPLETED_GROUP",
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP"
Questa combinazione precedente è anche il set configurato per impostazione predefinita. Questi gruppi riguardano tutte le istruzioni SQL e le stored procedure eseguite sul database e non devono essere usate in combinazione con altri gruppi, in quanto ciò comporterà la duplicazione dei log di controllo. Per ulteriori informazioni, vedere https://learn.microsoft.com/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups.

Tipo:AuditActionGroups[]
Valori accettati: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, 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, LEDGER_OPERATION_GROUP, DBCC_GROUP, DATABASE_OWNERSHIP_CHANGE_GROUP, DATABASE_CHANGE_GROUP
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-BlobStorageTargetState

Indica se l'archiviazione BLOB è una destinazione per i record di controllo.

Tipo:String
Valori accettati:Enabled, Disabled
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Tipo:SwitchParameter
Alias:cf
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DefaultProfile

Le credenziali, l’account, il tenant e la sottoscrizione usati per comunicare con Azure.

Tipo:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-EventHubAuthorizationRuleResourceId

ID risorsa per la regola di autorizzazione dell'hub eventi

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-EventHubName

Nome di Hub eventi. Se nessuno viene specificato quando si specifica EventHubAuthorizationRuleResourceId, verrà selezionato l'hub eventi predefinito.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-EventHubTargetState

Indica se l'hub eventi è una destinazione per i record di controllo.

Tipo:String
Valori accettati:Enabled, Disabled
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-LogAnalyticsTargetState

Indica se Log Analytics è una destinazione per i record di controllo.

Tipo:String
Valori accettati:Enabled, Disabled
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PassThru

Specifica se restituire i criteri di controllo alla fine dell'esecuzione del cmdlet

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PredicateExpression

Predicato T-SQL (clausola WHERE) usato per filtrare i log di controllo.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ResourceGroupName

Nome del gruppo di risorse.

Tipo:String
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RetentionInDays

Numero di giorni di conservazione per i log di controllo. Si applica solo all'account di archiviazione come destinazione.

Tipo:Nullable<T>[UInt32]
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ServerName

Nome del server SQL.

Tipo:String
Posizione:1
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ServerObject

Oggetto server per gestire i criteri di controllo.

Tipo:AzureSqlServerModel
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-StorageAccountResourceId

ID risorsa dell'account di archiviazione

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-StorageKeyType

Specifica quale delle chiavi di accesso alle risorse di archiviazione da usare.

Tipo:String
Valori accettati:Primary, Secondary
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-UseIdentity

Indica se usare o meno l'identità gestita. È necessario quando si vuole usare l'identità gestita mentre l'archiviazione di destinazione non è protetta dal firewall.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Tipo:SwitchParameter
Alias:wi
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-WorkspaceResourceId

ID area di lavoro (ID risorsa di un'area di lavoro Log Analytics) per un'area di lavoro Log Analytics a cui inviare i log di controllo. Esempio: /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

String

AzureSqlServerModel

AuditActionGroups[]

Guid

Nullable<T>[[System.UInt32, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

ServerAuditModel

Output

Boolean