Solicitar bloqueio

Para reduzir a possibilidade de adulteração de pedidos, é disponibilizada uma facilidade de bloqueio simples.

Se o atributo::RequestLock estiver definido, um valor de bloqueio deve ser anexado à solicitação, na forma de &xxxx, com xxxx sendo um valor hexadecimal de quatro dígitos. Esse valor hexadecimal é gerado usando um algoritmo hex simples aplicado à parte modifiers da solicitação (após '?' que separa o caminho do URL dos modificadores). Isso deve ser feito depois que a solicitação for totalmente codificada em http, mas antes que seja (opcionalmente) ofuscada. Depois de desofuscar a solicitação, o servidor usará o mesmo algoritmo de hash na string do modificador (excluindo os últimos 5 caracteres, que contêm o valor de bloqueio). Se a chave gerada não corresponder ao bloqueio, a solicitação será rejeitada.

IMPORTANTE

Se ativar este recurso, esteja ciente de que existem certas limitações ao seu uso que incluem o seguinte:
- A interface do usuário do Dynamic Media pode não mostrar os detalhes corretos para o campo Last Published. No entanto, esse efeito não afeta a publicação.
- Atualmente, o streaming de vídeo HLS não funciona quando Request obfuscation e Request locking são ativados.
- Atualmente, alguns visualizadores do Dynamic Media não funcionam quando Request obfuscation e Request locking são ativados.

Código de amostra C++ para gerar o valor de bloqueio de solicitação:

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

Consulte também

Codificação HTTP, Ofuscação de solicitação, atributo::RequestLock

Nesta página