要求鎖定

為了減少篡改請求的機會,提供簡單的鎖定功能。

如果已設定attribute::RequestLock,則必須將鎖定值附加至要求,格式為 &xxxx,其中xxxx是四位數的十六進位值。 此十六進位值是使用套用至 修飾元 請求部分(在「?」之後) 會將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

本頁內容