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

Edge Security Acceleration:URL 署名の設定

最終更新日:Apr 21, 2026

デフォルトでは、 または DCDN によって配信されるコンテンツは、URL を知っていれば誰でもパブリックにアクセスできます。サイトリソースの不正なダウンロードや盗用を防ぐために、リファラーベースのホットリンク保護や IP ホワイトリスト/ブラックリストなどの他のアクセス制御メソッドに加えて、URL 署名を使用できます。URL 署名は、URL 内の暗号化された文字列とタイムスタンプを検証することで、オリジンリソースを保護します。

URL 署名の仕組み

URL 署名機能は、Alibaba Cloud または DCDN の POP (Point of Presence) を使用します。POP はオリジンと連携して、リソースへの不正アクセスを防止します。このプロセスには、次のコンポーネントが含まれます。

  • オリジンアプリケーションサーバー:署名アルゴリズムやキーなど、事前定義されたルールに基づいて署名付き URL を生成し、クライアントに返します。

  • クライアント:署名付き URL を または DCDN の POP に送信して検証をリクエストすることで、リソースを要求します。

  • または DCDN の POP:署名付き URL 内の暗号化文字列やタイムスタンプなどの情報を検証します。

  1. お客様は、オリジンアプリケーションサーバーで、署名アルゴリズムやなど、署名付き URL を生成するためのルールを設定します。

    たとえば、署名付き URL は http://DomainName/timestamp/md5hash/FileName のようなフォーマットになります。

  2. クライアントがオリジンのページにアクセスすると、アプリケーションサーバーは設定されたルールに従って署名付き URL を生成し、クライアントに返すページにその署名付き URL を含めます (図のステップ 2 と 3)。

  3. クライアントは署名付き URL を使用して、 または DCDN の POP からリソースをリクエストします (図のステップ 4)。

  4. または DCDN の POP は、リクエストの暗号化文字列とタイムスタンプを検証することでリクエストを認証します。

    • 認証に失敗した場合、リクエストは拒否されます。

    • 認証に成功した場合、POP はリクエストを処理し、コンテンツを提供します。

      説明
      • リソースが DCDN ノードにキャッシュされていない場合、DCDN ノードは back-to-origin を開始する前に、認証 URL から認証パラメーターを削除して元の URL (例:http://DomainName/FileName) に戻し、その元の URL を使用してキャッシュキーを生成するか、オリジンリクエストを開始します。

      • または DCDN がリクエスト URL を認証した後、URL 内の中国語やその他の非 ASCII 文字などの特殊文字をエンコードします。

URL 署名の設定と有効化

重要
  • 開始する前に、オリジンアプリケーションサーバーで署名付き URL を生成するためのルール (署名アルゴリズムやキーを含む) を設定していることを確認してください。

  • または DCDN で設定する URL 署名ロジックは、アプリケーションサーバー上のロジックと同一である必要があります。

  1. DCDN コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、ドメイン名 をクリックします。

  3. ドメイン名 ページで、管理するドメイン名を見つけ、設定 をクリックします。

  4. ドメイン名の左側のナビゲーションツリーで、アクセス制御 をクリックします。

  5. URL 認証 タブをクリックします。

  6. URL 認証の設定 スイッチをオンにします。

  7. URL 認証 ダイアログボックスで、プロンプトに従って URL 署名情報を設定します。

    URL鉴权

    パラメーター

    説明

    認証タイプ

    オリジンサーバーで使用されている署名付き URL のフォーマットに一致する認証タイプを選択します。

    説明

    URL 署名が失敗した場合、レスポンスヘッダーで 403 エラーが返されます:

    • MD5 計算エラー

      例:X-Tengine-Error:denied by req auth: invalid md5hash=de7bfdc915ced05e17380a149bd760be

    • 時間関連のエラー

      例:X-Tengine-Error:denied by req auth: expired timestamp=1439469547

    プライマリキー

    プライマリキーを入力します。キーは 6~128 文字で、英字と数字のみを含む必要があります。

    セカンダリキー

    セカンダリキーを入力します。キーは 6~128 文字で、英字と数字のみを含む必要があります。少なくとも 1 つのキー (プライマリまたはセカンダリ) が必要です。

    [有効期間]

    署名付き URL の有効期間は DCDN で設定されます。ユーザーは (`timestamp` + `設定された有効期間`) の時間範囲内で DCDN にアクセスできます。この時間範囲外のアクセス試行は認証に失敗します。

    • 単位:秒

    • 有効値:1~31,536,000

    • デフォルト値:1800 (30 分)

    • 例:署名サーバーがタイムスタンプ 2020-08-15 15:00:00 (UTC+8) の署名付き URL を生成し、有効期間が 1800 秒に設定されている場合、URL は 2020-08-15 15:30:00 (UTC+8) に失効します。

  8. OK をクリックします。

署名付き URL の検証

URL 署名を設定した後、DCDN コンソールでテスト URL を生成し、署名ロジックが正しいことを確認します。

  1. テスト用に暗号化された URL の生成 セクションで、オリジナル URL と認証情報を指定します。

    生成鉴权URL

    パラメーター

    説明

    オリジナル URL

    完全な元の URL を入力します。例:https://www.aliyun.com

    認証タイプ

    URL 署名の設定と有効化セクションで設定した認証タイプを選択します。

    認証キー

    URL 署名の設定と有効化セクションで指定したプライマリキー または セカンダリキー を入力します。

    有効期間

    有効期間を秒単位で入力します。この値は、URL 署名の設定と有効化セクションで指定した値と一致する必要があります。

  2. 生成 をクリックして、認証 URLタイムスタンプ を取得します。

    URL鉴权

URL 署名の無効化

重要

または DCDN で URL 署名を無効にしても、クライアントリクエストに署名パラメーターが含まれている場合、 または DCDN はリクエスト URL を元のフォーマットに戻すことができません。その結果、すべてのリクエストがキャッシュにヒットせず、オリジンに転送されます。これにより、back-to-origin トラフィックとコストが急増します。したがって、URL 署名の使用を停止するには、アプリケーションサーバーと コンソールの両方でこの機能を無効にする必要があります。

  1. DCDN コンソールで、URL 認証の設定 セクションに移動し、URL 署名スイッチをオフにします。

  2. オリジンサーバーで、URL に認証パラメーターを追加するロジックを削除します。

関連 API