Set-AzSqlDatabaseAudit

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

Syntax

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 Stockage AccountResourceId pour déterminer le compte de stockage des journaux d’audit et le paramètre Stockage KeyType pour définir les clés de stockage. 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 des 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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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[]
Accepted values: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BlobStorageTargetState

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

Type:String
Accepted values:Enabled, Disabled
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseName

Nom de la base de données SQL.

Type:String
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseObject

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

Type:AzureSqlDatabaseModel
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

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

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EventHubAuthorizationRuleResourceId

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EventHubTargetState

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

Type:String
Accepted values:Enabled, Disabled
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogAnalyticsTargetState

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

Type:String
Accepted values:Enabled, Disabled
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PredicateExpression

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

Nom du groupe de ressources.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-RetentionInDays

Nombre de jours de rétention pour les journaux d’audit.

Type:Nullable<T>[UInt32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServerName

Nom du serveur SQL.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-StorageAccountResourceId

ID de ressource du compte de stockage

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StorageKeyType

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

Type:String
Accepted values:Primary, Secondary
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.Operational Recommandations/workspaces/viruela2

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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