Symptômes
Supposons que vous avez configuré plusieurs événements d’audit SQL Server pour écrire dans le journal de sécurité dans Microsoft SQL Server 2022, Microsoft SQL Server 2019 ou Microsoft SQL Server 2016 Service Pack 2 (SP2). Dans ce scénario, vous remarquez que tous les audits de serveur, à l’exception du premier audit de serveur, n’écrivent pas. En outre, lorsque vous ajoutez le deuxième audit de serveur, vous pouvez recevoir un message d’erreur semblable au message suivant dans le journal des erreurs SQL Server :
Erreur : 33204, Gravité : 17, État : 1.
SQL Server Audit n’a pas pu écrire dans le journal de sécurité.
Cause
Ce problème se produit si l’indicateur de source d’événement du Registre est défini sur 0.
Solution de contournement
Pour contourner ce problème, appliquez l'une des méthodes suivantes :
-
Définissez les événements d’audit du serveur pour qu’ils soient écrits dans un fichier plutôt que dans le journal de sécurité SQL Server.
-
Pour permettre à plusieurs événements d’audit de serveur d’écrire dans le journal de sécurité SQL Server, modifiez la valeur de la sous-clé de Registre suivante de 0 à 1 :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Security\MSSQL$<InstanceName>$Audit\EventSourceFlags
Remarque :Les audits de serveur doivent être redémarrés pour que le nouveau paramètre de Registre prenne effet.
ALTER SERVER AUDIT [AuditName] WITH (STATE = OFF)
GO
ALTER SERVER AUDIT [AuditName] WITH (STATE = ON)
GO
Important : La modification incorrecte du registre peut endommager gravement votre système. Avant d’apporter des modifications au Registre, nous vous recommandons de sauvegarder toutes les données évaluées sur l’ordinateur.
Résolution
Ce problème est résolu dans les mises à jour cumulatives suivantes pour SQL Server :
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et correctifs de sécurité qui se trouvaient dans la build précédente. Nous vous recommandons d’installer la dernière build pour votre version de SQL Server :
Informations sur le Service Pack pour SQL Server 2016
Ce problème est résolu dans le Service Pack suivant pour SQL Server :
Les Service Packs sont cumulatifs. Chaque nouvelle version contient tous les correctifs fournis dans les Service Packs précédents et tous les nouveaux correctifs. Nous vous recommandons d’appliquer le dernier Service Pack et la dernière mise à jour cumulative pour ce Service Pack. Il n'est donc pas nécessaire d'installer la version antérieure d'un Service Pack avant d'installer la dernière version disponible. Utilisez le tableau 1 de l’article suivant pour obtenir plus d’informations sur le dernier Service Pack et la dernière mise à jour cumulative.
État
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.
Références
Découvrez la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.