Simptomi
Iedomājieties šādu scenāriju:
-
Jums ir Microsoft .NET Framework lietojumprogrammas, kas tiek lietotas vienmēr šifrētas SQL Server 2016 vai Azure SQL datu bāzē.
-
Šo lietojumprogrammu kolonnu pamatatslēgas tiek glabātas Azure atslēgu glabātavā.
Šajā scenārijā lietojumprogrammas pieredze ir strupceļā. Tāpēc lietojumprogrammas vairs neatbild (uzkaras) vai taimauts.
Bloķēšana var rasties, mēģinot iegūt vai atsvaidzināt Azure atslēgas glabātavas autentifikācijas marķieri.
Cēlonis
Ja lietojumprogramma vaicājumu šifrētas kolonnas datu bāzē, .NET Framework datu nodrošinātājs SQL Server zvaniem uz Azure Key Vault pakalpojumu sniedzēju, kas vienmēr ir šifrēts. Šis, savukārt, nosaka lietojumprogrammas asinhrono uzdevumu, kas iegūst vai atsvaidzina marķieri Azure Key Vault. Šis koda ceļš Azure Key Vault pakalpojumu sniedzējam vienmēr šifrētai importē nuget pakotnes versijai 2.0. x un 1. x. x ir nosliece uz strupceļu, jo tā izsauc dažas asinhronas metodes nepareizi.
Risinājums
Problēma pirmo reizi tika novērsta Azure Key Vault pakalpojumu sniedzējam vienmēr šifrētai versijai 2.1.0.Ja izmantojat vienmēr šifrētu un Azure Key Vault pakalpojumu sniedzēju, mēs stingri iesakām atkārtoti izveidot un izvietot savu lietojumprogrammu, lai tā izmantotu Azure Key velvēt pakalpojumu sniedzēju vienmēr šifrētas versijas 2.1.0 vai jaunākai versijai.