Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Симптомы

Предположим, что после обновления до Microsoft платформа.NET Framework 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 оказался небезопасным и уязвимым для атак таких как POODLE.

Примечание. Если не удается обновить сервер, класс 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"/ >



Дополнительные сведения об известных проблемах в 4.6 платформа.NET Framework содержатся в разделе Известные проблемы 4.6 платформа.NET Framework.

Дополнительные сведения

Дополнительные сведения об изменениях версий продукта и влияние в 4.6 платформа.NET Framework Совместимости приложений в 4.6 платформа.NET Frameworkсм.

Примечания

  • Новая конфигурация будет применяться только в том случае, если приложение предназначено для 4.6 платформа.NET Framework. Платформа.NET Framework 4.5.2 и более ранних версий, не затрагиваются, даже если они выполняются в среде 4.6 платформа.NET Framework.

  • Список соответствующих API верхнего уровня:

    • HttpClient HttpWebRequest

    • FtpClient

    • SmtpClient

    • Класс SslStream

  • SCH_USE_STRONG_CRYPTO Этот флаг будет автоматически использоваться в 4.6 платформа.NET Framework и влияет на поведение, удаляя небезопасные алгоритмы шифрования и хэширования. Для всех операционных систем более ранних, чем Windows 10 алгоритм RC4 удаляется из использования. От Windows 10 будут удалены следующие дополнительные алгоритмы небезопасные: DES, NULL, Экспорт и MD5


Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×