Partager via


Set-AzSqlDatabaseAudit

Modifie les paramètres d’audit d’une base de données Azure SQL.

Syntaxe

Set-AzSqlDatabaseAudit
   [-AuditActionGroup <AuditActionGroups[]>]
   [-AuditAction <String[]>]
   [-PredicateExpression <String>]
   [-BlobStorageTargetState <String>]
   [-StorageAccountResourceId <String>]
   [-StorageKeyType <String>]
   [-RetentionInDays <UInt32>]
   [-EventHubTargetState <String>]
   [-EventHubName <String>]
   [-EventHubAuthorizationRuleResourceId <String>]
   [-LogAnalyticsTargetState <String>]
   [-WorkspaceResourceId <String>]
   [-PassThru]
   [-UseIdentity <String>]
   [-ResourceGroupName] <String>
   [-ServerName] <String>
   [-DatabaseName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzSqlDatabaseAudit
   [-AuditActionGroup <AuditActionGroups[]>]
   [-AuditAction <String[]>]
   [-PredicateExpression <String>]
   [-BlobStorageTargetState <String>]
   [-StorageAccountResourceId <String>]
   [-StorageKeyType <String>]
   [-RetentionInDays <UInt32>]
   [-EventHubTargetState <String>]
   [-EventHubName <String>]
   [-EventHubAuthorizationRuleResourceId <String>]
   [-LogAnalyticsTargetState <String>]
   [-WorkspaceResourceId <String>]
   [-PassThru]
   [-UseIdentity <String>]
   -DatabaseObject <AzureSqlDatabaseModel>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

L’applet de commande Set-AzSqlDatabaseAudit modifie les paramètres d’audit d’une base de données Azure SQL. Pour utiliser l’applet de commande, utilisez les paramètres ResourceGroupName, ServerName et DatabaseName pour identifier la base de données. Lorsque le stockage d’objets blob est une destination pour les journaux d’audit, spécifiez le paramètre StorageAccountResourceId pour déterminer le compte de stockage des journaux d’audit et le paramètre StorageKeyType pour définir les clés de stockage. Si vous utilisez le stockage d’objets blob comme destination, vous pouvez également définir la rétention des journaux d’audit en définissant la valeur du paramètre RetentionInDays pour définir la période pour les journaux d’audit.

Exemples

Exemple 1 : Activer la stratégie d’audit du stockage Blob d’une base de données Azure SQL

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

Exemple 2 : Désactiver la stratégie d’audit du stockage Blob d’une base de données Azure SQL

Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -BlobStorageTargetState Disabled

Exemple 3 : Activer la stratégie d’audit du stockage Blob d’une base de données Azure SQL avec filtrage à l’aide d’un prédicat T-SQL

Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -PredicateExpression "schema_name <> 'sys''" -BlobStorageTargetState Enabled -StorageAccountResourceId "/subscriptions/7fe3301d-31d3-4668-af5e-211a890ba6e3/resourceGroups/resourcegroup01/providers/Microsoft.Storage/storageAccounts/mystorage"

Exemple 4 : Supprimer le filtrage de la stratégie d’audit d’une base de données Azure SQL

Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -PredicateExpression ""

Exemple 5 : Activer la stratégie d’audit event Hub d’une base de données Azure SQL

Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -EventHubTargetState Enabled -EventHubName "EventHubName" -EventHubAuthorizationRuleResourceId "EventHubAuthorizationRuleResourceId"

Exemple 6 : Désactiver la stratégie d’audit event Hub d’une base de données Azure SQL Database

Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -EventHubTargetState Disabled

Exemple 7 : Activer la stratégie d’audit Log Analytics d’une base de données Azure SQL

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

Exemple 8 : Désactiver la stratégie d’audit Log Analytics d’une base de données Azure SQL

Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -LogAnalyticsTargetState Disabled

Exemple 9 : Désactiver, via le pipeline, la stratégie d’audit Log Analytics d’une base de données Azure SQL

Get-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" | Set-AzSqlDatabaseAudit -LogAnalyticsTargetState Disabled

Exemple 10 : Désactivez l’envoi d’enregistrements d’audit d’une base de données Azure SQL à stockage d’objets blob et activez leur envoi à Log Analytics.

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

Exemple 11 : Activez l’envoi d’enregistrements d’audit d’une base de données Azure SQL à stockage d’objets blob, event hub et log analytics.

Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -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"

Paramètres

-AuditAction

Ensemble d’actions d’audit.
Les actions prises en charge pour l’audit sont les suivantes :
SELECT
UPDATE
INSERT
DELETE
Exécutez
RECEIVE
REFERENCES
Le formulaire général permettant de définir une action à auditer est : [action] ON [object] BY [principal] Notez que [objet] au format ci-dessus peut faire référence à un objet comme une table, une vue ou une procédure stockée, ou une base de données ou un schéma entier. Pour les derniers cas, les formulaires DATABASE ::[dbname] et SCHEMA ::[schemaname] sont utilisés, respectivement. Par exemple :
SELECT sur dbo.myTable by public
SELECT on DATABASE ::myDatabase by public
SELECT on SCHEMA ::mySchema by public
Pour plus d’informations, consultez https://learn.microsoft.com/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AuditActionGroup

L’ensemble recommandé de groupes d’actions à utiliser est la combinaison suivante : cela permet d’auditer toutes les requêtes et procédures stockées exécutées sur la base de données, ainsi que les connexions réussies et ayant échoué :

« BATCH_COMPLETED_GROUP »,
« SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP »,
« FAILED_DATABASE_AUTHENTICATION_GROUP »
Cette combinaison ci-dessus est également l’ensemble configuré par défaut. Ces groupes couvrent toutes les instructions SQL et les procédures stockées exécutées sur la base de données et ne doivent pas être utilisées en combinaison avec d’autres groupes, car cela entraîne des journaux d’audit en double. Pour plus d’informations, consultez https://learn.microsoft.com/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups.

Type:AuditActionGroups[]
Valeurs acceptées: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
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-BlobStorageTargetState

Indique si le stockage d’objets blob est une destination pour les enregistrements d’audit.

Type:String
Valeurs acceptées:Enabled, Disabled
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous demande une confirmation avant d’exécuter la commande cmdlet.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DatabaseName

Nom de la base de données SQL.

Type:String
Position:2
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DatabaseObject

Objet de base de données pour gérer sa stratégie d’audit.

Type:AzureSqlDatabaseModel
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

Type:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EventHubAuthorizationRuleResourceId

ID de ressource de la règle d’autorisation event Hub

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EventHubName

Nom du hub d’événements. Si aucun n’est spécifié lors de la fourniture d’EventHubAuthorizationRuleResourceId, le hub d’événements par défaut est sélectionné.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EventHubTargetState

Indique si event Hub est une destination pour les enregistrements d’audit.

Type:String
Valeurs acceptées:Enabled, Disabled
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-LogAnalyticsTargetState

Indique si Log Analytics est une destination pour les enregistrements d’audit.

Type:String
Valeurs acceptées:Enabled, Disabled
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PassThru

Spécifie s’il faut générer la stratégie d’audit à la fin de l’exécution de l’applet de commande

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PredicateExpression

Prédicat T-SQL (clause WHERE) utilisé pour filtrer les journaux d’audit.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ResourceGroupName

Nom du groupe de ressources.

Type:String
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-RetentionInDays

Nombre de jours de rétention pour les journaux d’audit. S’applique uniquement au compte de stockage en tant que destination.

Type:Nullable<T>[UInt32]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ServerName

Nom du serveur SQL.

Type:String
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StorageAccountResourceId

ID de ressource du compte de stockage

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StorageKeyType

Spécifie les clés d’accès de stockage à utiliser.

Type:String
Valeurs acceptées:Primary, Secondary
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UseIdentity

Indique s’il faut utiliser une identité managée ou non. Il est nécessaire lorsque vous souhaitez utiliser l’identité managée alors que le stockage cible n’est pas derrière le pare-feu.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WorkspaceResourceId

ID d’espace de travail (ID de ressource d’un espace de travail Log Analytics) pour un espace de travail Log Analytics auquel vous souhaitez envoyer des journaux d’audit. Exemple : /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

String

AzureSqlDatabaseModel

AuditActionGroups[]

String[]

Guid

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

DatabaseAuditModel

Sorties

Boolean