现在所有包都需要双重身份验证(2FA)或 启用绕过双重认证的细粒度访问令牌 来创建和发布包。

🌐 All packages now require two-factor authentication (2FA) or a granular access tokens with bypass 2FA enabled for creating and publishing packages.

修改软件包设置也需要双重身份验证 (2FA)。

🌐 Modifying a package's settings also requires two-factor authentication (2FA).

对于 CI/CD 工作流,可以考虑使用 可信发布,它提供安全的、无需令牌的发布,并自动强制执行强身份验证,无需手动管理令牌。

🌐 For CI/CD workflows, consider using trusted publishing, which provides secure, token-free publishing that automatically enforces strong authentication without requiring manual token management.

关于粒度访问令牌的重要说明:

  • 绕过 2FA 配置在创建令牌时设置。
  • 当**禁用绕过双重身份验证(2FA)**时:系统将检查账户级和套餐级设置,以确定是否需要2FA
  • 启用绕过双重认证 (2FA) 时:令牌将始终绕过所有双重认证要求,无论账户级别或套餐级别的双重认证设置如何
  • 当在包级别选择 要求双因素身份验证并禁止使用令牌 时,无论其绕过双因素身份验证的设置如何,都无法使用细粒度访问令牌

在软件包设置中配置双重身份验证

🌐 Configuring two-factor authentication on package settings

  1. 在 npm“登录”页面上,输入您的帐户详细信息并单击登录 Screenshot of npm login dialog
  2. 导航到你希望需要第二个因素来发布或修改设置的包。

  3. 点击 设置

    Screenshot showing the admin tab on a package page
  4. 在“发布访问权限”下,选择发布包所需的要求。

    1. 要求启用两步验证或启用绕过两步验证的细粒度访问令牌(默认) 这是所有新包的默认选项。选择此选项后,维护者必须为其账户启用两步验证。如果他们通过交互方式发布包,使用 npm publish 命令,则在执行发布时需要响应两步验证提示。不过,维护者也可以创建一个 启用绕过双重认证的细粒度访问令牌 并用它进行非交互式发布。
    2. 要求双因素身份验证并禁止使用令牌(推荐)启用此选项后,维护者必须在其账户上启用双因素身份验证,并且必须进行交互式发布。在执行发布操作时,维护者需要响应双因素身份验证提示。无论其绕过双因素身份验证的设置如何,粒度访问令牌都无法用于发布软件包。
    Screenshot showing the require two-factor option for a package
  5. 点击 更新软件包设置