tencent cloud

Tencent Cloud EdgeOne

Akamai NetStorageをオリジンサーバーとして使用する設定方法

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-10-16 12:04:57
AI翻訳
本文では、EdgeOneルールエンジンの「回源認証」操作を使用して、Akamai NetStorageオリジンサーバーにオリジン認証を設定する方法を説明します。Akamai ChinaCDNからEdgeOneへ移行する際に、オリジンサーバーの認証ロジックを変更することなく、スムーズな移行を実現できます。

背景紹介

Akamai NetStorageは、Akamaiが提供するクラウドストレージサービスです(AWS S3やTencent Cloud COSに類似)。CDNオリジンサーバーとして広く利用されています。Akamai NetStorageでは、毎回のオリジンリクエストに特定の認証ヘッダーを含める必要があります。これにより、オリジンサーバーが検証を通過し、正常に応答します。その認証ロジックには、タイムスタンプ、乱数、アカウントID、およびキー署名などの複雑な計算が含まれます。
Akamai ChinaCDNからEdgeOneへの移行中に、Akamai NetStorageを引き続きオリジンサーバーとして使用する場合、EdgeOneには上記の認証ヘッダーを自動的に計算して付加する機能が必要です。EdgeOneルールエンジンの「回源認証」操作は、専用のAkamai NetStorage組み込み関数を提供し、認証ヘッダーの計算と注入を自動的に完了できます。プロセス全体でオリジンサーバーの変更は不要であり、スムーズな移行を実現できます。

前提条件

1. EdgeOneコンソールでサイトの追加が完了しています。詳細についてはサイトの追加をご参照ください。
2. EdgeOneドメイン名サービスでドメイン名接続設定が完了しています。オリジンサーバーはAkamai NetStorageのドメイン名です。
3. Akamai NetStorage管理コンソールから以下の情報を取得し、適切に保管してください。
uploadAccountId:固定のアカウントID(例:UploadAccountMedia)
key:署名計算に使用するキー(例:123456)
version:認証暗号化形式のバージョンであり、値は3または5です。

操作手順

お客様のビジネスwww.example.comがAkamai NetStorageをオリジンサーバーとして使用している場合、以下の手順を参照してください。
フィールド値の仮定:version 5(HMAC-SHA256)暗号化アルゴリズムを使用し、アカウントIDはUploadAccountMedia、キーはyour_secret_key、actionはdownload、CP Codeは1926792、NetStorageオリジンサーバードメイン名はtencentns01-nsu.akamaihd.netです。

ステップ1:ルールエンジンに入る

1. EdgeOneコンソールにログインし、左側のメニューバーで「サービス概要」に入り、「安全な加速」内で設定が必要なサイトをクリックします。
2. サイト詳細ページで、「サイト加速」>「ルールエンジン」をクリックし、ルールエンジンページに入ります。

ステップ2:マッチング条件を設定する

1. ルールエンジンページで「ルールを作成」をクリックし、「新しい空白のルールを追加」を選択します。
2. ルール編集ページで、マッチングタイプとして「HOSTがwww.example.comに等しい」を選択します。

ステップ3:「オリジン認証」操作を追加し、3つの認証ヘッダーを設定する

1. 「操作」>「選択ボックス」をクリックし、表示される操作リスト内で、操作として「オリジンサーバー認証」を選択します。
2. タイプとして「リクエストヘッダー設定」を選択し、以下の3つの認証ヘッダーを順に追加します:
ヘッダー1:X-Akamai-ACS-Auth-Data
設定項目
例(具体的な入力は認証ヘッダーの説明を参照)
ヘッダー名
X-Akamai-ACS-Auth-Data
ヘッダー値
akamai_ns_auth_data(5, "UploadAccountMedia")
ヘッダー2:X-Akamai-ACS-Auth-Sign
設定項目
例(具体的な入力は認証ヘッダーの説明を参照)
ヘッダー名
X-Akamai-ACS-Auth-Sign
ヘッダー値
akamai_ns_auth_sign(5, "your_secret_key")
ヘッダー3:X-Akamai-ACS-Action
設定項目
例(具体的な入力は認証ヘッダーの説明を参照)
ヘッダー名
X-Akamai-ACS-Action
ヘッダー値
akamai_ns_auth_action("version=1&action=download")

ステップ4:「オリジンURL書き換え」操作を追加する

X-Akamai-ACS-Auth-Sign内のsign-stringパラメータは、URLパスの前にCP Codeを連結する必要があります。実装方法はパスプレフィックスを追加することです。設定例は以下の通りです:




ステップ5:ルールを保存して公開する

完整的な設定例は以下のとおりです。「保存して公開」をクリックすると、ルールは公開成功後すぐに有効になります。




認証ヘッダーの説明

Akamai NetStorageのオリジン認証では、以下の3つのリクエストヘッダーを同時に含める必要があります。いずれか1つでも欠けると、オリジンサーバーでの認証に失敗します。

X-Akamai-ACS-Auth-Data

このヘッダーは認証データを運ぶために使用され、以下のフィールドを固定形式で連結して構成されます:
[version], [0.0.0.0], [0.0.0.0], [time], [unique-id], [uploadAccountId]
各フィールドの説明は以下の通りです:
フィールド
説明
version
認証暗号化形式のバージョンです。値は 3 または 5 で、オリジンサーバーの設定と一致させる必要があります。
Version 3:HMAC-MD5([key], [data] + [sign-string])
Version 5:HMAC-SHA256([key], [data] + [sign-string])
0.0.0.0
予約フィールドです。固定で 0.0.0.0 を入力し、2回出現します。
time
現在の十進法タイムスタンプです。EdgeOneがオリジンサーバーへのアクセス時にリアルタイムで生成します。
unique-id
乱数です。EdgeOneがオリジンサーバーへのアクセス時にリアルタイムで生成します。
uploadAccountId
お客様が提供する固定アカウントIDです。例えば UploadAccountMedia です。
連結例:
5, 0.0.0.0, 0.0.0.0, 1497896370, 3956209820, UploadAccountMedia
ルールエンジンでは、組み込み関数akamai_ns_auth_data(version, "uploadAccountId")を使用して上記フィールドの連結と生成を自動で完了します。タイムスタンプとランダム数を手動で維持する必要はありません。

X-Akamai-ACS-Auth-Sign

このヘッダーはBase64エンコードされたリクエスト署名であり、リクエストの正当性を検証するために使用されます。その暗号化アルゴリズムはversionによって決定され(version 5はHMAC-SHA256に対応)、暗号化内容は以下の3つの部分を連結して構成されます:
暗号化内容の構成:
key + data + sign-string
構成要素
説明
key
お客様が提供する固定キーです。例えば 123456 です。
data
すなわち、X-Akamai-ACS-Auth-Dataヘッダーの完全な値です。
sign-string
URLパス + 改行文字 + X-Akamai-ACS-Actionヘッダー名とその値 + 改行文字を連結して構成されます。
sign-string連結例:
/[CP Code]/[path]/[file.ext]\\nx-akamai-acs-action:version=1&action=upload&md5=0123456789abcdef0123456789abcdef&mtime=1260000000\\n
ルールエンジンでは、組み込み関数akamai_ns_auth_sign(version, "key")を使用して上記の署名計算を自動で完了し、Base64エンコード結果を出力します。

X-Akamai-ACS-Action

このヘッダーはリクエストの操作タイプ(アップロード、ダウンロードなど)を示します。ルールエンジンでは、組み込み関数akamai_ns_auth_action("version=xxx&action=xxx")を使用して、このヘッダーの値を自動的に生成します。

注意事項

uploadAccountIdとkey(キー)は、お客様がAkamai NetStorage管理コンソールで取得する必要があります。キーは適切に保管し、漏洩を避けてください。
versionパラメータはオリジンサーバー設定と一致させる必要があります。現在はバージョン3と5がサポートされています。
CP Codeは、オリジンURLの書き換えによってパスプレフィックスを追加する方法で指定されます。

関連参考

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック