You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyPI是否不再支持用户名密码上传包?是否有其他发布认证方式?

PyPI包发布的其他认证方式

目前PyPI已强化安全机制,启用2FA后常规用户名密码上传会触发403权限错误,也就是你遇到的这个情况。除了直接输入__token__作为用户名、API Token作为密码的方式外,还有以下几种更便捷的认证方式:

  • 使用.pypirc配置文件
    在用户根目录下创建.pypirc文件,填入以下内容(替换为你的API Token):

    [pypi]
      username = __token__
      password = 你的PyPI API Token
    

    后续使用twine upload dist/*时,工具会自动读取该文件中的凭证,无需手动输入账号密码。

  • 使用环境变量
    在终端中设置环境变量(不同系统命令略有差异):

    # Linux/macOS
    export TWINE_USERNAME='__token__'
    export TWINE_PASSWORD='你的PyPI API Token'
    
    # Windows(PowerShell)
    $env:TWINE_USERNAME='__token__'
    $env:TWINE_PASSWORD='你的PyPI API Token'
    

    设置完成后直接运行twine upload dist/*即可,工具会自动读取环境变量中的凭证。

  • 使用密钥环(Keyring)
    先安装密钥环工具:

    pip install keyring
    

    然后将API Token存入密钥环:

    keyring set https://upload.pypi.org/legacy/ __token__
    

    执行后按提示输入你的API Token即可。后续使用twine上传时,工具会自动从密钥环中获取凭证,无需手动输入。

补充说明:twine保留用户名密码输入项是为了兼容历史场景,但当前PyPI启用2FA后已不再支持纯用户名密码认证,因此必须使用基于令牌的认证方式。

内容的提问来源于stack exchange,提问作者Pavel Komarov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 03:03:17