Guía de lista blanca
Perspectiva general
Listas blancas de recursos es un modelo de seguridad que controla el acceso a recursos de red externos, tales como http://google.com
. Directiva de seguridad predeterminada de Apache Cordova permite el acceso a cualquier recurso en cualquier sitio en Internet. Antes de su aplicación a la producción, debe revisar su lista blanca y declarar el acceso a la red específica dominios y subdominios.
Especificación
Dominio whitelisting sienta las bases para la especificación W3C Widget acceso. En la especificación de acceso Widget, el <access>
elemento se utiliza para declarar el acceso a recursos de red específicos. Apache Cordova se extiende este concepto para permitir las listas blancas de recursos (URL) de la red individuales. En el futuro, Apache Cordova se resumen las implementaciones de las listas blancas de plataforma. Sin embargo, por ahora cada plataforma implementa sus propias listas blancas recurso o dominio. Las diferencias entre las implementaciones de la plataforma se describen más adelante en este documento.
El formato general para las entradas de la lista blanca sigue la especificación "coinciden con patrón" para Google Chrome Apps empaquetados. Los recursos son especificados por URL, pero un asterisco (*) personaje puede utilizarse como un "comodín" en varios lugares para indicar que "cualquier valor puede ir aquí". Abajo se muestran ejemplos concretos.
Sintaxis
Acceso a todos los recursos en google.com:
http://google.com/*
Acceso a todos los recursos en el seguro google.com ( https://
):
https://Google.com/ *
Acceso al subdominio específico maps.google.com:
http://maps.google.com/*
Acceso a todos los subdominios en google.com (por ejemplo, mail.google.com y docs.google.com):
http://*.google.com/*
Acceso a todos los recursos en www.google.com en la ruta "/ móvil":
http://www.google.com/mobile/*
Acceso a google.com en cualquier protocolo (por ejemplo, HTTP, HTTPS, FTP, etc.):
*://google.com/*
Acceso a los recursos en Internet (por ejemplo, google.com y developer.mozilla.org):
*
Android
Detalles
Las reglas de las listas blancas se encuentran en res/xml/config.xml
y declarado con el elemento<access origin="..." />
.
Android apoya plenamente la sintaxis de las listas blancas.
Sintaxis
Acceso a google.com:
<access origin="http://google.com/*" />
BlackBerry 10
Detalles
Las reglas de las listas blancas se encuentran en www/config.xml
y declarado con el elemento<access origin="..." />
.
BlackBerry 10 maneja comodines diferentemente que otras plataformas de dos maneras:
1) Contenido utilizando XMLHttpRequest debe declararse explícitamente. origen = "*" no será respetado por este caso de uso. Alternativamente, puede deshabilitarse toda seguridad web usando una preferencia.
2) subdominios = "true" puede usarse en lugar de "* .dominio"
Sintaxis
Acceso a google.com:
<access origin="http://google.com" subdomains="false" />
Acceso a maps.google.com:
<access origin="http://maps.google.com" subdomains="false" />
Acceso a todos los subdominios de google.com:
<access origin="http://google.com" subdomains="true" />
Acceso a todos los dominios, incluyendo file://
Protocolo:
<access origin="*" subdomains="true" />
Deshabilitar la seguridad web:
<preference name="websecurity" value="disable" />
iOS
Detalles
Las reglas de las listas blancas se encuentran en AppName/config.xml
y declarado con el elemento<access origin="..." />
.
iOS apoya plenamente la sintaxis de las listas blancas.
Cambiado en 3.1.0:
Antes de la versión 3.1.0, Cordova-iOS incluyó algunas extensiones no estándares para el dominio whilelisting esquema apoyado por otras plataformas de Córdoba. A partir de 3.1.0, la lista blanca de iOS ahora se ajusta a la sintaxis de lista blanca de recursos descrita en la parte superior de este documento. Si actualiza desde pre-3.1.0 y usaban estas extensiones, tienes que cambiar tu config.xml
archivo para continuar whitelisting el mismo conjunto de recursos como antes.
Específicamente, estos patrones necesitan ser actualizados:
"
apache.org
" (sin protocolo): anteriormente esto coincidiría conhttp
,https
,ftp
, yftps
los protocolos. Cambiar a "*://apache.org/*
" para incluir todos los protocolos, o incluir una línea para cada protocolo que necesitas ayuda."
http://apache.*
" (wildcard en el final del dominio): anteriormente esto coincidiría con todos top-level-dominios, incluyendo toda posibles TLDs de dos letras (pero no útiles dominios como. co.uk). Incluir una línea para cada TLD que usted realmente controla y necesita a la lista blanca."
h*t*://ap*he.o*g
" (comodines para letras faltantes al azar): estos ya no son soportados; cambio para incluir una línea para cada dominio y protocolo que en realidad necesita a la lista blanca.
Sintaxis
Acceso a google.com:
<access origin="http://google.com/*" />
Windows Phone (7 y 8)
Las reglas de las listas blancas se encuentran en config.xml
y declarado con el elemento<access origin="..." />
.
Sintaxis
Acceso a google.com:
<access origin="http://google.com" />
Tizen
Detalles
Del directorio raíz de la aplicación config.xml
archivo especifica reglas whitelisting dominio, usando el <access origin="..." />
elemento. Para una referencia completa, vea la documentación de Tizen acceder a recursos externos red.
Sintaxis
Acceso a google.com:
<access origin="http://google.com" subdomains="false" />
Acceso a los seguros google.com ( https://
):
<access origin="https://google.com" subdomains="false" />
Acceso a todos los subdominios de google.com:
<access origin="http://google.com" subdomains="true" />
Acceso a todos los dominios, incluyendo file://
Protocolo:
<access origin="*" subdomains="true" />