本文へスキップ
MameTechNews
バックエンド

npm、レビュー前提のstage限定トークンを追加 直接公開権限を分離

## POINTS

  • 2027年1月のbypass-2FA廃止前に、Trusted Publishingかstage限定トークンへ移す
  • CIは`npm stage publish`に切り替え、本番公開はメンテナーの2FA承認をプロセス化する
  • stage限定でもdist-tagとdeprecateは可能なので、トークン漏洩時の権限は書き込み相当として扱う

GitHubは9月18日、npmの粒度付きアクセストークンに「Read and write (stage only)」を追加した。自動化はnpm stage publishで版をステージでき、レジストリへの直接npm publishは拒否される。公開はパッケージメンテナーが2FA付きで承認する。自動化向けに2FA回避を設定していても、stage限定トークンでは直接公開できない。

背景

npmは2027年1月を目安に、bypass-2FAトークンによる直接公開を廃止する方針を既に示している。Trusted Publishingへ移れないプロジェクト向けの移行路が、今回のstage限定トークンだ。既存トークンの権限は変わらず、オプトインで使える。stage限定でもdist-tagの移動や版の非推奨化は可能なため、書き込みトークンとしての管理は必要になる。

エンジニアへの影響

利用条件は対象パッケージへの公開権限、アカウントの2FA有効化、npm CLI 11.15.0以降、Node.js 22.14.0以降。CIの公開トークンを置き換え、npm publishをnpm stage publishに変えたうえで、承認手順をリリースプロセスに組み込む必要がある。