正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。
ドキュメントに関する現在のご利用体験についてお聞かせください。アンケートにご協力ください。

レート制限

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab Self-Managed、GitLab Dedicated

GitLab.comについては、GitLab.comのレート制限を参照してください。

GitLab Dedicatedについては、認証済みユーザーのレート制限を参照してください。

レート制限は、ウェブアプリケーションのセキュリティと耐久性を向上させるためによく使われる技術です。

例えば、シンプルなスクリプトで1秒あたり数千のリクエストを生成できます。リクエストは次のいずれかの可能性があります:

  • 悪意のあるもの。
  • 無関心なもの。
  • 単なるバグ。

アプリケーションとインフラストラクチャは、その負荷に対応できない可能性があります。詳細については、サービス拒否を参照してください。ほとんどの場合、単一のIPアドレスからのリクエストのレートを制限することで軽減できます。

ほとんどのブルートフォース攻撃は、同様にレート制限によって軽減されます。

APIリクエストのレート制限は、フロントエンドからのリクエストには影響しません。これらのリクエストは常にウェブトラフィックとしてカウントされるためです。

設定オプション

ほとんどのレート制限は、管理者エリアで設定できます。一部はAPIまたはRailsコンソールからのみ利用可能で、GitLab Pagesのレート制限は設定ファイルで設定します。

管理者エリア

これらのレート制限は、インスタンスの管理者エリアで設定できます:

APIとRailsコンソール

これらのレート制限は、アプリケーション設定APIで設定できます:

  • オートコンプリートユーザーのレート制限
  • AIアクション(ai_action_api_rate_limit): 認証済みユーザーごとに8時間あたり160回の呼び出し。GraphQLのaiActionミューテーションに適用されます。
  • タグ作成レート制限(tags_create_limit): プロジェクトごとに30分あたり100リクエスト。タグを作成するためのREST APIエンドポイント、GraphQLのtagCreateミューテーション、UIでのタグ作成、および/tagクイックアクションに適用されます。

このレート制限は、プラン制限APIまたはRailsコンソールで設定できます:

設定ファイル

これらのレート制限は、お使いのインストールの設定ファイルでのみ設定できます。例えば、Linuxパッケージインストールでは/etc/gitlab/gitlab.rbです:

設定できない制限

一部のレート制限は設定できません。これらの制限のリストについては、設定不可能なレート制限を参照してください。

利用停止とブロック

一部の保護機能は、リクエストを遅くするのではなく、一定期間クライアントをブロックします。詳細については、悪用および認証失敗による利用停止を参照してください。