এই ডকুমেন্টটি ম্যাপ জাভাস্ক্রিপ্ট API-এর জন্য ওয়েবসাইট কনটেন্ট সিকিউরিটি পলিসি (CSP) কনফিগার করার জন্য সুপারিশ প্রদান করে। যেহেতু বিভিন্ন ধরণের ব্রাউজার এবং সংস্করণগুলি শেষ ব্যবহারকারীদের দ্বারা ব্যবহার করা হয়, তাই বিকাশকারীদের এই উদাহরণটিকে একটি রেফারেন্স হিসাবে ব্যবহার করতে উত্সাহিত করা হয়, যতক্ষণ না আর কোনও CSP লঙ্ঘন না হয় ততক্ষণ সূক্ষ্ম-টিউনিং।
বিষয়বস্তু নিরাপত্তা নীতি সম্পর্কে আরও জানুন ।
কঠোর সিএসপি
আমরা নিরাপত্তা আক্রমণের সম্ভাবনা কমাতে অনুমোদিত সিএসপি-র উপরে কঠোর CSP ব্যবহার করার পরামর্শ দিই। মানচিত্র জাভাস্ক্রিপ্ট API ননস-ভিত্তিক কঠোর CSP ব্যবহার সমর্থন করে। ওয়েবসাইটগুলিকে অবশ্যই script
এবং style
উভয় উপাদানই একটি অপ্রত্যাশিত মান সহ পূরণ করতে হবে৷ অভ্যন্তরীণভাবে, মানচিত্র জাভাস্ক্রিপ্ট এপিআই এই ধরনের প্রথম উপাদান খুঁজে পাবে এবং যথাক্রমে API স্ক্রিপ্ট দ্বারা ঢোকানো শৈলী বা স্ক্রিপ্ট উপাদানগুলিতে এর ননস মান প্রয়োগ করবে।
উদাহরণ
নিম্নলিখিত উদাহরণটি একটি নমুনা CSP দেখায়, একটি HTML পৃষ্ঠা সহ যেখানে এটি এমবেড করা হয়েছে:
নমুনা বিষয়বস্তু নিরাপত্তা নীতি
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:;
নমুনা HTML পৃষ্ঠা
<!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
আপনি অনুমোদিত তালিকার CSP সেট আপ করে থাকলে, অনুগ্রহ করে Google Maps ডোমেনের তালিকা দেখুন। আমরা আপ টু ডেট থাকার জন্য এই ডকুমেন্ট এবং ম্যাপ জাভাস্ক্রিপ্ট এপিআই রিলিজ নোটের সাথে পরামর্শ করার পরামর্শ দিই এবং প্রয়োজনে অনুমোদনের তালিকায় যেকোনো নতুন পরিষেবা ডোমেন অন্তর্ভুক্ত করুন।
যে ওয়েবসাইটগুলি একটি লিগ্যাসি Google API ডোমেন (উদাহরণস্বরূপ maps.google.com
) বা একটি অঞ্চল-নির্দিষ্ট ডোমেন (উদাহরণস্বরূপ maps.google.fr
) থেকে Maps JavaScript API লোড করে, তাদের অবশ্যই তাদের CSP 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:;