सामग्री सुरक्षा नीति गाइड

इस दस्तावेज़ में, Maps JavaScript API के लिए वेबसाइट की कॉन्टेंट सुरक्षा नीति (सीएसपी) को कॉन्फ़िगर करने का तरीका बताया गया है. आम तौर पर, उपयोगकर्ता कई तरह के ब्राउज़र और उनके वर्शन का इस्तेमाल करते हैं. इसलिए, डेवलपर को इस उदाहरण को रेफ़रंस के तौर पर इस्तेमाल करने का सुझाव दिया जाता है. साथ ही, उन्हें इस उदाहरण में बदलाव करते रहना चाहिए, ताकि सीएसपी के उल्लंघन की कोई और समस्या न हो.

कॉन्टेंट की सुरक्षा के बारे में नीति के बारे में ज़्यादा जानें.

सख्त सीएसपी

हमारा सुझाव है कि सुरक्षा से जुड़े हमलों की संभावना को कम करने के लिए, अनुमति वाली सूची वाले सीएसपी के बजाय स्ट्रिक्ट सीएसपी का इस्तेमाल करें. Maps JavaScript API, नॉन्स-आधारित सख्त सीएसपी का इस्तेमाल करता है. वेबसाइटों पर, script और style, दोनों एलिमेंट में नॉन्स वैल्यू होनी चाहिए. अंदरूनी तौर पर, Maps JavaScript API इस तरह का पहला एलिमेंट खोजेगा. साथ ही, इसकी नॉन्स वैल्यू को एपीआई स्क्रिप्ट से डाले गए स्टाइल या स्क्रिप्ट एलिमेंट पर लागू करेगा.

उदाहरण

नीचे दिए गए उदाहरण में, सीएसपी का सैंपल दिखाया गया है. साथ ही, उस एचटीएमएल पेज के बारे में बताया गया है जहां इसे एम्बेड किया गया है:

सैंपल कॉन्टेंट की सुरक्षा के बारे में नीति

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:;

एचटीएमएल पेज का सैंपल

<!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>

जिन लोगों या संगठनों को अनुमति मिली है उनकी सूची में सीएसपी

अगर आपने अनुमति वाली सूची में सीएसपी सेट अप किया है, तो कृपया Google Maps Domains की सूची देखें. हमारा सुझाव है कि अप-टू-डेट रहने के लिए, इस दस्तावेज़ और Maps JavaScript API के रिलीज़ नोट देखें. साथ ही, ज़रूरत पड़ने पर, सेवा के किसी नए डोमेन को अनुमति वाली सूची में शामिल करें.

ऐसी वेबसाइटें जो Maps JavaScript API को किसी लेगसी Google API डोमेन (उदाहरण के लिए maps.google.com) या किसी खास इलाके के हिसाब से बने डोमेन (जैसे कि maps.google.fr) से लोड करती हैं, उन्हें भी अपनी सीएसपी script-src सेटिंग में ये डोमेन नेम शामिल करने होंगे, जैसा कि इस उदाहरण में दिखाया गया है:

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:;