İçerik Güvenliği Politikası Rehberi

Bu dokümanda, web sitesinin nasıl yapılandırılacağına ilişkin öneriler sunulmaktadır Maps JavaScript API için İçerik Güvenliği Politikası (İGP). Şu tarihten beri: son kullanıcılar, geliştiriciler ve tasarımcılar tarafından kullanılan çok çeşitli tarayıcı türleri bu örneği referans olarak kullanmanız önerilir. Diğer bir fikre sahip olana kadar CSP ihlalleri gerçekleşir.

İçerik Güvenliği Politikası hakkında daha fazla bilgi edinin.

Katı CSP

Sıkı CSP kullanmanızı öneririz. güvenlik saldırısı olasılığını azaltmak için CSP'yi izin verilenler listesine ekleme olanağı sunar. Maps JavaScript API, tek seferlik olmayan katı CSP kullanımını destekler. Web siteleri hem script hem de style öğelerini bir tek seferlik rastgele sayı değeriyle doldurmalıdır. Maps JavaScript API dahili olarak bu tür ilk öğeyi bulacaktır: ve tek seferlik rastgele değerini API tarafından eklenen stil veya komut dosyası öğelerine uygular komut dosyasını kullanın.

Örnek

Aşağıdaki örnekte örnek bir CSP ile birlikte yerleşik:

Örnek İçerik Güvenliği Politikası

script-src 'nonce-{script value}' 'strict-dynamic' https: 'unsafe-eval' blob:;
img-src 'self' https://*.googleapis.com https://*.gstatic.com *.google.com *.googleusercontent.com data:;
frame-src *.google.com;
connect-src 'self' https://*.googleapis.com *.google.com https://*.gstatic.com data: blob:;
font-src https://fonts.gstatic.com;
style-src 'nonce-{style value}' https://fonts.googleapis.com;
worker-src blob:;

Örnek HTML sayfası

<!DOCTYPE html>
<html>
  <head>
    <link rel="stylesheet" href="style.css" nonce="{style value}">
    <style nonce="{style value}">...</style>
    ...
  </head>
  <body>
    <div id="map"></div>
    <script src="https://maps.googleapis.com/maps/api/js?key=&callback=initMap" async nonce="{script value}"></script>
    <script nonce="{script value}"> function initMap() { ... } </script>
  </body>
</html>

CSP'yi izin verilenler listesi

İzin verilenler listesindeki CSP'leri ayarladıysanız lütfen Google Haritalar Alan Adları listesine göz atın. Bu dokümana ve Maps JavaScript API'ye bakmanızı öneririz. sürüm notlarını takip edebilirsiniz. ve gerekirse yeni hizmet alan adlarını izin verilenler listesine ekleyin.

Maps JavaScript API'yi eski bir dosyadan yükleyen web siteleri Google API'leri alan adı (ör. maps.google.com) veya bölgeye özel bir alan adı (örneğin maps.google.fr), Aşağıdaki örnekte gösterildiği gibi CSP script-src ayarı:

script-src 'self' 'unsafe-inline' 'unsafe-eval' https://*.googleapis.com https://*.gstatic.com *.google.com https://*.ggpht.com *.googleusercontent.com blob:;
img-src 'self' https://*.googleapis.com https://*.gstatic.com *.google.com  *.googleusercontent.com data:;
frame-src *.google.com;
connect-src 'self' https://*.googleapis.com *.google.com https://*.gstatic.com  data: blob:;
font-src https://fonts.gstatic.com;
style-src 'self' 'unsafe-inline' https://fonts.googleapis.com;
worker-src blob:;