すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:不正なトラフィックによる高額費用の軽減

最終更新日:Jun 17, 2026

バケットを標的とした悪意のある攻撃や不正なトラフィックは、帯域幅やデータ転送の急激な増加を引き起こし、予期せぬ高額請求につながる可能性があります。これらのセキュリティのベストプラクティスに従うことで、コストのかかるインシデントのリスクを軽減できます。

重要

これらのベストプラクティスは一般的な推奨事項であり、包括的なセキュリティソリューションではありません。お客様の特定の環境や要件には適合しない場合があります。これらをより広範なセキュリティ戦略に組み込み、データとコンテンツの保護に常に注意を払ってください。

重大な金銭的損失のリスク

バケットに対する悪意のある攻撃や不正なトラフィックは、以下のような金銭的リスクにつながる可能性があります。

  • 高額請求:悪意のある攻撃は Object Storage Service (OSS) の帯域幅を消費し、その結果生じる料金はお客様の負担となります。

  • アカウント残高を超える請求:OSS は従量課金のサービスであり、請求額は請求サイクルや処理の遅延などの要因に影響されます。そのため、アカウント残高がゼロになっても、サービスが直ちに停止されるわけではありません。これにより、支払い遅延可能性があります。バケットが悪意のある攻撃の標的になったり、トラフィックの盗用が発生したりした場合、高額な料金が発生する可能性があります。関連するリスクとして、請求額がアカウント残高を上回ることも頻繁にあります。

パブリックアクセスブロック

OSS では、バケットポリシーとアクセス制御リスト (ACL) を通じて、誰でも認証なしでリソースにアクセスできるパブリックアクセスが許可されています。これにより、データ漏洩や悪意のあるアクティビティによる高額なトラフィックコストのリスクが生じます。これらのリスクを軽減するため、OSS はグローバル、バケット、アクセスポイント、または Function Compute アクセスポイントのレベルで、ワンクリックでパブリックアクセスブロック機能を提供します。有効にすると、パブリックアクセスブロックは既存のパブリック権限を上書きし、新しい権限の作成を防ぎ、データをパブリックに公開されることから保護します。詳細については、「パブリックアクセスブロック」をご参照ください。

PrivateLink を介した OSS リソースへのアクセス

PrivateLink は、VPC と OSS の間に安全なプライベート接続を確立し、パブリックインターネットアクセスに伴うセキュリティリスクを回避します。プライベート接続はデータセキュリティを強化し、不正なトラフィックによる過剰なコストのリスクを軽減します。利点は次のとおりです。

  • 分離:PrivateLink は、OSS リソースが承認された VPC 内からのみアクセス可能であることを保証し、インターネットベースの攻撃を防ぎます。

  • 権限制御:VPC エンドポイントを使用すると、特定の IP アドレスやサブネットへのアクセスを制限したり、特定のセキュリティグループルールを適用したりするなど、きめ細かなアクセス制御を適用できます。

  • トラフィック監視:VPC 内にデプロイされたサービスにより、ネットワークトラフィックの監視と管理が向上し、異常を迅速に検出し、悪意のあるアクセスを防ぐことができます。

詳細については、「PrivateLink 経由の OSS へのアクセス」をご参照ください。

ACL 権限のプライベートへの設定

誰でも OSS リソースの読み取りまたは書き込みができる必要がある場合を除き、バケットやオブジェクトのアクセス制御リスト (ACL) を public-read または public-read-write に設定しないでください。パブリックアクセスを許可した場合、以下の権限が適用されます。

  • パブリック読み取り/書き込み:誰でもバケット内のオブジェクトの読み取りと書き込みができます。

    警告

    これにより、インターネット上のどのユーザーでもオブジェクトにアクセスし、バケットに新しいオブジェクトをアップロードできるようになります。これは、データの抜き取り、予期せぬコストの急増、そして悪意のあるまたは違法なコンテンツがアップロードされた場合の潜在的な法的問題につながる可能性があります。特定のユースケースで絶対に必要な場合を除き、public-read-write 権限を付与しないことを強く推奨します。

  • パブリック読み取り:バケットの所有者のみがバケットにオブジェクトを書き込むことができ、誰でもオブジェクトを読み取ることができます。

    警告

    これにより、インターネット上のどのユーザーでもオブジェクトにアクセスできるようになり、データの抜き取りや予期せぬコストの急増につながる可能性があります。この権限は慎重に使用してください。

これらのセキュリティリスクを回避するために、バケットとオブジェクトの ACL を private に設定することを強く推奨します。ACL を private に変更する前に、その変更がアプリケーションやサービスに影響を与えないことを確認してください。

詳細な手順については、「バケット ACL の設定」および「オブジェクト ACL の設定」をご参照ください。

CloudMonitor アラートルールの設定

CloudMonitor でアラートルールを作成し、OSS リソースの使用状況とステータスを監視します。メトリクスが事前に定義されたしきい値を超えると、CloudMonitor はアラートを送信するため、異常を迅速に特定し、対処することができます。

たとえば、パブリックのインバウンドまたはアウトバウンドトラフィックなどのメトリクスが 1 分以内に 100 MB 以上に達したときにトリガーされるアラートルールをバケットに設定できます。アラート情報は、Simple Log Service の指定された Logstore に書き込まれます。

次の例は、パブリックのインバウンドトラフィックが 100 MB 以上に達したときにトリガーされるアラートルールを設定する方法を示しています。

[アラートルールの作成] ダイアログボックスで、[製品][Object Storage Service (OSS)] に、[リソース範囲][インスタンス] に、[関連リソース][examplebucket] に設定します。ルール名を [alert] に設定し、アラート条件を「(バケット) パブリックインバウンドトラフィック ≥ 100 Mbytes (1 期間連続)」に設定します。[通知のミュート][24 時間] に、[有効期間][00:00] から [23:59] に設定します。[連絡先グループ] には [group1] を選択します。[詳細設定] で、[Simple Log Service] を有効にします。[リージョン] には [China (Hangzhou)] を選択し、対応する [ProjectName][Logstore] を設定します。[Auto Scaling][Message Service (MNS) — トピック][Function Compute] などの他のオプションは無効のままにします。[データなしの処理方法] には、[処理しない] を選択します。

特定のバケット、または Alibaba Cloud アカウント配下のすべての OSS リソースに対してアラートルールを設定できます。詳細については、「アラートルールの作成」をご参照ください。

ホットリンク保護の設定

OSS で Referer ベースのアクセスルールを設定して、未承認のリファラーがオブジェクトにアクセスするのを防ぎます。これにより、他の Web サイトからのホットリンクがブロックされ、不要なトラフィックコストから保護されます。

ブラウザが OSS にリクエストを送信すると、リクエストヘッダーにはソースを示す Referer が含まれます。ホットリンク保護が設定されている場合、OSS は設定されたルールに基づいて Referer を評価し、リクエストを許可または拒否します。

  • リクエストの Referer がブラックリストのエントリに一致するか、ホワイトリストのどのエントリにも一致しない場合、OSS はリクエストを拒否します。

  • リクエストの Referer がホワイトリストのエントリに一致する場合、OSS はリクエストを許可します。

image

たとえば、Referer ホワイトリストに https://10.10.10.10 を含むバケットを考えてみましょう。

  • ユーザー A は、バケットに保存されている画像 test.jpg を Web サイト https://10.10.10.10 に埋め込みます。ブラウザがこの画像を要求すると、リクエストヘッダーには Referer として https://10.10.10.10 が含まれます。この場合、OSS はリクエストを許可します。

  • ユーザー B は、画像 test.jpg をホットリンクし、Web サイト https://192.168.0.0 に埋め込みます。ブラウザがこの画像を要求すると、リクエストヘッダーには Referer として https://192.168.0.0 が含まれます。この場合、OSS はリクエストを拒否します。

詳細については、「ホットリンク保護」をご参照ください。

オリジン間リソース共有 (CORS) の設定

オリジン間リソース共有 (CORS) は、Web サーバーが異なるオリジンからのアクセスを制御し、安全なオリジン間データ転送を保証するための標準的なメカニズムです。ブラウザは、悪意のある可能性のあるファイルを分離するために同一オリジンポリシーを適用します。デフォルトでは、あるオリジンからの JavaScript コードが別のオリジンからのリソースにアクセスしようとすると、ブラウザはそのリクエストをブロックします。

OSS では、CORS ルールを設定してクロスオリジンリクエストを許可または拒否できます。たとえば、オリジン www.aliyun.com からの GET メソッドによるクロスオリジンリクエストのみを許可するには、CORS ルールを次のように設定します。

[CORS ルールの作成] ダイアログボックスで、[許可されたヘッダー][公開されるヘッダー] は空のままにします。[キャッシュ時間 (秒)]0 に設定し、[Vary: Origin] はチェックを外したままにします。

詳細については、「CORS の設定」をご参照ください。

オブジェクト名におけるシーケンシャルなプレフィックスの回避

多数のオブジェクトをアップロードする際に、タイムスタンプ、アルファベット順、日付、または数字 ID などの予測可能でシーケンシャルなプレフィックスを使用すると、攻撃者が命名パターンを反復処理することで、すべてのオブジェクトを推測して取得できてしまいます。これはデータ漏洩につながる可能性があります。オブジェクト名にランダムな 16 進数のハッシュプレフィックスを追加するか、名前の文字を逆順にすることで、オブジェクト名の列挙のリスクを大幅に削減できます。詳細については、「データセキュリティ」をご参照ください。