Applies ToSQL Database SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Express - duplicate (do not use) SQL Server 2016 Service Pack 1 Key Vault

Problembeschreibung

Stellen Sie sich folgendes Szenario vor:

  • Sie verfügen über Microsoft .NET Framework-Anwendungen, die immer in SQL Server 2016 oder Azure SQL-Datenbank verschlüsselt verwendet werden.

  • Die Spalten Masterschlüssel für diese Anwendungen werden im Azure Key Vault gespeichert.

In diesem Szenario erleben die Anwendungen Deadlocks. Daher werden die Anwendungen nicht mehr reagiert (hängt) oder Timeout. 

Die Deadlocks können auftreten, wenn Sie versuchen, ein Authentifizierungstoken für den Azure Key Vault abzurufen oder zu aktualisieren.

Ursache

Wenn eine Anwendung verschlüsselte Spalten in der Datenbank abfragt, ruft der .NET Framework-Datenanbieter für SQL Server den Azure Key Vault-Anbieter für immer verschlüsselt auf. Dies ruft wiederum eine anwendungsbasierte asynchrone Aufgabe auf, die ein Token für Azure Key Vault erwirbt oder aktualisiert. Dieser Codepfad im Azure Key Vault-Anbieter für immer verschlüsselte NuGet-Paketversionen 2.0. x und 1. x. x ist anfällig für Deadlocks, da einige asynchrone Methoden auf falsche Weise aufgerufen werden.

Fehlerbehebung

Das Problem wurde zuerst in Azure Key Vault-Anbieter für immer verschlüsselte Version 2.1.0behoben.Wenn Sie immer verschlüsselte und Azure Key Vault-Anbieterverwenden, wird dringend empfohlen, dass Sie die Anwendung neu erstellen und erneut bereitstellen, damit Sie den Azure Key Vault-Anbieter für immer verschlüsselte Version 2.1.0 oder höher verwendet.

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.