tencent cloud

フィードバック

ホットリンク防止の設定

最終更新日:2022-12-28 18:00:57

    概要

    悪意のあるプログラムがリソースのURLを利用してパブリックネットワークのトラフィックを盗んだり、悪意のある手法でリソースを盗み、ユーザーに不要な損失を与えたりすることを防ぐためのものです。Tencent Cloud COSは、リンク不正アクセス防止の設定をサポートしています。コンソールのリンク不正アクセス防止の設定から、ブラックリスト/ホワイトリストを設定することをお勧めします。

    注意:

    • オブジェクトへのアクセスの際に署名(URLとHeaderのどちらでも)があれば、リンク不正アクセス防止の検証は行われません。
    • リンク不正アクセス防止を設定する際、大きなファイルをチャンクに分割するリクエストがあるシナリオの場合、ご自身のドメイン名をリンク不正アクセス防止のホワイトリストに追加することができます。

    操作手順

    1. COSコンソールにログインし、左側メニューバーの【バケットリスト】をクリックし、バケットリストページに進みます。

    2. リンク不正アクセス防止を設定したいバケットを見つけ、そのバケット名をクリックし、バケット管理ページに進みます。

    3. 【セキュリティ管理】>【リンク不正アクセス防止の設定】をクリックしてリンク不正アクセス防止の設定を見つけ、【編集】をクリックして編集可能状態にします。

    4. 現在のステータスを有効に変更し、リストタイプ(ブラックリストまたはホワイトリスト)を選択し、対応するドメイン名を設定して【保存】をクリックすれば完了です。設定項目の説明は次のとおりです。

    • ブラックリスト拒否リストのドメイン名がバケットのデフォルトアクセスアドレスにアクセスすることで、リストにあるドメイン名がバケットのデフォルトアクセスアドレスにアクセスした場合、403が返されます。

    • ホワイトリスト許可リストのドメイン名がバケットのデフォルトアクセスアドレスにアクセスすることで、リストにないドメイン名がバケットのデフォルトアクセスアドレスにアクセスした場合、403が返されます。

    • 空のreferer:headerに空のrefererが含まれるHTTPリクエストです(refererrフィールドがない、またはrefererフィールドが空の場合)。

    • Referer:最大10個のドメイン名の設定で、かつ同じプレフィックスマッチングをサポートします。1個につき1行、複数個の場合は行替えします。ドメイン名、IP、ワイルドカード*などの形式のアドレスがサポートされています。事例は次のとおりです。

      • www.example.comの設定:www.example.com/123www.example.com.cnなど、www.example.comがプレフィックスであるアドレスを制限することができます。

      • ポート付きのドメイン名とIPをサポートします。例えば、www.example.com:808010.10.10.10:8080などのアドレスです。

      • *.example.comの設定:a.b.example.com/123a.example.comなどのアドレスを制限することができます。

        説明:

        CDNドメイン名アクセラレーションによるアクセスの場合は、CDNのリンク不正アクセス防止ルールが優先的に適用され、その後COSのリンク不正アクセス防止ルールが適用されます。

    事例

    APPIDは、1250000000のユーザー用にexamplebucket-1250000000という名前のバケットを作成し、ルートディレクトリに画像picture.jpgを配置します。COSは、ルールに従ってデフォルトのアクセスアドレスを発行します。

    examplebucket-1250000000.file.myqcloud.com/picture.jpg
    

    ユーザーAの所有ウェブサイト:

    www.example.com
    

    トップページのindex.htmlにこの画像を埋め込みます。

    この時点のウェブマスターBの所有ウェブサイト:

    www.fake.com
    

    ウェブマスターBはこの画像をwww.fake.comに保存したいと考えています。しかしトラフィック料金を払いたくないので、以下のアドレスのpicture.jpgを直接引用し、それをwww.fake.comサイトのトップページindex.htmlに配置しました。

    examplebucket-1250000000.file.myqcloud.com/picture.jpg
    

    上記のような場合、ユーザーAの損失を回避するため、リンク不正アクセス防止を有効にする方法を2種類提供しています。

    有効化方法1

    ブラックリストモードを設定し、ドメイン名の設定に*.fake.comを入力し、保存すると有効になります。

    有効化方法2

    ホワイトリストモードを設定し、ドメイン名の設定に*.example.comと入力し、保存すると有効になります。

    有効化前

    http://www.example.com/index.htmlにアクセスすると、画像は正常に表示されます。
    http://www.fake.com/index.htmlにアクセスしても、画像は正常に表示されます。

    有効化後

    http://www.example.com/index.htmlにアクセスすると、画像は正常に表示されます。
    http://www.fake.com/index.htmlにアクセスすると、画像は表示できません。

    ミニプログラムに関する説明

    1. ミニプログラムのネットワークリクエストのreferer は、https://servicewechat.com/{appid}/{version}/page-frame.htmlという形式に固定されています。
    2. バケットでリンク不正アクセス防止の制限が有効化されており、ミニプログラムがCOS画像をロードできるようにする必要がある場合は、COSコンソールでリンク不正アクセス防止のホワイトリスト「servicewechat.com」を設定してください。
    お問い合わせ

    カスタマーサービスをご提供できるため、ぜひお気軽にお問い合わせくださいませ。

    テクニカルサポート

    さらにサポートが必要な場合は、サポートチケットを送信して弊社サポートチームにお問い合わせください。24時間365日のサポートをご提供します。

    電話サポート(24 時間365日対応)