第7章 不正利用の防止とリスク管理
ファイル転送は、スパム、スクレイピング、帯域の枯渇といった自動化された不正利用の標的になりやすいサービスです。本章では、 使いやすさと再開機能を損なわずに不正利用を抑えるために用いている対策を説明します。
7.1 目標
- 正規のユーザーに負担の大きい手順を求めることなく、自動化された不正利用を抑えます。
- プラットフォームの可用性とコストの上限(帯域、ストレージ、CPU)を守ります。
- 再開機能を維持します。対策によって、ユーザーが大容量の転送をやり直す必要が生じないようにするべきです(SHOULD)。
7.2 設計原則(最小限、説明可能、元に戻せる)
- 最小限:必要なシグナルだけを収集し、可能な限り永続的な識別子を使わないようにします。
- 説明可能:ブロックやスロットリングを行う場合、ユーザーが取るべき行動がわかる理由を表示するべきです(SHOULD)。
- 元に戻せる:トラフィックの傾向が変わったときに、緩和策をすぐに調整できるようにするべきです(SHOULD)。
7.3 レート制限とクォータ
7.3.1 エッジでのレート制限
- リクエストの大量送信にはIP/AS単位のスロットリングを適用しつつ、通常の並列チャンク転送は許可します。
- オリジンへの急激な負荷を避けるため、リーキーバケット方式の制限を優先します。
7.3.2 アプリケーションのクォータと上限
- プランごとの上限(サイズ、保持期間、ダウンロード回数)を適用し、UIで分かりやすく案内します。
- 上限を超えた場合、認可についてはフェールクローズとし(MUST)、同時に次に取るべき手順を明示します。
7.4 不正利用の兆候と緩和策
- 作成やアップロードの試行が高頻度である、不審なユーザーエージェント、異常なダウンロードの拡散といった兆候があれば、追加のチェックを行う場合があります(MAY)。
- 緩和策には、スロットリングの強化、一時的なブロック、リスクの高いトラフィックへの追加の確認要求などが含まれる場合があります(MAY)。
- 緩和策によって機密性を損なってはなりません(MUST NOT)。CEKやフラグメントをサーバーに送らせることは決してありません。
7.5 関連するクレーム ID
- 正式な対応表は付録:クレーム IDを参照してください。