るいログ

Trusted Publishingでnpmパッケージを公開

自分のnpmパッケージのセキュリティを少し強化したときのメモ

前置き

詳細については、azuさんの記事を見た方が正確です。

私の記事では、私が実際に行ったことを紹介します。

導入の流れ

もともと--provenance(認証バッジ)を付ける設定をしていました。そこから次の設定を追加しました。

私の場合はこれだけで問題なく移行できました。

ただし、2FAの必須化はしていません。めんどくさかった

Tips: npm publishの違い

npm publishのフローが異なるため、簡単にまとめます。ymlファイルを参照する際の参考にしてください。

azuさんのフロー

  1. ブラウザからRun workflow(リリースPRを作成)
  2. リリースPRをレビューしてリリースノートを書く
  3. リリースPRをマージ
  4. npm publish

公式例のフロー

  1. tagを付けてpush
  2. npm publish

私のフロー

  1. ブラウザからRun workflow
  2. npm publish
  3. バージョン更新用のPRが作成されるのでマージ

気になる違い

azu公式私
デフォルトブランチ保護可❌可
タグ自動作成✅❌✅
リリースノート自動作成✅❌❌