メインコンテンツまでスキップ

Takumi Guard の GitHub Actions 向けレートリミットを約 6 倍に引き上げ

· 約4分
Takashi Yoneuchi
CTO @ GMO Flatt Security Inc.

Takumi Guard の認証済み GitHub Actions/Bot トークン(Tier C)のレートリミットを約 6 倍に引き上げ、トークンあたり最大 約 60,000 回/分 のリクエストに対応できるようになりました。npm・PyPI の両レジストリに適用されます。

背景

ソフトウェアサプライチェーンへの脅威は深刻さを増しています。LiteLLM の侵害事案(外部リンク)や axios の侵害事案(弊社によるまとめ)に見られるように、広く利用されているパッケージであっても攻撃の対象となりえます。こうした状況を受け、Takumi Guard へのニーズは増加しており、可能な限りの貢献を果たすべく、大規模環境への対応を強化しています。

多数の GitHub Actions ジョブが単一トークンを共有する大規模環境では、ピーク時に従来の 10,000 回/分のレートリミットに到達し、429 Too Many Requests エラーが発生するケースがありました。最大規模の CI パイプラインでも Takumi Guard を摩擦なく利用できるよう、今回レートリミットを引き上げました。

変更内容

GitHub Actions/Bot トークンのレートリミットウィンドウを 60 秒から 10 秒に短縮し、ウィンドウあたりのリクエスト数(10,000 回)は維持しました。これにより、実効スループットが約 60,000 回/分に向上しています。

利用方法変更前変更後
Bot トークントークンあたり 10,000 回/分トークンあたり 10,000 回/10秒
メール認証トークントークンあたり 10,000 回/分トークンあたり 10,000 回/分
匿名利用IP あたり 2,000 回/分IP あたり 2,000 回/分

ご利用者様側での対応は不要です。変更は自動的に適用されています。

組織での利用を始める

Bot トークンを利用して GitHub 組織単位で Takumi Guard を導入するには、以下の手順で設定してください。

  1. https://cloud.shisho.dev/hello/takumi にアクセスし、サインインする
  2. 組織を登録する。決済画面が表示されますが、本機能の利用に決済は不要です
  3. 画面左のサイドバーから Guard ページにアクセスする
  4. 保護対象の GitHub 組織名を入力する — 組織に紐づく Bot ID が発行されます

Guard の設定画面 — GitHub 組織の登録と Bot ID の発行

  1. GitHub Actions ワークフローにセットアップステップを追加します。具体的には、以下の 3 点を変更してください。
    • permissionsid-token: write を追加する(OIDC に必要)
    • contents: read など、ワークフローに必要な他の権限を追加する
    • flatt-security/setup-takumi-guard-npm@v1 アクションを Bot ID 付きで追加する

Guard の設定画面 — GitHub Actions ワークフローへのステップ追加

設定が完了すると、GitHub Actions ワークフローからのパッケージリクエストが Bot トークンで認証され、引き上げ後のレートリミットが適用されます。

詳細

レートリミットの全体については制限事項・注意事項をご覧ください。