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