🔑
GitLab の各種 Token の比較
CI/CDや他サービスとの連携に使えそうなトークンのまとめ。いろいろあって違いがよくわからなかったので、ドキュメントを読んでまとめてみました。
(これ以外にもいくつかトークンがあります。詳しくは公式のざっくりまとめ参照。)
| Personal Access Token | Project Access Token | Deploy Token | Deploy Key | CI/CD Job Token | ||
|---|---|---|---|---|---|---|
| ユーザーとの紐付け | 要 | 不要 | 不要 | 不要 | 不要 | |
| 有効期限設定 | 可 | 可 | 可 | 不可 | (4) | |
| 即時無効化 | 可 | 可 | 可 | 可 | (4) | |
| 有効範囲 | インスタンス | ✓(2) | ||||
| グループ | ✓(1) | ✓ | ||||
| プロジェクト | ✓(1) | ✓ | ✓ | ✓(3) | ✓(5) | |
| スコープ | Read API | ✓ | ✓ | ✓(6) | ||
| Write API | ✓ | ✓ | ✓(6) | |||
| sudo API | ✓(2) | |||||
| Repository read | ✓ | ✓ | ✓ | ✓ | ||
| Repository write | ✓ | ✓ | ✓ | |||
| User read | ✓ | |||||
| Package Registry read | ✓ | ✓ | ||||
| Package Registry write | ✓ | ✓ | ||||
| Others | ✓ |
(1) 紐付いたユーザーの権限に従う
(2) インスタンス管理者のみ設定可
(3) 作成者の権限に従う
(4) Job実行中のみ有効
(5) Job実行者の権限に従う
(6) 特定のAPIのみ(詳細はドキュメント参照)
Discussion