Solicitar bloqueo request-locking

Para reducir las oportunidades de manipulación de solicitudes, se proporciona una facilidad de bloqueo simple.

Si se establece attribute::RequestLock, se debe anexar un valor de bloqueo a la solicitud en forma de &xxxx, siendo xxxx un valor hexadecimal de cuatro dígitos. Este valor hexadecimal se genera utilizando un algoritmo hash simple aplicado a modificadores parte de la solicitud (después de "?" que separa la ruta URL de la modificadores). Esto debe hacerse después de que la solicitud esté completamente codificada en http, pero antes de que (opcionalmente) se confunda. Después de eliminar la ofuscación de la solicitud, el servidor utiliza el mismo algoritmo hash en la cadena del modificador (excluyendo los últimos 5 caracteres, que contienen el valor de bloqueo). Si la clave generada no coincide con el bloqueo, se rechaza la solicitud.

IMPORTANT
Si habilita esta función, tenga en cuenta que su uso tiene ciertas limitaciones, entre las que se incluyen las siguientes:
- Es posible que la interfaz de usuario de Dynamic Media no muestre los detalles correctos para Última publicación field. Sin embargo, este efecto no afecta a la publicación.
- Actualmente, la transmisión de vídeo HLS no funciona cuando  Ofuscación de solicitud  y Solicitar bloqueo están activadas.
: Actualmente, algunos visores de Dynamic Media no funcionan cuando Ofuscación de solicitud y Solicitar bloqueo están activadas.

Código de ejemplo de C++ para generar el valor de bloqueo de la solicitud:

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

Véase también section-a6d45406c0354669ac581793e4fa8436

Codificación HTTP, Confusión de solicitud, attribute::RequestLock

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