Richiedi blocco request-locking

Per ridurre le opportunità di manomissione delle richieste, è disponibile una semplice funzione di blocco.

Se è impostato l'attributo::RequestLock, è necessario aggiungere un valore di blocco alla richiesta, sotto forma di &xxxx, dove xxxx è un valore esadecimale a quattro cifre. Questo valore esadecimale viene generato utilizzando un semplice algoritmo di hashing applicato al modificatori parte della richiesta (dopo "?" che separa il percorso URL dal modificatori). Questa operazione deve essere eseguita dopo che la richiesta è completamente codificata http, ma prima che sia (facoltativamente) offuscata. Dopo aver deoffuscato la richiesta, il server utilizza lo stesso algoritmo di hashing nella stringa del modificatore (esclusi gli ultimi 5 caratteri, che contengono il valore di blocco). Se la chiave generata non corrisponde al blocco, la richiesta viene rifiutata.

IMPORTANT
Se abiliti questa funzione, tieni presente che l’utilizzo di essa è soggetto a determinate limitazioni, tra cui:
- L'interfaccia utente di Dynamic Medie potrebbe non mostrare i dettagli corretti per Ultima pubblicazione campo. Tuttavia, questo effetto non influisce sulla pubblicazione.
- Attualmente, lo streaming video HLS non funziona quando  Richiedi offuscamento  e Richiedi blocco sono attivati.
- Attualmente, alcuni visualizzatori Dynamic Medie non funzionano quando Richiedi offuscamento e Richiedi blocco sono attivati.

Codice di esempio C++ per generare il valore di blocco della richiesta:

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;
}

Consultate anche section-a6d45406c0354669ac581793e4fa8436

Codifica HTTP, Richiedi offuscamento, attribute::BloccoRichiesta

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