KB4017023-SQL Server 2012, 2014 atau 2016 cadangannya ke URL layanan penyimpanan Blob Microsoft Azure tidak kompatibel untuk TLS 1,2

Bekerja di mana saja dari perangkat dengan Microsoft 365

Mutakhirkan ke Microsoft 365 untuk bekerja di mana saja dengan fitur dan pembaruan terbaru.

Tingkatkan sekarang

Gejala

Asumsikan bahwa Anda menggunakan Microsoft SQL Server 2012, 2014 atau 2016. Saat Anda mencadangkan database ke URL layanan penyimpanan Blob Microsoft Azure, operasi mungkin gagal dan Anda akan menerima pesan kesalahan berikut ini baik di sisi klien maupun di log kesalahan SQL Server.

Kesalahan klien SQL Server

MSG 3271, tingkat 16, negara bagian 1, baris Linenumber Kesalahan I/O yang tidak dapat dipulihkan terjadi pada file "https://<BlobStorageServerName>. blob.core.windows.net/sqlbackup/<DB_Backup_Name. bak>" cadangan ke URL menerima pengecualian dari titik akhir jarak jauh. Pesan pengecualian: koneksi yang mendasari ditutup: kesalahan yang tidak diharapkan terjadi pada penerimaan. MSG 3013, tingkat 16, negara bagian 1, baris Linenumber DATABASE cadangan mengakhiri secara tidak normal.

Log kesalahan SQL Server

<DateTime>    ======== BackupToUrl Initiated =========
<DateTime> Inputs: Backup = True, PageBlob= True, URI = https://<BlobStorageServerName>.blob.core.windows.net/sqlbackup/<DB_Backup_Name.bak>, Acct= lbtesting2096, Key= KeyValue, FORMAT= False, Instance Name = MSSQLSERVER, DBName = <DB_Name> LogPath = C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log
<DateTime>    Process Id: 3668
<DateTime>     Time for Initialization = 202.7451 ms
<DateTime>    BackupToUrl Client is getting configuration from SqlServr
<DateTime>    Time for Handshake and VDI config = 31.2507 ms
<DateTime>    Time for Get BlobRef = 15.6263 ms
<DateTime>    Time for - EXCEPTION Get Fetchattributes = 45364.4979 ms
<DateTime>    An exception occurred during communication with Azure Storage, exception information follows
<DateTime>    Exception Info: The underlying connection was closed: An unexpected error occurred on a receive.
<DateTime>    Stack:    at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](StorageCommandBase`1 cmd, IRetryPolicy policy, OperationContext operationContext)
   at BackupToUrl.Program.MainInternal(String[] args)
<DateTime>    The Active queue had 1 requests until we got a clear error.

Kesalahan ini terjadi jika server klien Anda mengaktifkan protokol Transport Layer Security (TLS) 1,2 dengan registri berikutini.

Nama kunci registri: 

HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2 \ client Nilai 0 Nama: diaktifkan Ketik: REG_DWORD Data: 0x1

Pemecahan Masalah

Masalah ini telah diperbaiki dalam pembaruan kumulatif berikut ini untuk SQL Server 2014 dan 2016:

Pembaruan kumulatif 7 untuk SQL Server 2016 RTM

Pembaruan kumulatif 4 untuk SQL Server 2016 SP1

Pembaruan kumulatif 5 untuk SQL Server 2014 SP2

Setiap pembaruan kumulatif baru untuk SQL Server berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan pembaruan kumulatif sebelumnya. Lihat pembaruan kumulatif terbaru untuk SQL Server:

Pembaruan kumulatif terbaru untuk SQL Server 2016

Pembaruan kumulatif terbaru untuk SQL Server 2014

 

Penanganan masalah untuk SQL Server 2012

Masalah ini terjadi jika .NET Framework yang diinstal memiliki preferensi untuk TLS 1,0 meskipun mendukung TLS 1,2. 

Tidak ada perbaikan yang tersedia untuk SQL Server 2012. Untuk mengatasi masalah ini untuk SQL Server 2012 guna mengaktifkan kriptografi yang kuat, Anda bisa melakukan hal berikut ini: 

  • Mencadangkan registri

  • Buka editor registri, dan navigasikan ke subkunci registri berikut: Hklm\software\wow6432node\microsoft.netframework\ dan HKLM\software\microsoft.NETFramework\

  • Di bawah setiap tombol ini, subtombol nomor versi (seperti v 4.5, v 4.5.1) ada. Tambahkan nilai DWORD bernama Schusestrongcrypto dengan nilai 1 untuk setiap versi.

  • Di bawah HKLM\Software\Microsoft.NetFramework, nama kunci tidak harus persis 4,5 atau 4.5.1. Kebanyakan mereka akan mulai dari v 2.0 xxx, v 3.0 xxx dan v 4.0 xxx. Nilai DWORD bernama ' SchUseStrongCrypto ' dengan nilai 1 harus ditambahkan untuk semua versi yang tersedia.

  • Reboot mesin SQL Server.

AnAnda juga dapat mencoba menginstal .NET Framework 4,8. Secara default, .NET Framework 4,7 dan versi yang lebih baru dikonfigurasikan untuk menggunakan TLS 1,2 dan memperbolehkan koneksi menggunakan TLS 1,1 atau TLS 1,0.

Referensi

Pelajari tentang terminologiyang digunakan Microsoft untuk menjelaskan pembaruan perangkat lunak.

Status

Microsoft telah mengonfirmasi bahwa ini adalah masalah pada produk Microsoft yang tercantum di bagian "Berlaku untuk".

Perlu bantuan lainnya?

Kembangkan keterampilan Anda
Jelajahi pelatihan
Dapatkan fitur baru terlebih dahulu
Gabung Microsoft Insider

Apakah informasi ini bermanfaat?

Terima kasih atas umpan balik Anda!

Terima kasih atas umpan balik Anda! Sepertinya menghubungkan Anda ke salah satu agen dukungan Office kami akan sangat membantu.

×