Este guia explica a sintaxe UrlList
do Secure Web Proxy.
UrlList
permite criar várias entradas de correspondência que podem ser reutilizadas em várias
regras.
A sintaxe UrlList
oferece suporte à correspondência de domínios completos ou por sufixo, além de URLs com
caminho completo sem parâmetros ou um caminho de prefixo.
Caracteres curinga compatíveis
UrlList
oferece suporte ao caractere curinga asterisco *
, que pode ser usado como um
prefixo para corresponder a subdomínios ou caminhos parciais.
Quando você fornece domínios parciais, UrlList
corresponde apenas a tokens de subdomínio
completos. Se um separador de caminho não for fornecido, UrlList
vai corresponder a qualquer caminho. Por
exemplo, se você fornecer example.com
, UrlList
corresponderá a example.com/*
,
incluindo todos os caminhos no domínio.
Como UrlList
interpreta entradas
O Secure Web Proxy usa os padrões UrlList
que você fornece para corresponder a URLs e determinar se o URL é permitido ou não.
UrlList
interpreta as entradas da seguinte maneira:
As entradas que contêm um ponto (
.
) e uma barra (/
) precisam ser URLs bem formados. É possível incluir subdomínios e caracteres curinga. O token à esquerda do primeiro caractere/
é interpretado como o domínio de nível superior, como.com
emgoogle.com/news
.As entradas que contêm um ponto (
.
) e que não contêm uma barra (/
) são interpretadas como domínios. Você pode incluir o caractere curinga de subdomínio. O token à direita, neste caso, é interpretado como o domínio de nível superior, como.xyz
emabc.xyz
.Todas as outras entradas são inválidas.
Quando um padrão UrlList
é correspondido a valores que contêm um
barra (/
), como em request.url()
, os padrões são interpretados conforme explicado
anteriormente. No entanto, quando um padrão UrlList
é comparado com valores sem um
/
, como em host()
, apenas a parte de domínio do padrão é comparada.
Exemplos de correspondência de padrões
A tabela a seguir mostra exemplos de padrões, exemplos de URLs que correspondem a cada padrão e exemplos de URLs que não correspondem a cada padrão.
Padrão | Corresponde a | Não corresponde |
---|---|---|
*example.com |
example.com/ server.example.com/ sample.server.example.com/ example.com/path example.com/path?q=query example.com/path/subpath sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com |
*.example.com |
server.example.com/ sample.server.example.com/ sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ example.com/path example.com/path/subpath |
example.com |
example.com/ example.com/path example.com/path/subpath |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com server.example.com/ sample.server.example.com/ sample.server.example.com/path/ |
*server.example.com |
server.example.com/ sample.server.example.com/path sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ example.com/path example.com/path/subpath |
*example.com/ |
example.com/ server.example.com/ sample.server.example.com/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/path/ example.com/path/subpath sample.server.example.com/path/ |
*example.com/path* |
example.com/path example.com/path/subpath sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ server.example.com/ sample.server.com/ |
*example.com/path/* |
example.com/path/subpath sample.server.example.com/path/ |
myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ server.example.com/ sample.server.example.com/ example.com/path |
*example.com/path/ |
sample.server.example.com/path/ | myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com example.com/ sample.example.com/ sample.server.example.com/ example.com/path example.com/path/subpath |
example.com/ |
example.com/ | myexample.com/ example.com.bad.com/ us13.altostrat.com/go/example.com/path www.google.com/search?q=example.com server.example.com/ sample.server.example.com/ example.com/path example.com/path/subpath sample.server.example.com/path/ |