Cordova - Whitelist

Este plugin nos permite implementar uma política de lista de permissões para navegação de aplicativos. Quando criamos um novo projeto Cordova, owhitelistplugin é instalado e implementado por padrão. Você pode abrir oconfig.xml arquivo para ver allow-intent configurações padrão fornecidas por Cordova.

Lista de permissões de navegação

No exemplo simples abaixo, estamos permitindo links para algum URL externo. Este código é colocado emconfig.xml. Navegação parafile:// URLs são permitidos por padrão.

<allow-navigation href = "http://example.com/*" />

O sinal de asterisco, *, é usado para permitir a navegação para vários valores. No exemplo acima, estamos permitindo a navegação para todos os subdomínios doexample.com. O mesmo pode ser aplicado ao protocolo ou prefixo do host.

<allow-navigation href = "*://*.example.com/*" />

Lista branca de intenções

Existe também o allow-intentelemento que é usado para especificar quais URLs têm permissão para abrir o sistema. Você pode ver noconfig.xml que Cordova já permitiu a maioria dos links necessários para nós.

Lista de permissões de solicitação de rede

Quando você olha para dentro config.xml arquivo, existe <access origin="*" />elemento. Este elemento permite todas as solicitações de rede para nosso aplicativo por meio de ganchos Cordova. Se quiser permitir apenas solicitações específicas, você pode excluí-lo do config.xml e defini-lo você mesmo.

O mesmo princípio é usado como nos exemplos anteriores.

<access origin = "http://example.com" />

Isso permitirá todas as solicitações de rede de http://example.com.

Política de Segurança de Conteúdo

Você pode ver a política de segurança atual do seu aplicativo dentro do head elemento em index.html.

<meta http-equiv = "Content-Security-Policy" content = "default-src 
   'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 
   'self' 'unsafe-inline'; media-src *">

Esta é a configuração padrão. Se você quiser permitir tudo da mesma origem eexample.com, então você pode usar -

<meta http-equiv = "Content-Security-Policy" content = "default-src 'self' foo.com">

Você também pode permitir tudo, mas restringir CSS e JavaScript à mesma origem.

<meta http-equiv = "Content-Security-Policy" content = "default-src *; 
   style-src 'self' 'unsafe-inline'; script-src 'self' 
   'unsafe-inline' 'unsafe-eval'">

Como este é um tutorial para iniciantes, recomendamos as opções padrão do Cordova. Depois de se familiarizar com o Cordova, você pode experimentar alguns valores diferentes.