ผลิตภัณฑ์ Google Maps Platform มีการรักษาความปลอดภัยจากการใช้งานที่ไม่ได้รับอนุญาตด้วยการจํากัดการเรียก API ไว้สําหรับการเรียกที่ใช้ข้อมูลเข้าสู่ระบบการตรวจสอบสิทธิ์ที่เหมาะสม ข้อมูลเข้าสู่ระบบเหล่านี้จะอยู่ในรูปแบบคีย์ API ซึ่งเป็นสตริงที่เป็นตัวอักษรและตัวเลขคละกันแบบไม่ซ้ําซึ่งเชื่อมโยงบัญชีสําหรับการเรียกเก็บเงินของ Google กับโปรเจ็กต์ของคุณ และใช้กับ API หรือ SDK ที่เจาะจง
คู่มือนี้แสดงวิธีสร้าง จํากัด และใช้คีย์ API สําหรับ Google Maps Platform
ก่อนเริ่มต้น
ก่อนที่จะเริ่มใช้ Maps JavaScript API คุณต้องมีโปรเจ็กต์ที่มีบัญชีสําหรับการเรียกเก็บเงินและเปิดใช้ Maps JavaScript API แล้ว ดูข้อมูลเพิ่มเติมได้ที่ตั้งค่าใน Cloud Console
สร้างคีย์ API
คีย์ API คือตัวระบุที่ไม่ซ้ําที่ตรวจสอบสิทธิ์คําขอที่เชื่อมโยงกับโปรเจ็กต์ของคุณเพื่อการใช้งานและการเรียกเก็บเงิน คุณต้องมีคีย์ API อย่างน้อย 1 รายการที่เชื่อมโยงกับโปรเจ็กต์
วิธีสร้างคีย์ API
คอนโซล
-
ไปที่หน้า Google Maps Platform &Credentials
-
ในหน้าข้อมูลเข้าสู่ระบบ ให้คลิกสร้างข้อมูลเข้าสู่ระบบ > คีย์ API
กล่องโต้ตอบสร้างคีย์ API จะแสดงคีย์ API ที่สร้างใหม่ -
คลิกปิด
คีย์ API ใหม่จะปรากฏในหน้าข้อมูลเข้าสู่ระบบในส่วนคีย์ API
(อย่าลืมจํากัดคีย์ API ก่อนใช้งานจริง)
Cloud SDK
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
อ่านเพิ่มเติมเกี่ยวกับ Google Cloud SDK, การติดตั้ง Cloud SDK และคําสั่งต่อไปนี้
จํากัดคีย์ API
Google ขอแนะนําอย่างยิ่งให้คุณจํากัดคีย์ API โดยจํากัดการใช้งานไว้สําหรับ API ที่จําเป็นสําหรับแอปพลิเคชันเท่านั้น การจํากัดคีย์ API จะเพิ่มการรักษาความปลอดภัยให้กับแอปพลิเคชันของคุณด้วยการปกป้องคีย์จากคําขอที่ไม่มีการรับประกัน ดูข้อมูลเพิ่มเติมได้ในแนวทางปฏิบัติแนะนําด้านความปลอดภัยของ API
วิธีจํากัดคีย์ API
คอนโซล
-
ไปที่หน้า Google Maps Platform &Credentials
- เลือกคีย์ API ที่ต้องการตั้งค่าข้อจํากัด หน้าคีย์คีย์ API จะปรากฏขึ้น
- ในส่วนการจํากัดคีย์ ให้ตั้งข้อจํากัดต่อไปนี้
- ข้อจำกัดแอปพลิเคชัน:
- หากต้องการยอมรับคําขอจากรายการเว็บไซต์ที่คุณระบุ ให้เลือกผู้อ้างอิง HTTP (เว็บไซต์) จากรายการข้อจํากัดของแอปพลิเคชัน
- ระบุเว็บไซต์อ้างอิงอย่างน้อย 1 เว็บไซต์ อักขระไวลด์การ์ดยอมรับได้สําหรับการให้สิทธิ์โดเมนย่อยทั้งหมด (เช่น
*.google.com
ยอมรับทุกเว็บไซต์ที่ลงท้ายด้วย.google.com
) ระบุhttps://
และhttp://
ตามเดิม คุณต้องใช้พิเศษแทนโปรโตคอล URL ผู้อ้างอิงประเภทอื่นๆ เช่น จัดรูปแบบfile:///path/to/
เป็น__file_url__//path/to/*
หลังจากเปิดใช้ผู้อ้างอิงแล้ว โปรดตรวจสอบการใช้งานว่าเป็นไปตามความคาดหวังของคุณ ระบบรองรับโปรโตคอลผู้อ้างอิงต่อไปนี้:about://, app://, applewebdata://, asset://, chrome://, content://, file://, ftp://, ionic://, local://, ms-appx://, ms-appx-web://, ms-local-stream://, prism://, qrc://, res://, saphtmlp://
- ข้อจำกัด API:
- คลิกจํากัดคีย์
- เลือก Maps JavaScript API จากเมนูแบบเลื่อนลงเลือก API หาก Maps JavaScript API ไม่อยู่ในรายการ คุณต้องเปิดใช้ API
- หากโครงการใช้ Places Library ให้เลือก Places API ด้วย ในทํานองเดียวกัน หากโปรเจ็กต์ของคุณใช้บริการอื่นๆ ใน JavaScript API (บริการเส้นทาง บริการเมทริกซ์ระยะทาง บริการระดับความสูง และ/หรือบริการการเข้ารหัสภูมิศาสตร์) คุณต้องเปิดใช้และเลือกใช้ API ที่เกี่ยวข้องในรายการนี้ด้วย
- คลิกบันทึกเพื่อเสร็จสิ้นการเปลี่ยนแปลง
Cloud SDK
แสดงคีย์ที่มีอยู่
gcloud services api-keys list --project="PROJECT"
ล้างข้อจํากัดที่มีอยู่ในคีย์ที่มีอยู่
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
กําหนดข้อจํากัดใหม่ในคีย์ที่มีอยู่
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --api_target="maps-backend.googleapis.com" --allowed-referrers="referer
อ่านเพิ่มเติมเกี่ยวกับ Google Cloud SDK, การติดตั้ง Cloud SDK และคําสั่งต่อไปนี้
เพิ่มคีย์ API ลงในคําขอ
คุณต้องรวมคีย์ API ไว้กับคําขอ Maps JavaScript API ทุกรายการ
ในตัวอย่างต่อไปนี้ ให้แทนที่ YOUR_API_KEY
ด้วยคีย์ API
<script async defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"></script>
ต้องใช้ HTTPS กับคําขอที่ใช้คีย์ API