Z次元
文章 笔记 日志
专题
专栏分类
文章归档
友链
友情链接
朋友圈
留言
头像
系列文章
npm publish发布项目时开启Two-Factor Authentication解决403问题
系列文章
前端知识积累
更新于:2026/1/21
|
发布于:2026/1/5
文章摘要
......

前言

最近打算更新我的Npm包的。结果执行npm publish发布时竟然报了403的错误:

403 Forbidden Two-factor authentication or granular access token with bypass 2fa enable is required to publish packages

原因

一开始还以为是账号密码过期了的问题,然而在尝试重新登录和清除缓存后都无法解决。

后面一登录npm官网,就发现了npm官方通知验证方式变更的消息:

通过公告可以得知:

  1. Classic tokens 已被撤销

  2. 所有粒度令牌默认需要 2FA

  3. Automation tokens 成为 CI/CD 和脚本发布的推荐方案

更换新的验证方式

由于npm启用了新的验证规则,所以发布npm包时,必须使用双因素认证(2FA),已启用2FA的账号,发布时需输入动态验证码。

开启双因素认证

进入账号管理(头像->Account),找到Two-Factor Authentication功能开启:

开启后如下:

创建令牌登录

点击Generate New Token生成新的Access Tokens,复制备用:

配置token

在命令行执行语句将token配置到环境变量:

npm config set //registry.npmjs.org/:_authToken=你的令牌字符串

直接将令牌加入到.npmrc中:

registry=https://registry.npmjs.org/
//registry.npmjs.org/:_authToken=npm_你的实际令牌字符串

查看配置是否生效:

npm config get //registry.npmjs.org/:_authToken

配置完成后建议重新清除缓存后登录:

## 退出账号
npm logout

## 清除缓存
npm cache clean --force

## 查看登录用户(测试认证)
npm whoami

完成后重新执行npm publish推送,会让你进行双因素认证,认证完成后就可以成功推送:

版权声明
本文依据 CC-BY-NC-SA 4.0 许可协议授权,请您在转载时注明文章来源为 Z次元 ,若本文涉及转载第三方内容,请您一同注明。
更多专栏文章推荐
前端知识积累
人非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。
使用Nginx实现限流效果
2025/10/27
浏览器注入外部JS文件
2023/8/13
评论区

删除确认

评论删除后无法恢复,请确认是否继续?
发表评论

这里还没有评论哦

快来发一条评论抢占前排吧

目录
1
前言
2
原因
3
更换新的验证方式
开启双因素认证
创建令牌登录
配置token
目录
1
前言
2
原因
3
更换新的验证方式
开启双因素认证
创建令牌登录
配置token
博客
文章 笔记 日志
专题
专栏分类 文章归档
友链
友情链接 朋友圈
交流
留言 关于我
主页
菜单
置顶
主题
我的
十玖八柒
每天进步多一点
欢迎到访φ(゜▽゜*)♪
最新评论
柒: @Honesty
因为这个系列主要是总结和代码相关的特性,不过这个特性感觉确实可以写一下
Honesty:
哎?Jdk25 对象头压缩这个很重要的特性没记呢
个人占星:
DeepSeek没有想象中的好用
个人占星:
想给自己的网站弄个统计功能,但不会弄,头疼
我的
关于我
个人主页
站点地图
RSS订阅
导航
十年之约
虫洞穿梭
开源博客
前端开源仓库
后端开源仓库
©2020 - 2026 By 十玖八柒 版权所有
豫ICP备20021466号