プロジェクトアクセストークン(アルファ)

警告:これはアルファ版の機能であり、予告なしに変更されることがあります。
  • GitLab 13.0から導入されました
  • フィーチャーフラグで有効・無効を切り替えることができ、デフォルトでは無効になっています。
  • GitLab.comでは無効になっています。
  • GitLabセルフマネージドインスタンスで使うには、GitLab管理者に頼んで有効にしてもらいましょう。

プロジェクトアクセストークンはプロジェクトにスコープされ、GitLab APIで認証するために使用できます。

プロジェクトのアクセストークンを Git で使って HTTP や SSH で認証することもできます。

プロジェクトアクセストークンの有効期限は、あなたが定義した日付のUTC午前0時です。

プロジェクトのアクセストークンを使用してAPIを認証する方法の例については、API Docsの以下のセクションを参照してください。

プロジェクトアクセストークンの作成

  1. GitLabにログインします。
  2. アクセストークンを作成したいプロジェクトに移動します。
  3. 設定]メニューから[アクセストークン]を選択します。
  4. トークンの名前と有効期限を選択します。
  5. 希望のスコープを選択します。
  6. プロジェクトアクセストークンの作成ボタンをクリックします。
  7. プロジェクトのアクセストークンを安全な場所に保存してください。 一度ページを離れるか更新すると、再度アクセスすることはできません。

プロジェクトボットユーザー

プロジェクトのアクセストークンが作成されるごとに、ボットユーザーも作成され、メンテナー“レベルの権限を持つプロジェクトに追加されます。 プロジェクトのアクセストークンを使って行われたAPIコールは、対応するボットユーザーに関連付けられます。

これらのユーザーは「メンバー」に表示されますが、変更することはできません。 さらに、ボットユーザーを他のプロジェクトに追加することはできません。

プロジェクトのアクセストークンが取り消されると、ボットユーザは削除され、すべての記録はユーザ名「Ghost User」のシステムワイドユーザに移動します。 詳細については、関連する記録を参照してください。

プロジェクトアクセストークンの失効

プロジェクトのアクセストークンは、 Settings > Access TokensRevokeボタンをクリックすることで、いつでも失効させることができます。

プロジェクトアクセストークンのスコープ制限

プロジェクト・アクセストークンは、トークンが実行できるさまざまなアクションを許可する1つ以上のスコープを持つことができます。 利用可能なスコープは、次の表のとおりです。

範囲 説明
api スコープされたプロジェクトAPIへの完全な読み取り/書き込みアクセスを許可します。
read_api スコープされたプロジェクトAPIへの読み取りアクセスを許可します。
read_registry プロジェクトが非公開で作成者の認証が必要な場合に、コンテナレジストリイメージへの読み取りアクセス(プル)を許可します。
write_registry コンテナレジストリへの書き込みアクセス(プッシュ)を許可。
read_repository リポジトリへの読み取り専用アクセス(プル)を許可します。
write_repository リポジトリへの読み書きアクセス(プル、プッシュ)を許可します。

プロジェクトアクセストークンの有効化または無効化

プロジェクトアクセストークンはアルファ機能であり、本番環境での使用は推奨されていません。デフォルトでは無効になっている機能フラグの後ろにデプロイされています。 GitLab RailsコンソールにアクセスできるGitLab管理者は、インスタンスでこれを有効にすることができます。

有効にするには:

Feature.enable(:resource_access_token)

無効化するには:

Feature.disable(:resource_access_token)