Microsoft hesabıyla oturum açın
Oturum açın veya hesap oluşturun.
Merhaba,
Farklı bir hesap seçin.
Birden çok hesabınız var
Oturum açmak istediğiniz hesabı seçin.

.NET Framework sürüm 3.5 SP1 ve önceki sürümleri, şifreleme protokolü olarak Aktarım Katmanı Güvenliği (TLS) Sistemi Varsayılan Sürümlerinin kullanımına destek sağlamadı. Bu güncelleştirme, 3.5 SP1'de TLS v1.2 .NET Framework olanak sağlar.

NotBu  içerik, Güncelleştirme Tarihi'Windows sunulmaktadır. İçeriği almak için, en son Windows güncelleştirmeleri için Güncelleştir'.NET Framework tarayın. Sisteminiz Güncelleştirme yoluyla tamamen güncel Windows, başka bir işlem yapmaya gerek yok.

Çözüm

Karşıdan yükleme bilgileri

KB3154520 ile ilgili düzeltmenin yerini, daha önce KB3154520'ye dahil edilen tüm düzeltmeleri içeren .NET Framework'un en son güncelleştirmeleri aldı. Office 365'in en son güncelleştirmelerini yüklemeniz .NET Framework.

Bu alanda şu geliştirmeleri yaptık:

  • Aşağıdaki kayıt defteri anahtarları, bilgisayarda çalışan yönetilen bir uygulamanın sabit kod kodları yerine SSL ve TLS .NET Framework işletim sistemi varsayılanlarını kullanmak üzere ayarlanmış olabilir.
     

    • 64 bit işletim sistemleri için:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
      "SystemDefaultTlsVersions"=dword:00000001

      [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
      "SystemDefaultTlsVersions"=dword:00000001

    • 32 bit işletim sistemleri için:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
      "SystemDefaultTlsVersions"=dword:00000001

    Not Uygulama, kodda veya config dosyalarında ServicePointManager.SecureProtocol'u belirli bir değere ayarlasın ya da sslStream.AuthenticateAs* API'lerini kullanarak belirli bir SslProtocols enum değerini belirtirse, kayıt defteri ayarı davranışı geçerli olmaz.
     

  • Buna ek olarak, TLS v1.2, TLS v1.1'i ayarlama seçeneği olarak kullanabileceğiniz SslProtocolsExtensions enumerasyonu ile ServicePointManager.SecurityProtocol özelliği için işletim sistemi varsayılanlarını .NET Framework 2.0 SP2'yi hedeflerken ekledik. (Uzantıların nasıl kullanımıyla ilgili bilgi için Geliştirici Kılavuzu bölümüne bakın.)

    Vista SP2 Windows Server 2008 SP2'Windows 1.0'dan daha yeni olan Aktarım Katmanı Güvenliği (TLS) protokolü sürümlerini desteklemez. ServicePointManager.SecurityProtocol özelliğinde ayarlanmış olsalar bile, Windows Vista SP2 veya Windows Server 2008 SP2 ile çalışan yönetilen .NET Framework 2.0 SP2 uygulamaları TLS 1.2 veya TLS 1.1'i kullanamaz.


Microsoft destek dosyalarını indirme hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'daki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:

119591 Microsoft destek dosyalarını çevrimiçi hizmetlerden alma Microsoft bu dosyayı virüsler için taradı. Microsoft, dosyanın kullanıma sunulduğu tarihteki en güncel virüs tarama yazılımını kullanmıştır. Dosya, üzerinde herhangi bir yetkisiz değişiklik yapılmasını engellemeye yardım eden geliştirilmiş güvenliğe sahip sunucularda depolanır.
 

Geliştirici Kılavuzu

Yeni uzantıların tanımı aşağıdaki dosyalarda yer almaktadır:
 

  • SecurityProtocolTypeExtensions.csnamespace System.Net
    {
    System.Security.Authentication kullanma;
    genel statik sınıf SecurityProtocolTypeExtensions
    {
    public const SecurityProtocolType Tls12 = (SecurityProtocolType)SslProtocolsExtensions.Tls12;
    public const SecurityProtocolType Tls11 = (SecurityProtocolType)SslProtocolsExtensions.Tls11;
    public const SecurityProtocolType SystemDefault = (SecurityProtocolType)0;
    }
    }

  • SslProtocolsExtensions.csnamespace System.Security.Authentication
    {
    genel statik sınıf SslProtocolsExtensions
    {
    public const SslProtocols Tls12 = (SslProtocols)0x00000C00;
    public const SslProtocols Tls11 = (SslProtocols)0x00000300;
    }
    }

TLS v1.2 desteğini eklemek için, projenize kaynak dosyaları dahil edin ve sonra aşağıdaki yöntemleri kullanarak protokol sürümünü ayarlayın:
 

  • ServicePointManager tabanlı API'leri kullanan uygulamalar, protokolü aşağıdaki gibi ayarlanabilir:

    System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolTypeExtensions.Tls12;

  • SslStream AuthenticateAsClient(String, X509CertificateCollection, SslProtocols, Boolean) aşırı yükini kullanan uygulamalar SslProtocols değerini SslProtocolsExtensions.Tls12 olarak ayarlanabilir.

İlk paragrafta bahsedilen kayıt defteri ayarlanmışsa ve uygulamada SslProtocols değeri SslProtocols.None olarak ayarlanmışsa, Windows İşletim Sistemi sürümüne bağlı olacak sistem varsayılan davranışı seçilir.

Ayrıca, .NET Framework 3.5 SP1 ile TLS v1.2 desteğini etkinleştirmek için uygulama kodunu değiştirirken, bu düzeltme ekini dağıtnın dağıtılamayacak bilgisayarlardan emin olun; aşağıdaki özel durumları işlemeniz gerekir:
 

  1. Düzeltme yüklenmezse, ServicePointManager tabanlı API'ler (HTTP, FTP, SMTP) "System.NotSupportedException: İstenen güvenlik protokolü desteklenmez" hata değeri verir. Uygulama, yeni değeri ayarlamak için ServicePointManager.SecurityProtocol adını gerektirir.

  2. Düzeltme yüklenmezse, SslStream tabanlı API'ler AuthenticateAs* API'lerden birini çağırarak atar:

    System.ArgumentException: Belirtilen değer 'SslProtocolType' numaralamasinde geçerli değildir.
    Parametre adı: sslProtocolType

Not Yalnızca SslStream için, var olan TLS, Ssl3, Ssl2 ile TLS12, TLS11 birleşimi (örneğin: TLS12 | Tls11 | TLS) yama olmadan sistemde var olan protokollere (örneğin: TLS) sessizce indir indirer. Bu, tek istisnadan TLs'ye bağlanacak.
 

Ek Bilgi

TLS v1.1 veya v1.2'yi işletim sistemi varsayılanları olarak etkinleştirmek için https://technet.microsoft.com/en-us/library/dn786418(v=ws.11).aspx#BKMK_SchannelTR_TLS12.

Not TLS v1.1 ve v1.2, Windows Vista veya Windows Server 2008'de kullanılamaz.

Belirli uygulamalar için daha önce sözü geçen kayıt defteri anahtarıyla ayarlanmış işletim sistemi varsayılanlarını devre dışı bırakmanız gerekirse, şu kayıt defteri anahtarı ekleyerek bunu yapabilirsiniz:HKEY_LOCAL_MACHINE\SOFTWARE\[Wow6432Node\]Microsoft\.NETFramework\v2.0.50727\System.Net.ServicePointManager.SystemDefaultTlsVersions
<<Dosyanın tam yolu .exe DWORD 0
>> C:\MyApp\MyApp.exe DWORD 0

TLS v1.2 hakkında daha fazla bilgi için bkz . TLS v1.2 tanıtımı.

SystemDefaultTlsVersions .NET kayıt defteri anahtarını etkinleştirdikten sonra, aşağıdaki tabloda gösterildiği gibi, Windows her sürümde farklı bir davranış oluşur.
 

Windows sürümü

SSL2 İstemcisi

SSL2 Sunucusu

SSL3 İstemcisi

SSL3 Sunucusu

TLS 1.0 İstemcisi

TLS 1.0 Sunucusu

TLS 1.1 İstemcisi

TLS 1.1 Sunucusu

TLS 1.2 İstemcisi

TLS 1.2 Sunucusu

Windows Vista SP2 ve Windows Server 2008 SP2

Devre Dışı

Etkin

Etkin

Etkin

Etkin

Etkin

Yok

Yok

Yok

Yok

Windows 7 SP1 ve Windows Server 2008 R2 SP1

Devre Dışı

Etkin

Etkin

Etkin

Etkin

Etkin

Devre Dışı

Devre Dışı

Devre Dışı

Devre Dışı

Windows Server 2012

Devre Dışı

Devre Dışı

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

R2 Windows 8.1 Windows Server 2012 ve

Devre Dışı

Devre Dışı

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Windows 10

Devre Dışı

Devre Dışı

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Windows 10 (1511)

Devre Dışı

Devre Dışı

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Windows 10 (1607) ve Windows Server 2016

Yok

Yok

Devre Dışı

Devre Dışı

Etkin

Etkin

Etkin

Etkin

Etkin

Etkin

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?
Gönder’e bastığınızda, geri bildiriminiz Microsoft ürün ve hizmetlerini geliştirmek için kullanılır. BT yöneticiniz bu verileri toplayabilecek. Gizlilik Bildirimi.

Geri bildiriminiz için teşekkürler!

×