Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2024-09-18 GMT+08:00

Validación de URL

Escenarios

Algunos sitios fraudulentos pueden robar enlaces de otros sitios para enriquecer su contenido sin ningún costo. El robo de enlaces perjudica los intereses de los sitios web originales y también es una tensión en sus servidores. OBS proporciona validación de URL para resolver este problema.

En HTTP, el campo Referer permite que los sitios web y los servidores web identifiquen desde dónde los visitan las personas. La validación de URL de OBS utiliza este campo Referer. La idea es que una vez que encuentres que una solicitud a tu recurso no se origina desde una fuente autorizada (por ejemplo, una URL), puedes bloquear o redirigir la solicitud a una página web específica. De esta manera, OBS evita el acceso no autorizado a los datos almacenados en los bucket.

Dicha autorización se controla mediante una lista blanca y una lista negra.

Reglas de configuración de referencia:

  • La longitud de una lista blanca o negra no puede exceder los caracteres de 1,024.
  • Formato de referencia:
    • Puede introducir varios referentes, cada uno en una línea.
    • El parámetro referer admite asteriscos (*) y signos de interrogación (?). Un asterisco funciona como un comodín que puede reemplazar cero o varios caracteres, y un signo de interrogación (?) puede reemplazar a un solo carácter.
    • Si el campo de encabezado de referencia contiene http o https durante la descarga, el referenciador debe contener http o https.
  • Si hay sitios web configurados en el referidor de la lista negra, pero no sitios web en el referidor de la lista blanca, todos los sitios web, excepto los de la lista negra, pueden acceder al bucket de destino.
  • Si hay sitios web configurados en el referidor de la lista blanca, solo los sitios web en la lista blanca pero no en la lista negra pueden acceder al bucket de destino, independientemente de si hay sitios web configurados en el referidor de la lista negra o no.

Si un sitio web está configurado tanto en la lista blanca como en la lista negra de referencias, el acceso desde este sitio web estará prohibido. Por ejemplo, si https://www.example.com está configurado tanto en Whitelisted Referers como en Blacklisted Referers, se bloquearán las solicitudes de acceso de https://www.example.com.

  • Si Whitelisted Referers y Blacklisted Referers se dejan en blanco, todos los sitios web pueden acceder a los datos del depósito de destino de forma predeterminada.
  • Antes de determinar si un usuario tiene los cuatro tipos de permisos (Lectura, Escritura, Vista de ACL y Edición de ACL) para un bucket u objetos en el bucket, compruebe si este usuario cumple con los principios de validación de URL del campo Referer.

Métodos de configuración de listas blancas y negras:

  • Configuración de la lista blanca

    Al establecer una lista blanca, puede permitir solicitudes de los sitios web en la lista blanca, pero denegar las de los sitios web que no están en la lista blanca.

    Para las solicitudes que se inicializan desde el cuadro de dirección de un navegador, puede agregar el campo ${null} a Referer of Condition para especificar si se permiten las solicitudes HTTP con un referer en blanco.

    Para configurar una lista blanca, consulte la siguiente política:

    "Statement":[ 
        {"Sid": "1", 
         "Effect": "Allow", 
         "Principal": {"ID":["*"]}, 
         "Action": "*", 
         "Resource":["bucket/*"], 
        }, 
        {"Sid":"2", 
         "Effect":"Deny", 
         "Principal":{"ID":["*"]}, 
         "Action":["*"], 
         "Resource":["bucket/*"],
         "Condition":{ 
             "StringNotEquals": 
             {"Referer":["http://www.example01.com","${null}"]} 
          } 
        } 
    ]

    Si establece una lista blanca de esta manera, solo las solicitudes cuyo referer está establecido en www.example01.com o dejado en blanco pueden trabajar en los recursos de los bucket.

  • Configuración de la lista negra

    Para configurar una lista negra, consulte la siguiente política:

    "Statement":[ 
        {"Sid":"1", 
         "Effect":"Deny", 
         "Principal":{"ID":["*"]}, 
         "Action":["*"], 
         "Resource":["bucket/*"],                              
         "Condition":{ 
             "StringEquals": 
                {"Referer":["http://www.example01.com","http://www.example02.com"]} 
          } 
        } 
    ]

    Si establece una lista negra de esta manera, las solicitudes cuyo referer está establecido en www.example01.com o www.example02.com no pueden trabajar en recursos en los bucket.

Cómo usarlo

Puede usar OBS Console o las API para configurar la validación de URL.