Skip to the content.

🔑 認証・トークンガイド

Workflow を実行するために必要な PAT(Personal Access Token)の権限設定について説明します。

(ここをクリック)目次

🔐 Q. PAT にはどの権限が必要ですか?

A. Workflow ごとに必要な権限が異なります。アカウントタイプとトークンタイプの組み合わせに応じて、以下の該当パターンを確認してください。

(ここをクリック)個人用アカウント × Fine-grained token
カテゴリ権限必要な Workflow
Account permissions > ProjectsRead and write①②⑤
Account permissions > ProjectsRead
Repository permissions > AdministrationRead and write
Repository permissions > ContentsRead and writerelease-please
Repository permissions > IssuesRead and write
Repository permissions > IssuesRead
Repository permissions > Pull requestsRead and writerelease-please
Repository permissions > Pull requestsRead
Note: Workflow ③(特殊 Repository 一括作成)では Repository の作成を行うため、 Administration の書き込み権限が必要です。

Note: Workflow ④(Label 一括追加)では Label の作成を行うため、 Issues の書き込み権限が必要です。

Note: Workflow ⑤(Issue/PR 一括紐付け)では対象 Repository の Issue/PR を読み取るため、 Repository の参照権限が追加で必要です。

Note: Workflow ⑥(統合プロジェクト分析)はプロジェクトデータの読み取りのみを行うため、 Projects は Read で十分です。

Note: release-please Workflow では CHANGELOG ・バージョンファイルの更新およびリリース PR の作成・更新を行うため、 Contents(Read and write)と Pull requests(Read and write)が必要です。
(ここをクリック)個人用アカウント × Classic token
Scope必要な Workflow
project①②⑤⑥
read:org①②⑤⑥
repo(または public_repo③, ④, ⑤, release-please(対象 Repository が private の場合は repo
Note: Classic token では、個人用アカウント・ Organization を問わず read:org Scope が必要です。 Organization オーナーの場合、read:org が不足していると gh project サブコマンド実行時に unknown owner type エラーが発生します。

また、個人用アカウントオーナーの場合、gh project field-create が gh CLI v2.88.1 で unknown owner type エラーを起こす既知のバグがあります(#119、本 Repository では GraphQL API による回避策を適用済み)。

Note: release-please Workflow では GitHub Release の作成やタグの書き込みを行うため、repo Scope が必要です。public_repo では Contents や Pull requests の書き込み権限が含まれないため、 release-please は動作しません。
(ここをクリック)Organization × Fine-grained token
カテゴリ権限必要な Workflow
Organization permissions > ProjectsRead and write①②⑤
Organization permissions > ProjectsRead
Repository permissions > AdministrationRead and write
Repository permissions > ContentsRead and writerelease-please
Repository permissions > IssuesRead and write
Repository permissions > IssuesRead
Repository permissions > Pull requestsRead and writerelease-please
Repository permissions > Pull requestsRead
Note: Workflow ③(特殊 Repository 一括作成)では Repository の作成を行うため、 Administration の書き込み権限が必要です。

Note: Workflow ④(Label 一括追加)では Label の作成を行うため、 Issues の書き込み権限が必要です。

Note: Workflow ⑤(Issue/PR 一括紐付け)では対象 Repository の Issue/PR を読み取るため、 Repository の参照権限が追加で必要です。

Note: Workflow ⑥(統合プロジェクト分析)はプロジェクトデータの読み取りのみを行うため、 Projects は Read で十分です。

Note: release-please Workflow では CHANGELOG ・バージョンファイルの更新およびリリース PR の作成・更新を行うため、 Contents(Read and write)と Pull requests(Read and write)が必要です。
(ここをクリック)Organization × Classic token
Scope必要な Workflow
project①②⑤⑥
read:org①②⑤⑥
repo(または public_repo③, ④, ⑤, release-please(対象 Repository が private の場合は repo
Note: Classic token では、個人用アカウント・ Organization を問わず read:org Scope が必要です。 Organization オーナーの場合、read:org が不足していると gh project サブコマンド実行時に unknown owner type エラーが発生します。

Note: release-please Workflow では GitHub Release の作成やタグの書き込みを行うため、repo Scope が必要です。public_repo では Contents や Pull requests の書き込み権限が含まれないため、 release-please は動作しません。

🤔 Q. Fine-grained token と Classic token のどちらを使うべきですか?

A. Fine-grained token の使用を推奨します。 理由は以下のとおりです。

参考: Fine-grained token の制約事項については次のセクションを参照してください。


⚠️ Fine-grained token の制約事項

Fine-grained token には以下の制約があります。

注意: 上記制約により、 Workflow ⑤ で異なる Organization の Repository を target_repo に指定する場合は、Classic token の使用を推奨します。