リクエストロック

要求の改ざんの機会を減らすために、簡単なロック設備を提供する。

attribute::RequestLockが設定されている場合、ロック値を&xxxxの形式でリクエストに追加する必要があります。xxxxは4桁の16進値です。 この16進数値は、リクエストの​modifiers​部分に適用される単純なハッシュアルゴリズムを使用して生成されます(「?」 URLパスを​修飾子​から区切ります。 これは、リクエストが完全にHTTPエンコードされた後、(オプションで)不明化される前におこなう必要があります。 要求の不明化を解除すると、サーバーは修飾子文字列に対して同じハッシュアルゴリズムを使用します(ロック値を含む最後の5文字を除く)。 生成されたキーがロックと一致しない場合、リクエストは拒否されます。

重要

この機能を有効にする場合、使用には次のような制限があります。
- Dynamic Mediaユーザーインターフェイスに「最終公開日」フィールドの正しい詳細が表示されない場合があります。 ただし、この影響はパブリッシュには影響しません。
— 現在、要求の難読化と要求のロック化が有効な場合、HLSビデオス​トリー ミングは機 能し ません。
— 現在、要求の難読化と要求のロックが有効な場合、一部のDynamic Media ビューア は機能しま ​せん。

リクエストロック値を生成するC++サンプルコード:

unsigned int lockValue(const char *str) 
{ 
    unsigned int sum = 0; 
    if (str == NULL) 
        return sum; 
    for (; *str; ++str) 
        sum = (sum*131 + *str) & 0xffff; 
    return sum; 
} 

関連項目

HTTPエンコーディングリクエストの難読化attribute::RequestLock

このページ