อาการ
พิจารณาสถานการณ์ต่อไปนี้:
-
คุณมีแอปพลิเคชัน Microsoft .NET Framework ที่ใช้การ เข้ารหัสลับเสมอ ใน sql Server ๒๐๑๖หรือฐานข้อมูล Azure sql
-
คีย์หลักของคอลัมน์สำหรับแอปพลิเคชันเหล่านี้จะถูกจัดเก็บไว้ในระบบป้องกันคีย์ Azure
ในสถานการณ์สมมตินี้การชะงักงันประสบการณ์การใช้งานแอปพลิเคชัน ดังนั้นแอปพลิเคชันจะไม่ตอบสนอง (แฮงค์) หรือหมดเวลา
การชะงักงันอาจเกิดขึ้นในระหว่างความพยายามที่จะได้รับหรือรีเฟรชโทเค็นการรับรองความถูกต้องสำหรับระบบป้องกันคีย์ Azure
สาเหตุ
เมื่อแอปพลิเคชันแบบสอบถามคอลัมน์ที่เข้ารหัสลับในฐานข้อมูลตัวให้บริการข้อมูล .net Framework สำหรับ SQL Server จะเรียกใช้ผู้ให้บริการที่เก็บคีย์ Azure สำหรับการเข้ารหัสลับเสมอ การทำเช่นนี้จะเรียกใช้งานแบบอะซิงโครนัสที่ใช้แอปพลิเคชันที่ได้รับหรือรีเฟรชโทเค็นสำหรับระบบป้องกันคีย์ Azure เส้นทางรหัสนี้ในผู้ให้บริการเพดานคีย์ของ Azure สำหรับการเข้ารหัสลับที่เข้ารหัสลับ NuGet เวอร์ชัน 2.0 x และ1.x จะมีแนวโน้มที่จะการชะงักงันเนื่องจากการเรียกใช้วิธีการแบบอะซิงโครนัสบางอย่างในลักษณะที่ไม่ถูกต้อง
การแก้ไข
ปัญหานี้ได้รับการแก้ไขครั้งแรกในผู้ให้บริการ Vault Key ของ Azure สำหรับการเข้ารหัสลับเวอร์ชันที่เข้ารหัสลับเสมอ 2.1.0. ถ้าคุณใช้ ผู้ให้บริการที่มีการเข้ารหัสลับที่เข้ารหัสลับและ Azure keyเราขอแนะนำให้คุณสร้างและปรับใช้แอปพลิเคชันของคุณใหม่เพื่อให้ใช้ผู้ให้บริการที่เก็บข้อมูลของ Azure สำหรับการเข้ารหัสลับตลอดเวลา2.1.0 หรือเวอร์ชัน ที่ใหม่กว่า