Formato do padrão do URL de políticas do Enterprise
Várias políticas requerem um padrão do URL para especificar a que URLs se aplicam. A especificação para estes padrões é descrita pelas seguintes regras.
As especificações de padrão válidas incluem um dos seguintes formatos (sem as aspas):
- “*”
- Este padrão corresponde a qualquer URL com qualquer esquema, porta e caminho.
- “scheme://domains:port/path”
- Os esquemas suportados são "http" e "https".
- O esquema pode ser excluído juntamente com o separador de esquema "://" para corresponder a qualquer esquema. Em alternativa, pode ser utilizado um caráter universal "*" para o mesmo efeito.
- O domínio é seguido de um domínio de nível superior e pode ser precedido de um ou mais subdomínios. Em alternativa, pode ser utilizado um anfitrião (tal como localhost).
- Um domínio pode ser precedido de um caráter universal "[*.]" para corresponder ao domínio ou a qualquer um dos respetivos subdomínios. O domínio em questão pode ser um subdomínio de qualquer nível. Tenha em atenção que o caráter universal "[*.]" não é seguido de um ponto e deve ser precedido diretamente do domínio/subdomínio.
- Um domínio sem o prefixo de caráter universal só corresponderá a esse domínio exato e não a qualquer subdomínio.
- A porta é um número no intervalo 0-65535. Pode ser excluído juntamente com o separador de porta ":" ou substituído por um caráter universal "*" para corresponder a qualquer porta.
- Da mesma forma, o caminho pode ser excluído juntamente com o separador de caminho "/" ou substituído por um caráter universal "*" para corresponder a qualquer caminho.
- Os carateres universais não podem ser utilizados para corresponder parcialmente a um esquema, um domínio, um anfitrião, uma porta ou um caminho.
- A utilização de vários carateres universais no mesmo padrão (por exemplo, *://google.com:*/*) é suportada.
- “scheme://a.b.c.d:port/path”
- Em vez de um domínio, pode ser utilizado um endereço IPv4 no formato "a.b.c.d". Embora as regras para esquemas, portas e caminhos permaneçam as mesmas em relação às regras para URLs de domínio, os carateres universais não podem de modo algum ser utilizados para endereços IP.
- “scheme://[a:b:c:d:e:f:g:h]:port/path”
- Um endereço IPv6 também pode ser utilizado no formato "[a:b:c:d:e:f:g:h]". Os parênteses são obrigatórios. Tal como com os endereços IPv4, os carateres universais não são suportados. As regras para esquemas, portas e caminhos permanecem as mesmas em relação às regras para URLs de domínio e endereços IPv4.
- “file://path”
- Se for utilizado o esquema "file", o caminho tem de começar com "/", pelo que "file://dir/myfile.html" é um padrão inválido. Em alternativa, tem de ser utilizado "file:///dir/myfile.html" (com três barras após "file:"). O único formato de caráter universal de URL de ficheiro válido é "file:///*", que corresponde a qualquer URL de ficheiro válido.
- A parte do domínio de um URL de ficheiro tem de estar vazia e irá corresponder a qualquer domínio (ou localhost). Por exemplo, "file:///file.html" irá corresponder a "file://localhost/file.html" e "file://mysite.com/file.html".
- As portas não podem ser utilizadas.
Padrões inválidos
- [*.].mysite.com é inválido (repare no ponto antes de "mysite").
- file://mysite.com/somefile.html é inválido, pois o domínio é não vazio (não é permitido em URLs de ficheiro).
- file://somefile.html é inválido (só tem duas barras em vez de três).
- Tal como file://somefile.* (o único URL de ficheiro válido que contém um caráter universal é file:///*).
- [*.]127.0.0.1 é inválido (a utilização de subdomínios ou carateres universais de subdomínios com endereços IP é inválida).
Padrões de exemplo
- "*://mysite.com:*/path" irá corresponder a http://mysite.com:80/path e https://mysite.com:443/path.
- [*.]mysite.com irá corresponder a mysite.com e subdomain.mysite.com. Também irá corresponder a qualquer esquema, porta e caminho.
- [*.]oogle.com não irá corresponder a google.com. No entanto, irá corresponder a subdomain.oogle.com.
- file:///foo/bar.html irá corresponder a file://localhost/foo/bar.html e file://mysite.com/foo/bar.html.
- file:///* é válido e irá corresponder a qualquer URL file://.
- Os esquemas, as portas e os caminhos podem ser utilizados com endereços IP. Por exemplo, https://[::1]:8080/myfile.html é válido.