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

Intelligent Media Services:コールバック認証

最終更新日:Jan 12, 2025

HTTPリクエストのコールバックメソッドを使用する場合、HTTPリクエストヘッダーに認証パラメーターを追加できます。このようにして、コールバックメッセージを受信するサーバーは、署名を認証して、不正なリクエストや無効なリクエストを防止できます。このトピックでは、認証パラメーター、署名の計算、サーバーの認証ルール、および認証キーの切り替えについて説明します。

使用上の注意

ビジネス要件に基づいて、コールバック認証を有効または無効にすることができます。コールバック認証を有効にすることをお勧めします。元の機能は、コールバック認証を有効または無効にしても影響を受けません。コールバック認証が有効になっている場合、コールバックリクエストにはすべての認証関連情報が含まれます。コールバックメッセージを受信するサーバーは、この情報を使用してコールバックリクエストを認証します。これは、不正なリクエストをフィルタリングし、システムセキュリティを強化するのに役立ちます。

認証パラメーター

HTTPリクエストのコールバックメソッドを使用する場合、次の認証パラメーターをHTTPリクエストヘッダーに追加できます。

パラメーター

説明

X-ICE-TIMESTAMP

HTTPリクエストが開始された時刻。値はUNIXタイムスタンプです。

X-ICE-SIGNATURE

署名文字列。32文字のMD5値です。このパラメーターの値の計算方法の詳細については、このトピックの「署名の計算」セクションを参照してください。

署名の計算

X-ICE-SIGNATUREパラメーターの値は、次の表に示すパラメーターに基づいて計算されます。

パラメーター

説明

コールバック URL

HTTPリクエストのコールバック URL です。

https://www.example.com/your/callback

X-ICE-TIMESTAMP

HTTPリクエストが開始された時刻。値はUNIXタイムスタンプです。

1519375990

認証キー

ユーザーが事前に設定した署名キー。キーは最大32文字で、大文字、小文字、数字を含める必要があります。

Test123

上記の3つのパラメーターを縦棒(|)で区切って連結します。次に、連結された文字列のMD5ハッシュ値を計算します。サンプルコード:

MD5Content = Callback URL|X-ICE-TIMESTAMP|Authentication Key
X-ICE-SIGNATURE = md5sum(MD5Content)

X-ICE-SIGNATUREパラメーターの値を計算するためのサンプルコード:

X-ICE-SIGNATURE = md5sum(https://www.example.com/your/callback|1519375990|Test123) = c72b60894140fa98920f1279219b****

コールバックメッセージを受信するサーバーの認証ルール

  • コールバックメッセージを受信するサーバーは、コールバック URL、X-ICE-TIMESTAMP、および認証キーを文字列に連結し、文字列のMD5ハッシュ値を計算します。次に、サーバーはMD5ハッシュ値をX-ICE-SIGNATUREパラメーターの値と比較します。2つの値が異なる場合、リクエストは無効と見なされます。

  • コールバックメッセージを受信するサーバーは、現在の時刻を取得し、現在の時刻とコールバックリクエストのX-ICE-TIMESTAMPパラメーターで指定された時刻の差を計算します。時間差がサーバーで設定された値(5分など)を超える場合、リクエストは無効と見なされます。

認証キーの切り替え

認証キーを切り替える必要がある場合、コールバックメッセージを受信するサーバーは、新旧両方のキーに基づいて一定期間認証をサポートする必要があります。これにより、コールバックサービスが影響を受けないようにします。この場合、サーバーは新旧両方のキーに基づいて認証を実装する必要があります。キーを切り替えるには、次の手順を実行することをお勧めします。

  1. 新しい認証キーを定義します。

  2. コールバックメッセージを受信するサーバーを更新して、新旧両方のキーに基づく認証をサポートします。

  3. IMSコンソール で、コールバック認証用に新しい認証キーを設定します。

  4. 一定期間後、コールバックメッセージを受信するサーバーから古いキーのサポートを削除します。