ユーザーAPIのレート制限
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab Self-Managed、GitLab Dedicated
GitLab 18.0以降にアップグレードする際、このAPIの構成可能なレート制限は0に設定されます。管理者は、必要に応じてレート制限を調整できます。影響を受けるレート制限に関する情報については、プロジェクト、グループ、およびユーザーAPIに対して発表されたレート制限を参照してください。
以下のUsers APIへのリクエストについて、IPアドレスごと、およびユーザーごとの1分あたりのレート制限を構成できます。
| 制限 | デフォルト |
|---|---|
GET /users/:id/followers | 1分あたり100 |
GET /users/:id/following | 1分あたり100 |
GET /users/:id/status | 1分あたり240 |
GET /users/:id/keys | 1分あたり120 |
GET /users/:id/keys/:key_id | 1分あたり120 |
GET /users/:id/gpg_keys | 1分あたり120 |
GET /users/:id/gpg_keys/:key_id | 1分あたり120 |
前提条件:
- 管理者アクセス権が必要です。
レート制限を変更するには:
- 右上隅で、管理者を選択します。
- 設定 > ネットワークを選択します。
- Users API rate limitを展開します。
- 利用可能なレート制限の値を設定します。レート制限は、認証されたリクエストでは1分あたり、ユーザーごと、認証されていないリクエストではIPアドレスごとに適用されます。レート制限を無効にするには、
0を入力します。 - 変更を保存を選択します。
各レート制限:
- リクエストが認証された場合、ユーザーごとに適用されます。
- リクエストが認証されていない場合、IPアドレスごとに適用されます。
- レート制限を無効にするには、
0に設定できます。
ログ:
- レート制限を超過したリクエストは、
auth.logファイルにログが記録されます。 - レート制限の変更は、
audit_json.logファイルにログが記録されます。
例:
GET /users/:id/followersに対して150のレート制限を設定し、1分間に155のリクエストを送信した場合、最後の5つのリクエストはブロックされます。1分後、再びレート制限を超えるまで、リクエストの送信を続けることができます。