Formato de filtro para directivas basadas en listas de direcciones URL

En este artículo se describe el formato de filtro usado para las directivas basadas en listas de direcciones URL de Microsoft Edge. Por ejemplo, URLBlocklist, URLAllowList y CertificateTransparencyEnforcementDisabledForUrls .

Formato de filtro

El formato de filtro es:

    [scheme://][.]host[:port][/path][@query]

Los campos del formato de filtro son:

Campo Descripción
esquema (opcional) Puede ser http://, https://, ftp://, edge://, etc.
host (obligatorio) Debe ser un nombre de host válido y puede usar un carácter comodín ("*"). Para deshabilitar la coincidencia de subdominios, incluya un punto opcional (.) antes del host. Se puede especificar un nombre de host de literal de dirección IP único, pero no se admite el carácter comodín para un nombre de host de literal de dirección IP.
puerto (opcional) Los valores válidos van de 1 a 65535.
ruta (opcional) Puedes usar cualquier cadena de la ruta.
consulta (opcional) La consulta es un valor clave o tokens solo de clave separados por un signo ampersand ("&"). Separa los tokens de valor clave con un signo igual ("="). Para indicar una coincidencia de prefijo, puede usar un asterisco ("*") al final de la consulta.

Comparación del formato de filtro con el formato de dirección URL

El formato de filtro se asemeja al formato de la dirección URL, excepto en lo siguiente:

  • Si incluye "user:pass" en el formato, se omitirá. Por ejemplo http://user:pass@ftp.contoso.com/pub/example.iso.
  • Si incluyes un identificador de fragmento ("#"), el propio identificador y todo lo que le sigue se ignora.
  • Puede usar un carácter comodín ("*") como host y puede prefijarlo con un punto (.).
  • Puede usar una barra diagonal ("/") o un punto (.) como sufijo para el host. En este caso, se ignora el sufijo.

Criterios de selección de filtros

El filtro seleccionado para una dirección URL es la coincidencia más específica encontrada después de procesar las siguientes reglas de selección de filtro:

  1. En primer lugar, se seleccionan los filtros con la mayor coincidencia de host.

  2. De los filtros seleccionados, se descarta cualquier filtro con un esquema o puerto que no coincida.

  3. Desde los filtros restantes, se selecciona el filtro con coincidencia de ruta más larga.

  4. A partir de los filtros restantes, se selecciona el filtro con los tokens de consulta más largos. En este paso, el filtro allowlist tiene prioridad sobre el filtro de lista de bloques si ambos filtros tienen la misma longitud de ruta de acceso y el mismo número de tokens de consulta .

  5. Si no queda ningún filtro válido, el subdominio que está más a la izquierda se quita del host y el proceso de selección comienza de nuevo en el paso 1. El host de asterisco especial ("*") es el último buscado y coincide con todos los hosts.

  6. Si un filtro está disponible, bloquea o permite la solicitud de dirección URL.

    Nota

    El comportamiento predeterminado es permitir la solicitud de dirección URL si no coincide con ningún filtro.

Ejemplo de criterios de selección de filtros

En este ejemplo, al buscar una coincidencia en "https://sub.contoso.com/docs" la selección de filtro:

  1. Busque un filtro para sub.contoso.com. Si encuentra un filtro, la búsqueda pasa al paso 2. Si no se encuentra un filtro, vuelve a intentarlo con contoso.com, comy, por último, " ".
  2. Desde los filtros seleccionados, se quitan los que no tengan "http" en el esquema.
  3. De los filtros restantes, se quitan los que tengan un número de puerto exacto que no sea "80".
  4. De los filtros restantes, se quitan los que no tengan "/docs" como prefijo de la ruta.
  5. De los filtros restantes, se selecciona y aplica el filtro con el prefijo de ruta más larga. Si no se encuentra ningún filtro, el proceso de selección vuelve a iniciarse en el paso 1. El proceso se repite con el siguiente subdominio.

Más información de filtro

Si un filtro tiene un punto (".") como prefijo del host, solo se filtran las coincidencias exactas de host. Por ejemplo:

  • contoso.com (sin punto) coincide con contoso.com, www.contoso.comy sub.www.contoso.com
  • .www.contoso.com (con un prefijo de punto) solo coincide con www.contoso.com

Puedes usar un esquema estándar o personalizado. Entre los esquemas de estándares admitidos, se encuentran los siguientes:

  • about, blob, content, edge, cid, data, file, filesystem, ftp, gopher, http, https, javascript, mailto, ws y wss.

Cualquier otro esquema se trata como un esquema personalizado, pero solo se permiten los patrones schema:* y schema://*. Por ejemplo:

  • "custom:*" o "custom://*" coinciden con "custom:app"
  • "custom:app" o "custom://app" no son válidos

esquema y host no distinguen entre mayúsculas y minúsculas. Por ejemplo:

  • http://contoso.com el filtro coincide con HTTP://contoso.com, http://contoso.COMy http://contoso.com

ruta y consulta distinguen entre mayúsculas y minúsculas. Por ejemplo:

  • http://contoso.com/path?query=A filter no coincide http://contoso.com/Path?query=A con o http://contoso.com/path?Query=A. Coincide con http://contoso.COM/path?query=A.

Licencia de contenido

Nota

Algunas partes de esta página son modificaciones que se basan en trabajo creado y compartido por Chromium.org y que se usan de acuerdo con los términos descritos en la Licencia internacional de Creative Commons Atribution 4.0. La página original de Chromium se puede encontrar aquí.

Licencia de Creative Commons
Este trabajo dispone de licencia conforme a Licencia internacional de Creative Commons Attribution 4.0.

Ver también