Не вдалося підключитися до сервера за допомогою ServicePointManager або SslStream інтерфейси, після оновлення для .NET Framework-4.6

ВАЖЛИВО! Ця стаття перекладена засобами машинного перекладу Microsoft. Статтю можна редагувати в середовищі Community Translation Framework (CTF). Щоб якомога швидше перекласти всі статті у своїй базі знань різними мовами, компанія Microsoft не лише звертається до професійних перекладачів, але й вдається до машинного перекладу, який потім редагується спільнотою. Такі статті можуть містити лексичні, синтаксичні та граматичні помилки. Microsoft не несе відповідальності за будь-які неточності, помилки або збитки, до яких може призвести неправильний переклад статей або їх використання. Докладніше про CTF див. на веб-сторінці http://support.microsoft.com/gp/machine-translation-corrections/uk-ua.

Клацніть тут, щоб переглянути цю статтю англійською мовою: 3069494
Ознаки
Припустімо, що оновлення для Microsoft Khuôn khổ .NET 4.6 на вашому комп'ютері. Якщо використовується програма, яка використовує протокол SSL 3.0 ServicePointManager або SslStream API для підключення до сервера, підключення не вдається.
причина
Ця проблема виникає в тому, що за промовчанням набір протоколів, SSL/TLS, які використовуються ServicePointManager і SslStream було змінено.

Старе значення: Ssl 3.0 | TLS 1.0 | TLS 1.1.

Нове значення: Tls 1.0 | TLS 1.1 | TLS 1.2

Обхідний шлях
Щоб тимчасово усунути цю проблему, Оновіть сервер Tls 1.0, Tls 1.1 або Tls 1.2 через те, що було показано незахищені і вразливим до атак, таких як ПУДЕЛЬ SSL 3.0.

Примітка. Якщо не вдається оновити сервер, використовуйте AppContext клас вимкнути цю функцію. Для цього скористайтеся одним із наведених нижче способів.
  • Програмним способом: Має бути саме перше, що застосунок чи в тому, щоServicePointManagerбуде ініціалізувати лише один раз. У вашому застосунку, скористайтеся таким кодом:
    private const string DisableCachingName = @"TestSwitch.LocalAppContext.DisableCaching";        private const string DontEnableSchUseStrongCryptoName = @"Switch.System.Net.DontEnableSchUseStrongCrypto";        AppContext.SetSwitch(DisableCachingName, true);        AppContext.SetSwitch(DontEnableSchUseStrongCryptoName, true);
  • За допомогою AppConfig файл застосунку: додайте такий рядок до файлу Appconfig:
    <AppContextSwitchOverrides value="Switch.System.Net.DontEnableSchUseStrongCrypto=true"></AppContextSwitchOverrides>


Щоб отримати додаткові відомості про відомі проблеми, в .NET Framework-4.6 див. Відомі проблеми для .NET Framework-4.6.
Додаткові відомості
Щоб отримати додаткові відомості про продукт керування версіями змін а також вплив у .NET Framework-4.6 див. Сумісність програм у Khuôn khổ .NET 4.6.

Примітки
  • Нова конфігурація застосовуються лише під час застосування орієнтація .NET Framework-4.6. Khuôn khổ .NET 4.5.2, так і попередніх versionswill не стосується навіть якщо їх у середовищі Khuôn khổ .NET 4.6.
  • Список впливу верхнього рівня інтерфейси:
    • HttpClient, HttpWebRequest
    • FtpClient
    • SmtpClient
    • SslStream
  • SCH_USE_STRONG_CRYPTO Прапора буде використовуватися в .NET Framework-4.6 автоматично і впливає на роботу, видалення небезпечних криптографії та хешування алгоритмів. Для всіх платформ операційної системи, раніших за Windows 10, алгоритмуRC4 буде видалено з використання. Від 10 для Windows, буде видалено такі додаткові небезпечних алгоритмів:DES, NULL, ЕКСПОРТ та MD5

Попередження. Цю статтю переведено автоматично

Thuộc tính

ID Bài viết: 3069494 - Xem lại Lần cuối: 07/20/2015 15:57:00 - Bản sửa đổi: 2.0

Microsoft .NET Framework 4.6

  • kbsurveynew kbtshoot kbexpertiseadvanced kbmt KB3069494 KbMtuk
Phản hồi