リクエストロック request-locking

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

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

IMPORTANT
この機能を有効にする場合は、次のような使用制限があることに注意してください。
- 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;
}

関連項目 section-a6d45406c0354669ac581793e4fa8436

HTTP エンコード 要求の不明化attribute::RequestLock

recommendation-more-help
a26166cd-f2f4-45ce-996d-96a0f0d6cf49