PyPI больше не разрешает загрузку с использованием имени пользователя и пароля?

Я только что повторно опубликовал один из своих пакетов, но для этого мне пришлось указать имя пользователя как __token__ и использовать токен API, сгенерированный на веб-сайте, в качестве пароля. Есть ли другой способ аутентификации при публикации? Ошибка читается

100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.1/19.1 kB • 00:00 • 9.0 MB/s
WARNING  Error during upload. Retry with the --verbose option for more details.                                                                                         
ERROR    HTTPError: 403 Forbidden from https://upload.pypi.org/legacy/                                                                                                  
         Invalid or non-existent authentication information. See https://pypi.org/help/#invalid-auth for more information.

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

Когда я вошел в свою учетную запись, мне пришлось настроить 2FA и загрузить коды восстановления. Это подсказало мне, что PyPI, возможно, решил сделать все возможное для обеспечения безопасности. Я имею в виду, что это справедливо: если кто-то взломал популярный пакет, а затем миллионы из нас загрузили вредоносный код... дааа. Тем не менее, мне было немного неприятно это выяснять, потому что twine по-прежнему принимает имя пользователя и пароль.

🤔 А знаете ли вы, что...
С Python можно создавать настольные приложения с использованием библиотеки Tkinter.


50
1

Ответ:

Решено

Да, вам следует сгенерировать токен API и установить имя пользователя __token__ в файлах конфигурации. Так происходит уже некоторое время.

Объявлено здесь на PyPI.org, здесь на python.org.

Существует Использовать токены API по умолчанию для PyPI #561 на шпагате для отслеживания лучшего UX. twine по-прежнему требует имя пользователя и пароль, а базовую аутентификацию невозможно полностью удалить из-за мест назначения, отличных от PyPI.