Formato de patrones de URLs de políticas de Enterprise
Muchas políticas requieren un patrón de URL para especificar a qué URLs se aplican. La especificación de estos patrones debe seguir las reglas que se indican en este artículo.
Para ser válidas, las especificaciones de patrones deben ajustarse a uno de estos formatos (sin incluir las comillas):
- “*”
- Este patrón coincide con cualquier URL, con cualquier esquema, puerto y ruta.
- “scheme://domains:port/path”
- Los esquemas admitidos son "http" y "https".
- El esquema se puede excluir junto con el elemento separador "://" correspondiente para que coincida con cualquier esquema. Como alternativa, se puede usar un comodín "*" para conseguir el mismo efecto.
- El dominio va seguido por un dominio de nivel superior y puede ir precedido por uno o varios subdominios. Como alternativa, se puede usar un host (por ejemplo, un localhost) en su lugar.
- Un dominio puede escribirse con un comodín "[*.]" delante para que coincida con el dominio en cuestión o con cualquiera de sus subdominios. El dominio puede ser un subdominio de cualquier nivel. Ten en cuenta que el comodín "[*.]" no va seguido por un punto y debe añadirse directamente delante del dominio o del subdominio.
- Si el dominio no se escribe con el comodín delante, solo coincidirá con ese dominio exacto, no con los subdominios.
- El puerto es un número entre 0 y 65535. Se puede excluir junto con el elemento separador ":" correspondiente o sustituirse por un comodín "*" para que coincida con cualquier puerto.
- De forma similar, la ruta se puede excluir junto con el elemento separador "/" correspondiente o sustituirse por un comodín "*" para que coincida con cualquier ruta.
- No se pueden usar comodines para obtener una coincidencia parcial con un esquema, un dominio, un host, un puerto o una ruta.
- Se pueden usar varios comodines en el mismo patrón (por ejemplo, *://google.com:*/*).
- “scheme://a.b.c.d:port/path”
- En lugar de un dominio, se puede usar una dirección IPv4 con el formato "a.b.c.d". Aunque las reglas de los esquemas, los puertos y las rutas son iguales que en las URLs de dominios, con las direcciones IP no se pueden usar comodines.
- “scheme://[a:b:c:d:e:f:g:h]:port/path”
- También se puede usar una dirección IPv6 con el formato "[a:b:c:d:e:f:g:h]". Los corchetes son obligatorios. Al igual que en las direcciones IPv4, no se admiten comodines. Las reglas de los esquemas, puertos y rutas son iguales que en las URLs de dominios y en las direcciones IPv4.
- “file://path”
- Si se utiliza el esquema "file", la ruta tendrá que empezar por una barra inclinada "/". Por lo tanto, "file://dir/myfile.html" no es un patrón válido. En su lugar, se debería usar "file:///dir/myfile.html" (con tres barras inclinadas detrás de "file:"). El único formato de comodín válido para una URL de archivo es "file:///*", que coincide con cualquier URL de archivo válida.
- La parte del dominio de una URL de archivo debe dejarse sin especificar y coincidirá con cualquier dominio (o localhost). Por ejemplo, "file:///file.html" coincidirá con "file://localhost/file.html" y con "file://mysite.com/file.html".
- No se pueden usar puertos.
Patrones no válidos
- [*.].mysite.com no es válido (hay un punto antes de "mysite").
- file://mysite.com/somefile.html no es válido, ya que se ha especificado el dominio (esto no se admite en URLs de archivo).
- file://somefile.html no es válido (solo tiene dos barras inclinadas en lugar de tres).
- file://somefile.*. (La única URL de archivo válida que contiene un comodín es file:///*).
- [*.]127.0.0.1 no es válido (no es posible usar subdominios ni comodines de subdominios con direcciones IP).
Ejemplos de patrones
- “*://mysite.com:*/path” dará como coincidencias http://mysite.com:80/path y https://mysite.com:443/path.
- [*.]mysite.com coincidirá con mysite.com y con subdomain.mysite.com. También coincidirá con cualquier esquema, puerto y ruta.
- [*.]oogle.com no coincidirá con google.com. Sin embargo, sí coincidirá con subdomain.oogle.com.
- file:///foo/bar.html coincidirá con file://localhost/foo/bar.html y con file://mysite.com/foo/bar.html.
- file:///* es válido y coincidirá con cualquier URL que incluya file://.
- Con las direcciones IP se pueden usar esquemas, puertos y rutas; por ejemplo, https://[::1]:8080/myfile.html es un patrón válido.