Cordova - Biała lista

Ta wtyczka pozwala nam wdrożyć politykę białej listy dla nawigacji aplikacji. Kiedy tworzymy nowy projekt Cordova, plikwhitelistwtyczka jest instalowana i implementowana domyślnie. Możesz otworzyć plikconfig.xml plik do obejrzenia allow-intent domyślne ustawienia dostarczone przez Cordova.

Biała lista nawigacji

W prostym przykładzie poniżej zezwalamy na linki do zewnętrznego adresu URL. Ten kod jest umieszczony wconfig.xml. Nawigacja dofile:// Adresy URL są domyślnie dozwolone.

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

Znak gwiazdki, *, służy do nawigacji do wielu wartości. W powyższym przykładzie zezwalamy na nawigację do wszystkich subdomen domenyexample.com. To samo można zastosować do protokołu lub prefiksu hosta.

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

Biała lista intencji

Jest też allow-intentelement służący do określenia, które adresy URL mogą otwierać system. Możesz zobaczyć wconfig.xml że Cordova już udostępniła nam większość potrzebnych linków.

Biała lista żądań sieciowych

Kiedy zajrzysz do środka config.xml plik, jest <access origin="*" />element. Ten element zezwala na wszystkie żądania sieciowe wysyłane do naszej aplikacji za pośrednictwem hooków Cordova. Jeśli chcesz zezwolić tylko na określone żądania, możesz usunąć je z pliku config.xml i ustawić samodzielnie.

Zastosowano tę samą zasadę, co w poprzednich przykładach.

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

Pozwoli to na wszystkie żądania sieciowe z http://example.com.

Polityka bezpieczeństwa treści

Możesz zobaczyć aktualną politykę bezpieczeństwa dla swojej aplikacji w head element w 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 *">

To jest konfiguracja domyślna. Jeśli chcesz zezwolić na wszystko z tego samego źródła iexample.com, możesz użyć -

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

Możesz także zezwolić na wszystko, ale ogranicz CSS i JavaScript do tego samego źródła.

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

Ponieważ jest to samouczek dla początkujących, zalecamy domyślne opcje Cordova. Po zapoznaniu się z Cordovą możesz wypróbować różne wartości.