none
Ошибка при работе с NuGet в Visual Studio 2019 v16.9.1 RRS feed

  • Вопрос

  • При попытке выполнить публикацию в автономный файл в локальной папке возникает ошибка:

    Повторяется попытка выполнить операцию "FindPackagesByIdAsyncCore" для источника "https://www.nuget.org/api/v2/FindPackagesById()?id='Microsoft.WindowsDesktop.App.Runtime.win-x64'&semVerLevel=2.0.0".
    Произошла ошибка при отправке запроса.

    Базовое соединение закрыто: Не удалось установить доверительные отношения для защищенного канала SSL/TLS.
    Удаленный сертификат недействителен согласно результатам проверки подлинности.

    Как я понимаю, пакет с https://www.nuget.org/api/v2/ не скачивается.

    Аналогичная ошибка возникает в менеджере пакетов Nuget, когда выбираешь "Обзор" имеющихся пакетов в источнике.

    Странно, что ошибка возникает при попытке публикации вновь созданного проекта. Если открыть старый проект, сделанный примерно год назад, то он собирается и публикуется нормально. В старом проекте был путь источника http://packages.nuget.org/v1/FeedService.svc/, но установка такого же пути в новом проекте не помогла.

    Нашёл здесь различные рекомендации, но ничего не помогло. Как быть?

    15 марта 2021 г. 12:35

Ответы

  • Для начала зайдите с этого компьютера из IE/Edge (Chrome тоже подойдет, но не FF - у него свой список доверенных сертификатов, не системный) на https://www.nuget.org и посмотрите на его сертификат (и ругань по его поводу, если есть). И на сам сайт - тоже: не страница ли это вашего провайдера, который спешит вас уведомить, что доступ к этому ресурсу запрещен? Или то же самое - но от местного межсетевого экрана, если вы из сети предприятия работаете.

    Потом зайдите откуда-нибудь из совсем другого места и тоже посмотрите на сертификат. Совпадают?

    Если сайт не тот или сертификаты не совпадают, разбирайтесь с провайдером/администратором межсетевого экрана. Только сначала убедитесь, что подмена сертификата  - не на вашем компьютере: проверьте, что подключение не идет через Fiddler и ему подобные, антивирусом компьютер просканируйте...


    Слава России!

    • Помечено в качестве ответа Vector BCOModerator 16 марта 2021 г. 8:34
    15 марта 2021 г. 16:19
  • Оказалось что куда-то исчез с моего компа корневой сертификат DigiCert Global Root G2. О его отсутствии заявил IE, когда я всё-таки открыл сайт nuget.org и посмотрел сертификат.

    После этого я открыл страницу сертификатов на digicert.com (тут) и скачал оттуда сертификат DigiCert Global Root G2 (DigiCertGlobalRootG2.crt). Далее в mmc импортировал его в корневые доверенные сертификаты и всё, проблема решена!

    • Помечено в качестве ответа Vector BCOModerator 16 марта 2021 г. 8:34
    16 марта 2021 г. 5:49

Все ответы

  • Для начала зайдите с этого компьютера из IE/Edge (Chrome тоже подойдет, но не FF - у него свой список доверенных сертификатов, не системный) на https://www.nuget.org и посмотрите на его сертификат (и ругань по его поводу, если есть). И на сам сайт - тоже: не страница ли это вашего провайдера, который спешит вас уведомить, что доступ к этому ресурсу запрещен? Или то же самое - но от местного межсетевого экрана, если вы из сети предприятия работаете.

    Потом зайдите откуда-нибудь из совсем другого места и тоже посмотрите на сертификат. Совпадают?

    Если сайт не тот или сертификаты не совпадают, разбирайтесь с провайдером/администратором межсетевого экрана. Только сначала убедитесь, что подмена сертификата  - не на вашем компьютере: проверьте, что подключение не идет через Fiddler и ему подобные, антивирусом компьютер просканируйте...


    Слава России!

    • Помечено в качестве ответа Vector BCOModerator 16 марта 2021 г. 8:34
    15 марта 2021 г. 16:19
  • Спасибо.

    Ошибка случилась на работе. И я действительно, смотрел https://www.nuget.org/ из FF. Если смотреть из IE, то он ругается на сертификат и предлагает сайт не открывать.

    Зашёл через IE на виртуальной машине - открывается нормально, без ругани. Виртуалка тоже выходит в рабочую сеть.

    Зашёл домой по удалёнке на виртуальную машину, там тоже через IE открывается нормально.

    Выходит, что-то на моём физическом компе? Записал сертификат в файл из дома, установил его вместо имеющегося в "Доверенных издателях" - не помогло, сайт открывается с руганью.

    Запустил антивирус, но это надолго...

    Антивирус ничего не нашёл.


    • Изменено DimoniraTN 16 марта 2021 г. 5:34
    16 марта 2021 г. 4:30
  • Оказалось что куда-то исчез с моего компа корневой сертификат DigiCert Global Root G2. О его отсутствии заявил IE, когда я всё-таки открыл сайт nuget.org и посмотрел сертификат.

    После этого я открыл страницу сертификатов на digicert.com (тут) и скачал оттуда сертификат DigiCert Global Root G2 (DigiCertGlobalRootG2.crt). Далее в mmc импортировал его в корневые доверенные сертификаты и всё, проблема решена!

    • Помечено в качестве ответа Vector BCOModerator 16 марта 2021 г. 8:34
    16 марта 2021 г. 5:49