Вопросы и ответы по NuGet.org

Условия лицензии

Какие условия лицензирования применяются по умолчанию, если для пакета не указаны никакие сведения о лицензии?

В отношении каждого пакета действуют входящие в него условия. Прежде чем получать доступ к пакетам, скачивать или получать их, необходимо ознакомиться с соответствующими условиями. Воспользуйтесь ссылкой Сведения о лицензии на странице пакета на веб-сайте NuGet.org.

Если для пакета не заданы условия лицензии, следует обратиться непосредственно к владельцу пакета по ссылке для связи с владельцем на странице пакета на веб-сайте NuGet.org. Корпорация Майкрософт не предоставляет вам лицензию на какую-либо интеллектуальную собственность сторонних поставщиков пакетов и не несет ответственность за сведения, предоставляемые третьими лицами.

Управление пакетами на веб-сайте NuGet.org

Можно ли изменить метаданные пакета после его отправки?

NuGet рекомендует подписать все пакеты. Основополагающим принципом подписывания является то, что содержимое подписанного пакета, включая файл nuspec, является неизменным. При редактировании метаданных пакета изменяется файл nuspec, в результате чего существующие подписи становятся недействительными. Мы рекомендуем изменить существующие рабочие процессы таким образом, чтобы после создания пакета не требовалось редактирование его метаданных.

Обратите внимание, что перечисленные в пакете зависимости создаются автоматически на основании самого пакета и не могут быть изменены.

Кроме того, отправка пакета на веб-сайт int.nugettest.org позволяет легко протестировать и проверить пакет, не публикуя его в общедоступной коллекции. Конечная точка API: https://apiint.nugettest.org/v3/index.json

Можно ли удалить пакет, опубликованный на сайте NuGet.org?

Как правило, мы не поддерживаем удаление пакета, опубликованного в NuGet.org. Дополнительные сведения о нашей политике по удалению пакетов.

Можно ли зарезервировать имена для пакетов, которые будут опубликованы в будущем?

Да. Вы можете зарезервировать идентификаторы пакетов на веб-сайте NuGet.org, запросив префикс идентификатора пакета для своей учетной записи. Чтобы запросить префикс идентификатора пакета, следуйте инструкциям в документации.

Как заявить о правах владельца пакетов?

Что делать с владельцем пакета, который нарушает условия лицензии на мое программное обеспечение?

В рамках сообщества NuGet мы пропагандируем тесное сотрудничество по вопросам разрешения любых разногласий, которые могут возникать между владельцами пакетов и другого программного обеспечения. Прежде чем обращаться к администраторам NuGet.org, мы рекомендуем воспользоваться процессом разрешения споров.

Рекомендуется ли загружать тестовые пакеты на веб-сайт NuGet.org?

В целях тестирования вы можете использовать веб-сайт int.nugettest.org или альтернативные общедоступные серверы NuGet, такие как myget.org или Azure DevOps.

Обратите внимание, что отправленные на веб-сайт int.nugettest.org пакеты могут не сохраняться.

Каков максимальный размер пакетов, загружаемых на веб-сайт NuGet.org?

На веб-сайт NuGet.org можно загружать пакеты размером до 250 МБ, однако мы рекомендуем по возможности не создавать пакеты размером более 1 МБ и использовать зависимости для установления связей между пакетами. Чтобы избежать конфликтов, рекомендуется включать в пакет только одну сборку.

NuGet использует для скачивания пакетов протокол HTTP, поэтому для крупных пакетов повышается вероятность сбоев при установке.

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

В большинстве случаев зависимости являются статическими и никогда не изменяются. При исправлении ошибок в коде обновление зависимостей может не требоваться. Если вы объединяете зависимости в пакет, в конечном итоге вам придется каждый раз выполнять повторную доставку пакетов большого размера. Разбивая пакеты NuGet на взаимосвязанные зависимости, вы реализуете более детализированный процесс обновления пакетов для клиентов.

Отсутствие доступа к NuGet.org

Какие версии SSL/TLS и наборы шифров поддерживаются NuGet.org?

NuGet.org поддерживает TLS 1.2 и следующие наборы шифров:

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

Почему не удается восстановить пакеты из NuGet.org?

Если при восстановлении пакетов из NuGet.org возникают временные сбои, рекомендуется:

  • используйте последние версии клиентов NuGet с улучшенной поддержкой устойчивости.
  • используйте переменные среды клиентов NuGet для улучшения политики повторных попыток на компьютерах CI.
Переменная среды Description Примечания
NUGET_ENABLE_ENHANCED_HTTP_RETRY Включает или отключает расширенную повторную попытку HTTP в NuGet. Возможные значения: true (по умолчанию с .NET CLI 6.0.300, NuGet CLI 6.2, Visual Studio 2022 версии 17.2) или false.
NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT Настраивает максимальное количество попыток при включении расширенных повторных попыток при получении HTTP-подключения. Число, представляющее количество повторных попыток, значение 6по умолчанию .
NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS Настраивает время ожидания в миллисекундах перед повтором HTTP-подключения при включении расширенных повторных попыток. Число миллсекунд для ожидания, значение по умолчанию равно 1000.

Примечание.

Эти переменные среды доступны с версии 6.0.100, NuGet CLI 6.0, Visual Studio 2022 версии 17.0 и соответствующей версии MSBuild. См. заметки о выпуске NuGet.

Если эта версия клиента NuGet по-прежнему завершается ошибкой, обратитесь в службу поддержки и укажите дополнительные сведения об устранении неполадок подключения, включая:

  • Источники пакетов, которые вы используете
  • Версия используемого клиента NuGet
  • Журнал восстановления с подробным уровнем детализации
  • Данные трассировки MTR или Fiddler (см. ниже)
  • Ваш географический регион
  • Защищен ли компьютер прокси-сервером или брандмауэром?
  • Расположен ли компьютер в центре обработки данных поставщика облачных служб (Azure, AWS и т. п.)? Если это так, укажите имя поставщика и регион.

Получение трассировки MTR:

  • Скачайте WinMTR.

  • Введите имя узла api.nuget.org и щелкните Пуск.

  • Дождитесь, пока значение в столбце Отправлено не станет >= 100.

    Capturing MTR

  • Скопируйте текст в буфер обмена.

Получение трассировки Fiddler:

  • Установите последнюю версию Fiddler.
  • Запустите Fiddler и отключите запись трафика в меню Файл  Запись трафика>.
  • Удалите все сеансы (выделите все элементы в списке и нажмите клавишу Delete).
  • Настройте Fiddler для записи трафика HTTPS, установив флажок Расшифровывать трафик HTTPS на вкладке HTTPS в меню Сервис > Параметры Fiddler...
  • Закройте Visual Studio.
  • Включите меню Файл > Запись трафика.
  • Запустите исполняемый файл Visual Studio или nuget.exe и выполните действия, которые не получились ранее. Трафик, сформированный этими действиями, будет показан в Fiddler.
  • После выполнения нужных действий выберите элементы Файл > Сохранить > Все сеансы, чтобы сохранить записанные сеансы.

Примечание. Для маршрутизации трафика NuGet через Fiddler может потребоваться присвоить переменной среды HTTP_PROXY значение http://127.0.0.1:8888.

Если этот способ не помогает, попробуйте советы, приведенные в этой статье на веб-сайте StackOverflow.

Управление учетной записью NuGet.org

Как восстановить имя входа по паролю NuGet.org?

Обратите внимание, что NuGet.org имя входа в систему паролей прекращено. К сожалению, NuGet.org не имеет способа восстановления учетных записей паролей, вы можете войти только в NuGet.org с помощью личной учетной записи Майкрософт (MSA) или учетной записи Azure Active Directory (AAD).

Если вы не можете использовать имя входа Майкрософт, выполните действия по восстановлению учетной записи NuGet.org.

Сообщите нам, требуется ли помощь в передаче владения пакетами другой учетной записи, отправив сообщение электронной почты support@nuget.org.

Какая учетная запись Майкрософт связана с моей учетной записью NuGet.org?

Если вы забыли, какая учетная запись Майкрософт сопоставлена с вашей учетной записью NuGet.org, выполните указанные ниже действия для получения помощи.

  1. Перейдите на страницу входа на сайт NuGet.org и щелкните ссылку Нужна помощь со входом?.
  2. Отображается всплывающее окно для оказания помощи. Выполните действия, указанные в этом диалоговом окне, чтобы узнать, какая учетная запись Майкрософт сопоставлена с вашей учетной записью NuGet.org.

Как изменить учетную запись Майкрософт, используемую для входа на сайт NuGet.org?

Если вы хотите изменить учетную запись Майкрософт для пользователя NuGet.org, выполните указанные ниже действия. Предположим, что с вашей учетной записью NuGet.org с именем пользователя MyNuGetAccount сопоставлена учетная запись Майкрософт с адресом электронной почты account1@outlook.com. Вы хотите изменить имя входа на другую учетную запись Майкрософт с адресом электронной почты account2@outlook.com

  1. Выполните вход с помощью привязанной в данный момент учетной записи Майкрософт, т. е. account1@outlook.com, на странице входа после нажатия кнопки Вход с помощью учетной записи Майкрософт.

  2. После входа перейдите на страницу параметров учетной записи.

  3. Разверните раздел Login Account (Учетная запись входа). Нажмите кнопку Изменить учетную запись.

  4. Вы будете перенаправлены на страницу входа Майкрософт. Выполните вход с использованием учетной записи, с которой вы хотите изменить связь, например account2@outlook.com. Примечание. При входе, возможно, потребуется выбрать элемент Sign out and sign in with different account (Выйти и войти с другой учетной записью), чтобы иметь возможность входа в систему с помощью другой учетной записи Майкрософт.

  5. Если появится сообщение об ошибке, аналогичное приведенному ниже, см. раздел Учетная запись Майкрософт связана с другой учетной записью NuGet.org для получения дополнительных сведений.

    Не удалось обновить учетную запись Майкрософт с помощью account2 account2@outlook.com. This could happen if it is already linked to another NuGet account. За дополнительной информацией обращайтесь в службу поддержки.

  6. После успешного входа с использованием второй учетной записи вы будете перенаправлены обратно на страницу своей учетной записи NuGet.org и увидите, что для входа привязана новая учетная запись Майкрософт. Теперь вам следует использовать эту учетную запись при входе на сайт NuGet.org.

Учетная запись Майкрософт связана с другой учетной записью NuGet.org.

Если вы попытались изменить учетную имя входа Майкрософт и столкнулись со следующей ошибкой:

Не удалось обновить учетную запись Майкрософт с помощью account2 account2@outlook.com. This could happen if it is already linked to another NuGet account. За дополнительной информацией обращайтесь в службу поддержки.

Предположим, что вы пытались изменить имя входа учетной записи Майкрософт с account1@outlook.com для пользователя NuGet.org с именем пользователя MyNuGetAccount1 на другую учетную запись Майкрософт с адресом электронной почты account2@outlook.com. И при этом возникла указанная выше ошибка.

**Что означает указанная выше ошибка?

Она означает, что имеется другая учетная запись NuGet.org, связанная с той учетной записью Майкрософт, на которую вы пытаетесь переключиться. В примере выше учетная запись Майкрософт с адресом электронной почты <account2@outlook.com> связана с другой учетной записью NuGet.org, предположим, с именем пользователя MyNuGetAccount2.

Вы не можете изменить связанное имя входа с учетной записью Майкрософт, которая сопоставлена с другой учетной записью NuGet.org.

Я помню, что у меня была другая учетная запись NuGet.org, как выяснить, что это за учетная запись?

Выполните вход с помощью второй учетной записи Майкрософт на странице входа. При этом вы войдете в учетную запись NuGet.org, которая сейчас сопоставлена со второй учетной записью Майкрософт. После этого вы сможете просмотреть отправленные пакеты и управлять этой учетной записью.

Я не беспокоюсь об этой второй учетной записи NuGet.org, мне нужно изменить имя входа для первой учетной записи NuGet.org на вторую учетную запись Майкрософт. Что делать?

Если вас не волнует вторая учетная запись NuGet.org и вы хотите повторно использовать связанную учетную запись Майкрософт с адресом электронной почты account2@outlook.com.

Вы можете отменить сопоставление между учетной записью Майкрософт и учетной записью NuGet.org, удалив последнюю.

  1. Выполните действия по удалению пользователя для второй учетной записи NuGet.org MyNuGetAccount2.
  2. После удаления этой учетной записи вы можете повторить процедуру для смены имени входа учетной записи Майкрософт.

Подождите, мне нужна и эта вторая учетная запись. Я не хочу потерять ее, но хочу изменить соответствующие имена входа для первой учетной записи.

Вам потребуется создать или использовать третью учетную запись Майкрософт, например, с адресом электронной почты account3@outlook.com.

  1. Сначала необходимо войти со второй учетной записью Майкрософт на account2@outlook.com NuGet.org. Выполните описанные выше действия, чтобы изменить связанные имена входа и связать третью учетную запись Майкрософт с этой учетной записью NuGet.org.
  2. После этого вторая учетная запись Майкрософт с адресом электронной почты account2@outlook.com освобождается, что позволяет связать ее с первой учетной записью NuGet.org MyNuGetAccount1. Выполните аналогичную процедуру, чтобы сменить имена входа Майкрософт на вторую учетную запись Майкрософт.

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

Если вы пытались выполнить вход с помощью учетной записи Майкрософт, например, с адресом электронной почты account1@outlook.com и появилось сообщение об ошибке, аналогичное представленному ниже:

The account with email 'account1@outlook.com' is linked with another microsoft account. (Учетная запись с указанным адресом электронной почты связана с другой учетной записью Майкрософт.)

If you would like to update the linked Microsoft account you can do so from the account settings page. (Если вы хотите обновить связанную учетную запись Майкрософт, можете сделать это на странице параметров учетной записи.)

Что означает указанная выше ошибка?

При создании учетной записи на сайте NuGet.org с ней связывается адрес электронной почты для связи. Обычно это тот же адрес, который используется для сопоставленной учетной записи Майкрософт. Однако можно указать другой адрес электронной почты для связи. Поэтому технически вы можете иметь другую учетную запись Майкрософт, например с адресом account2@outlook.com, которая связана с учетной записью NuGet.org, имеющей адрес электронной почты для связи account1@outlook.com.

Таким образом, указанная выше ошибка означает, что уже существует учетная запись NuGet.org с адресом электронной почты для связи account1@outlook.com, однако она сопоставлена с другой учетной записью Майкрософт с адресом, отличным отaccount1@outlook.com.

Как определить, какая учетная запись Майкрософт связана с этой учетной записью NuGet.org?

Вам следует использовать процедуру помощи со входом, чтобы выяснить, какая учетная запись Майкрософт связана с учетной записью NuGet.org с адресом электронной почты account1@outlook.com.

Не удается использовать имя входа Майкрософт, как восстановить учетную запись NuGet.org?

Если вы попытались использовать помощь для входа и у вас нет доступа к учетной записи Майкрософт, связанной с вашей учетной записью NuGet.org, обратитесь в службу поддержки учетной записи Майкрософт:

Как преобразовать учетную запись NuGet.org в организацию?

Если вы хотите преобразовать учетную запись в организацию, выполните действия, описанные в документации для организаций на nuget.org.

Проблемы со входом на сайт NuGet.org для учетных записей AAD с неуправляемым клиентом?

Если при входе с использованием домена учетной записи электронной почты (@yourdomain.com) выводится следующее сообщение об ошибке, см. указанные ниже действия по восстановлению учетной записи NuGet.org.

Error during login for AAD accounts

Что такое неуправляемое состояние при входе? И почему оно возникает сейчас?

Вероятно, ваша учетная запись была ранее зарегистрирована в качестве личной учетной записи Майкрософт и нормально работала в этом качестве, однако теперь она была зарегистрирована в качестве "неуправляемого" клиента в Azure Active Directory (служба идентификации, используемая нами для проверки подлинности учетных записей Майкрософт).

Это могло произойти, если вы или другой сотрудник из вашей организации (с адресом электронной почты @yourdomain.com) зарегистрировались в одной из служб интеграции AAD или выполнили самостоятельную регистрацию для Azure Active Directory, что создает такого "неуправляемого" клиента для используемого домена учетной записи Майкрософт (в вашем случае @yourdomain.com).

Что можно сделать для восстановления учетной записи?

Сейчас у нас (NuGet.org) не существует способа проверки подлинности учетных записей с такими "неуправляемыми" клиентами в Azure Active Directory. Мы стараемся найти оптимальный способ проверки подлинности таких учетных записей.

Если вы хотите войти на сайт NuGet.org с помощью учетной записи Майкрософт (@yourdomain.com), вы (или администратор в вашей организации) должны затребовать владение AAD, выполнив проверку DNS для подтверждения подлинности пользователей с адресом электронной почты "@yourdomain.com". Выполните действия по перехвату администратором доменов, описанные для Azure Active Directory. После этого должен начать работать обычный вход.

Как изменить мое имя пользователя учетной записи NuGet.org?

Вы можете запросить изменение имени пользователя, отправив сообщение электронной почты support@nuget.org из адреса электронной почты, подключенного к учетной записи, которую вы хотите обновить. Не забудьте включить старое имя пользователя и новое имя пользователя, на которое вы хотите изменить. Затем мы рассмотрим ваш запрос и после утверждения получите подтверждение от вас, что мы готовы предпринять правильные действия и что вы понимаете последствия. После подтверждения мы изменим имя пользователя.

Внимание

  • Старое имя пользователя по-прежнему будет зарезервировано. Вы не сможете повторно использовать старое имя пользователя, и это включает изменение регистров.
  • В результате приведенного выше изменения мы не можем отменить изменения этого изменения.
  • Все ссылки на старую страницу профиля пользователя (например https://www.nuget.org/profiles/OldUsername, не будут перенаправлены на новый профиль).
  • Версии пакетов, принадлежащие вашей учетной записи, по-прежнему будут содержать старое имя пользователя в сигнатуре репозитория. Новые версии пакетов будут содержать новое имя пользователя.
  • Любые метаданные, предоставленные автором в существующих версиях пакетов, ссылающиеся на старое имя пользователя или другие идентифицирующие данные, не будут изменены.
  • Политики клиентов NuGet, утверждая доверие к старому имени пользователя, не будут неявно доверять пакетам, опубликованным вашим новым именем пользователя. Потребители пакетов с этими политиками клиента должны вручную обновить их, чтобы доверять новому имени пользователя при попытке обновить новую версию пакета.

Удаление учетной записи NuGet.org

При удалении учетной записи мы рекомендуем вам передать права владения на все пакеты, для которых вы являетесь единственным владельцем. Дополнительные сведения см. в разделе об управлении владельцами пакетов. Это также поможет нам ускорить обработку вашего запроса.

Если вы хотите преобразовать свою учетную запись NuGet.org в учетную запись организации, выполните эти инструкции.

Внимание

Удаление пользователя приведет к следующему:

  1. Ваше имя пользователя будет зарезервировано, и никто не сможет повторно использовать его для создания отдельной учетной записи или учетной записи организации.
  2. Отмена связанных ключей API.
  3. Удаление учетной записи в качестве владельца для всех дочерних пакетов.
  4. Отмена связей для всех ранее существовавших резервирований префикса идентификатора для этой учетной записи.
  5. Удаление учетной записи как члена любых организаций.

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

  1. Войдите на сайт NuGet.org с помощью учетной записи, которую требуется удалить.
  2. Щелкните этот URL-адрес: https://www.nuget.org/account/delete и выполните действия для отправки запроса на удаление учетной записи.

Наша служба поддержки пользователей обработает этот запрос и удалит учетную запись.

Что происходит с моей учетной записью NuGet.org при удалении учетной записи Майкрософт?

Когда учетная запись Майкрософт или Azure Active Directory, используемая для входа в учетную запись nuget.org, удаляется также учетная запись nuget.org. Действие удаления учетной записи завершается службой поддержки клиентов nuget.org в течение 30 дней с даты удаления учетной записи Майкрософт.

Если у вас есть пакеты, связанные с вашей учетной записью, мы уведомим вас 3 рабочих дня, прежде чем продолжить удаление и предложить помощь по передаче пакетов в другую учетную запись nuget.org.