สำหรับแอปและโปรเจ็กต์ที่ใช้ API และ SDK ของ Google Maps Platform คุณต้องใช้คีย์ API หรือ OAuth หากมีการรองรับ เพื่อป้องกันการใช้งานและการเรียกเก็บเงินที่ไม่ได้รับอนุญาต หากคุณใช้คีย์ API ให้จำกัดคีย์ API เมื่อสร้างคีย์เพื่อความปลอดภัยสูงสุด แนวทางปฏิบัติแนะนำเหล่านี้แสดงวิธีจํากัดการใช้งาน
ที่นี่นอกจากการใช้ข้อจำกัดแอปพลิเคชันและคีย์ API แล้ว โปรดทำตามแนวทางปฏิบัติด้านความปลอดภัยที่ใช้กับผลิตภัณฑ์ Google Maps Platform บางรายการ ตัวอย่างเช่น ดู Maps JavaScript API ด้านล่างในข้อจำกัดเกี่ยวกับแอปพลิเคชันและ API ที่แนะนำ
หากคีย์ API มีการใช้งานอยู่แล้ว โปรดดูคำแนะนำด้านล่างในหัวข้อหากคุณจำกัดหรือสร้างคีย์ API ที่ใช้งานอยู่อีกครั้ง
ดูรายละเอียดเพิ่มเติมเกี่ยวกับลายเซ็นดิจิทัลที่คู่มือลายเซ็นดิจิทัล
แนวทางปฏิบัติแนะนำ
ทำตามแนวทางปฏิบัติแนะนำด้านความปลอดภัยของ API สำหรับ API, SDK หรือบริการทั้งหมดของ Google Maps Platform เพื่อเพิ่มความปลอดภัยและหลีกเลี่ยงการเรียกเก็บเงินสำหรับการใช้งานที่ไม่ได้รับอนุญาต
แนะนำสำหรับการใช้งานคีย์ API ทั้งหมด
ใช้คีย์ API แยกกันสำหรับแต่ละแอป
โปรดระมัดระวังเมื่อสร้างคีย์ API ใหม่
คําแนะนําเพิ่มเติมสําหรับเว็บไซต์ที่ใช้ API เว็บแบบคงที่
ปกป้องแอปโดยใช้ API เว็บแบบคงที่
คำแนะนำเพิ่มเติมสำหรับแอปที่ใช้บริการบนเว็บ
คำแนะนำเพิ่มเติมสำหรับแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ iOS และ Android
ปกป้องแอปบนอุปกรณ์เคลื่อนที่โดยใช้บริการเว็บหรือ API เว็บแบบคงที่
หากคุณจํากัดหรือสร้างคีย์ API ที่ใช้งานอยู่อีกครั้ง
ก่อนเปลี่ยนคีย์ API โปรดตรวจสอบการใช้งานคีย์ API ขั้นตอนนี้มีความสำคัญเป็นพิเศษหากคุณเพิ่มข้อจำกัดหลังจากใช้งานคีย์แล้ว
หลังจากเปลี่ยนคีย์แล้ว ให้อัปเดตแอปทั้งหมดด้วยคีย์ API ใหม่ตามที่จำเป็น
หากไม่มีการละเมิดคีย์ API ที่ทำงานอยู่ คุณสามารถย้ายข้อมูลแอปไปยังคีย์ API ใหม่หลายรายการตามเวลาที่คุณสะดวก โดยไม่แตะต้องคีย์ API เดิมจนกว่าคุณจะเห็นการรับส่งข้อมูลเพียงประเภทเดียว ซึ่งคุณจะสามารถจำกัดคีย์ API ด้วยการจำกัดแอปพลิเคชันได้ ดูวิธีการเพิ่มเติมได้ที่ย้ายข้อมูลไปยังคีย์ API หลายรายการ
ตรวจสอบการใช้งานเมื่อเวลาผ่านไป และดูว่า API, ประเภทแพลตฟอร์ม และโดเมนที่เจาะจงได้ย้ายออกจากคีย์ API เก่าเมื่อใดก่อนที่คุณจะเลือกจำกัดหรือลบคีย์เก่า สำหรับข้อมูลเพิ่มเติม ดูการรายงานและการตรวจสอบและเมตริก
หากคีย์ API ถูกละเมิด คุณต้องการย้ายข้อมูลอย่างรวดเร็วยิ่งขึ้นเพื่อรักษาความปลอดภัยของคีย์ API และหยุดการละเมิด ในแอป Android และ iOS ระบบจะไม่แทนที่คีย์จนกว่าลูกค้าจะอัปเดตแอป การอัปเดตหรือแทนที่คีย์ในแอป JavaScript หรือบริการบนเว็บทำได้ง่ายกว่ามาก แต่ยังคงต้องมีการวางแผนอย่างรอบคอบและการทำงานที่รวดเร็ว
ดูข้อมูลเพิ่มเติมได้ที่จัดการการใช้คีย์ API โดยไม่ได้รับอนุญาต
จำกัดคีย์ API
แนวทางปฏิบัติแนะนำคือจำกัดคีย์ API ด้วยข้อจำกัดของแอปพลิเคชันและข้อจำกัด API อย่างน้อย 1 ข้อเสมอ ดูข้อจํากัดที่แนะนําโดยบริการ API, SDK หรือ JavaScript ได้ที่ข้อจํากัดของแอปพลิเคชันและ API ที่แนะนําด้านล่าง
การจำกัดแอปพลิเคชัน คุณจะจำกัดการใช้คีย์ API ได้เฉพาะในแพลตฟอร์มที่เจาะจง ได้แก่ แอปพลิเคชัน Android หรือ iOS หรือเว็บไซต์ที่เจาะจงสำหรับแอปพลิเคชันฝั่งไคลเอ็นต์ หรือที่อยู่ IP ที่เจาะจงหรือซับเน็ต CIDR สำหรับแอปฝั่งเซิร์ฟเวอร์ที่เรียก API ของ REST สำหรับบริการเว็บ
คุณจำกัดคีย์ได้โดยการเพิ่มข้อจำกัดของแอปพลิเคชันของประเภทที่คุณต้องการให้สิทธิ์ หลังจากนั้นจะอนุญาตเฉพาะคำขอที่มาจากแหล่งที่มาเหล่านี้เท่านั้น
ข้อจำกัด API คุณจำกัด Google Maps Platform API, SDK หรือบริการที่จะใช้คีย์ API ได้ ข้อจำกัด API จะอนุญาตคำขอที่ส่งไปยัง API และ SDK ที่คุณระบุเท่านั้น คุณสามารถระบุข้อจำกัด API ได้ตามจำนวนที่ต้องการ รายการ API ที่พร้อมใช้งาน ประกอบด้วย API ทั้งหมดที่เปิดใช้ในโปรเจ็กต์
ตั้งค่าข้อจำกัดของแอปพลิเคชันสำหรับคีย์ API
เปิดหน้าข้อมูลเข้าสู่ระบบ Google Maps Platform ของคอนโซล Google Cloud
เลือกคีย์ API ที่ต้องการจำกัด
ในหน้าแก้ไขคีย์ API ในส่วนข้อจำกัดของคีย์ ให้เลือกตั้งค่าข้อจำกัดของแอปพลิเคชัน
เลือกประเภทข้อจำกัด 1 ประเภทและให้ข้อมูลที่ขอตามรายการข้อจำกัด
ประเภทข้อจำกัด คำอธิบาย เว็บไซต์ ระบุเว็บไซต์อ้างอิงอย่างน้อย 1 เว็บไซต์ - รูปแบบ URI ผู้อ้างอิงที่ระบบรองรับโดยทั่วไปคือ
https
และhttp
- ระบุ URI ผู้อ้างอิงแบบเต็มเสมอ รวมถึงรูปแบบโปรโตคอล ชื่อโฮสต์ และพอร์ตที่ไม่บังคับ (เช่น
https://google.com
). - คุณใช้อักขระไวลด์การ์ดเพื่อให้สิทธิ์โดเมนย่อยทั้งหมดได้ ตัวอย่างเช่น
https://*.google.com
ยอมรับเว็บไซต์ทั้งหมดที่ลงท้ายด้วย.google.com
โปรดทราบว่าหากระบุ www.domain.com โดเมนจะทำหน้าที่เป็นไวลด์การ์ด www.domain.com/* และให้สิทธิ์เส้นทางย่อยในชื่อโฮสต์นั้น - โปรดระมัดระวังเมื่อให้สิทธิ์ URL ที่มาแบบเต็มเส้นทาง เช่น
https://google.com/some/path
โดยค่าเริ่มต้นแล้ว เบราว์เซอร์ปัจจุบันส่วนใหญ่จะตัดเส้นทางออกจากคําขอข้ามต้นทาง
ที่อยู่ IP ระบุที่อยู่ IPv4 หรือ IPv6 หรือซับเน็ตโดยใช้รูปแบบ CIDR อย่างน้อย 1 รายการ ที่อยู่ IP ต้องตรงกับที่อยู่ต้นทางที่เซิร์ฟเวอร์ Google Maps Platform สังเกตเห็น หากคุณใช้การแปลที่อยู่เครือข่าย (NAT) ที่อยู่นี้มักจะสอดคล้องกับที่อยู่ IP สาธารณะของเครื่อง แอป Android เพิ่มชื่อแพ็กเกจ Android (จากไฟล์ AndroidManifest.xml
) และลายนิ้วมือการรับรองลายเซ็น SHA-1 ของแอปพลิเคชัน Android แต่ละแอปที่คุณต้องการให้สิทธิ์ หากใช้ Play App Signing เพื่อดึงข้อมูลลายนิ้วมือของใบรับรองการรับรอง โปรดดูหัวข้อการทำงานร่วมกับผู้ให้บริการ API หากคุณจัดการคีย์ Signing ของคุณเอง โปรดดูการลงนามแอปพลิเคชันด้วยตนเองหรือดูวิธีการสำหรับสภาพแวดล้อมของบิลด์แอป iOS เพิ่มตัวระบุชุดของแอปพลิเคชัน iOS แต่ละแอปที่คุณต้องการให้สิทธิ์ ดูคำแนะนำเกี่ยวกับการจำกัดแอปพลิเคชันได้ที่การจำกัดแอปพลิเคชันที่แนะนำ
- รูปแบบ URI ผู้อ้างอิงที่ระบบรองรับโดยทั่วไปคือ
เลือกบันทึก
ตั้งค่าข้อจำกัด API สำหรับคีย์ API
เปิดหน้าข้อมูลเข้าสู่ระบบ Google Maps Platform ของคอนโซล Google Cloud
เลือกคีย์ API ที่ต้องการจำกัด
ในหน้าแก้ไขคีย์ API ในส่วนข้อจำกัดของ API ให้ทำดังนี้
เลือกจำกัดคีย์
เปิด Select API แล้วเลือก API หรือ SDK ที่คุณต้องการให้แอปพลิเคชันเข้าถึงโดยใช้คีย์ API
หาก API หรือ SDK ไม่อยู่ในรายการ คุณต้องเปิดใช้ โปรดดูรายละเอียดที่หัวข้อวิธีเปิดใช้ API หรือ SDK อย่างน้อย 1 รายการ
เลือกบันทึก
หลังจากขั้นตอนนี้ ข้อจำกัดจะกลายเป็นส่วนหนึ่งของคำจำกัดความคีย์ API ตรวจสอบว่าคุณใส่รายละเอียดที่เหมาะสมและเลือกบันทึกเพื่อบันทึกข้อจำกัดของคีย์ API สำหรับข้อมูลเพิ่มเติม โปรดดูคำแนะนำ รับคีย์ API ในเอกสารประกอบของ API หรือ SDK เฉพาะที่คุณสนใจ
โปรดดูข้อจํากัดของ API ที่แนะนําที่ข้อจํากัดของ API ที่แนะนํา
ตรวจสอบการใช้งานคีย์ API
หากต้องการจำกัดคีย์ API หลังจากที่สร้างคีย์แล้ว หรือหากต้องการดูว่าคีย์ใช้ API ใดอยู่เพื่อให้จำกัดคีย์เหล่านั้นได้ คุณต้องตรวจสอบการใช้งานคีย์ API ขั้นตอนเหล่านี้จะแสดงบริการและเมธอด API ที่มีการใช้คีย์ API หากคุณเห็นการใช้งานนอกเหนือจากบริการ Google Maps Platform ให้ตรวจสอบเพื่อดูว่าต้องเพิ่มข้อจำกัดอื่นๆ เพื่อหลีกเลี่ยงการใช้งานที่ไม่พึงประสงค์หรือไม่ คุณใช้เครื่องมือสำรวจเมตริกคอนโซลระบบคลาวด์ของ Google Maps Platform ได้เพื่อช่วย กำหนดว่าข้อจำกัดของ API และแอปพลิเคชันใดที่จะใช้กับคีย์ API ของคุณ
ระบุ API ที่ใช้คีย์ API ของคุณ
รายงานเมตริกต่อไปนี้ช่วยให้คุณระบุได้ว่า API ใดกำลังใช้คีย์ API อยู่ ใช้รายงานเหล่านี้เพื่อดำเนินการต่อไปนี้
- ดูลักษณะการใช้คีย์ API
- พบการใช้งานที่ไม่คาดคิด
- ช่วยยืนยันว่าคีย์ที่ไม่ได้ใช้งานนั้นปลอดภัยที่จะลบไหม ดูข้อมูลเกี่ยวกับการลบคีย์ API ได้ที่ลบคีย์ API ที่ไม่ได้ใช้
เมื่อใช้ข้อจำกัด API ให้ใช้รายงานเหล่านี้ในการสร้างรายการ API เพื่อให้สิทธิ์ หรือเพื่อตรวจสอบคำแนะนำการจำกัดคีย์ API ที่สร้างขึ้นโดยอัตโนมัติ ดูข้อมูลเพิ่มเติมเกี่ยวกับข้อจำกัดที่แนะนำได้ที่ใช้ข้อจำกัดที่แนะนำ ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้เครื่องมือสำรวจเมตริกได้ที่สร้างแผนภูมิด้วยเครื่องมือสำรวจเมตริก
ไปที่เครื่องมือสำรวจเมตริกของ Google Cloud Console
ลงชื่อเข้าสู่ระบบและเลือกโปรเจ็กต์สำหรับคีย์ API ที่ต้องการตรวจสอบ
ไปที่หน้าสำรวจเมตริกสำหรับประเภท API ของคุณ ดังนี้
สำหรับคีย์ API ที่ใช้ API ใดก็ได้ยกเว้น Maps Embed API: ไปที่หน้าเครื่องมือสำรวจเมตริก
สำหรับคีย์ API ที่ใช้ Maps Embed API: ไปที่เครื่องมือสำรวจเมตริก
ตรวจสอบคีย์ API แต่ละรายการดังนี้
เลือกเพิ่มตัวกรอง
เลือกป้ายกำกับ
credential_id
เลือกค่าที่ตรงกับคีย์ที่ต้องการตรวจสอบ
สังเกตว่าคีย์ API นี้ใช้สำหรับ API ใด และตรวจสอบว่าควรจะใช้งานคีย์นี้สำหรับ API ใด
เมื่อเสร็จแล้ว ให้เลือกนำตัวกรองออก
ที่ท้ายบรรทัดตัวกรองที่ใช้งานอยู่ เพื่อลบตัวกรองอื่น
ทำซ้ำกับคีย์อื่นๆ ที่เหลือ
จำกัดคีย์ API ของคุณให้เฉพาะกับ API ที่ใช้งานอยู่เท่านั้น
หากพบการใช้งานที่ไม่ได้รับอนุญาต โปรดดูหัวข้อจัดการการใช้คีย์ API ที่ไม่ได้รับอนุญาต
เลือกประเภทการจำกัดแอปพลิเคชันที่ถูกต้องโดยใช้เครื่องมือสำรวจเมตริก
หลังจากที่คุณได้ยืนยันและดำเนินการที่จำเป็นเพื่อให้มั่นใจว่าคีย์ API ของคุณใช้สำหรับบริการ Google Maps Platform ที่คีย์ API ใช้งานอยู่เท่านั้น ให้ตรวจสอบว่าคีย์ API มีข้อจำกัดของแอปพลิเคชันที่ถูกต้อง
หากคีย์ API ของคุณมีข้อจำกัดของคีย์ API ที่แนะนำ ให้ใช้ข้อจำกัดเหล่านั้น ดูข้อมูลเพิ่มเติมได้ที่ใช้ข้อจำกัดของคีย์ API ที่แนะนำ
หากคีย์ API ไม่มีคำแนะนำเรื่องข้อจำกัด ให้ระบุประเภทการจำกัดแอปพลิเคชันที่จะใช้โดยอิงตาม platform_type
ที่รายงานโดยใช้เครื่องมือสำรวจเมตริก ดังนี้
ไปที่เครื่องมือสำรวจเมตริกของ Google Cloud Console
เข้าสู่ระบบและเลือกโปรเจ็กต์สำหรับ API ที่ต้องการตรวจสอบ
ไปที่หน้าเครื่องมือสำรวจเมตริกนี้ เครื่องมือสำรวจเมตริก
ตรวจสอบคีย์ API แต่ละรายการดังนี้
เลือกเพิ่มตัวกรอง
เลือกป้ายกำกับ
credential_id
เลือกค่าที่ตรงกับคีย์ที่ต้องการตรวจสอบ
เมื่อเสร็จแล้ว ให้เลือกนำตัวกรองออก
ที่ท้ายบรรทัดตัวกรองที่ใช้งานอยู่ เพื่อลบตัวกรองอื่น
ทำซ้ำกับคีย์อื่นๆ ที่เหลือ
เมื่อคุณมีประเภทแพลตฟอร์มสำหรับคีย์ API แล้ว ให้ใช้ข้อจำกัดแอปพลิเคชันสำหรับ
platform_type
ดังกล่าว ดังนี้PLATFORM_TYPE_JS
- ใช้การจำกัดเว็บไซต์กับคีย์
PLATFORM_TYPE_ANDROID
- นำข้อจำกัดของแอปพลิเคชัน Android ไปใช้กับคีย์
PLATFORM_TYPE_IOS
- นำข้อจำกัดของแอปพลิเคชัน iOS ไปใช้กับคีย์
PLATFORM_TYPE_WEBSERVICE
- คุณอาจต้องใช้ข้อจำกัดที่อยู่ IP กับคีย์เพื่อจำกัดการเข้าถึงอย่างเหมาะสม ดูตัวเลือกเพิ่มเติมสำหรับ Maps Static API และ Street View Static API ได้ที่ปกป้องแอปโดยใช้ API เว็บแบบคงที่ ดูวิธีการเพิ่มเติมเกี่ยวกับ Maps Embed API ได้ที่เว็บไซต์ที่ใช้ Maps Embed API
- คีย์ API ของฉันใช้แพลตฟอร์มหลายประเภท
- ระบบอาจรักษาความปลอดภัยให้กับการรับส่งข้อมูลอย่างเหมาะสมโดยใช้คีย์ API เพียงคีย์เดียว คุณต้องย้ายข้อมูลไปยังคีย์ API หลายรายการ ดูข้อมูลเพิ่มเติมได้ที่ย้ายข้อมูลไปยังคีย์ API หลายรายการ
ใช้คีย์ API แยกกันสำหรับแต่ละแอป
วิธีนี้จำกัดขอบเขตของแต่ละคีย์ หากคีย์ API ใดถูกบุกรุก คุณจะลบหรือสร้างคีย์ที่ได้รับผลกระทบอีกครั้งได้โดยไม่ต้องอัปเดตคีย์ API อื่นๆ คุณสร้างคีย์ API ได้สูงสุด 300 คีย์ต่อโปรเจ็กต์ ดูข้อมูลเพิ่มเติมได้ที่ขีดจำกัดเกี่ยวกับคีย์ API
แม้ว่าคีย์ API เพียง 1 รายการต่อแอปพลิเคชันจะเหมาะสำหรับวัตถุประสงค์ด้านความปลอดภัย แต่คุณจะใช้คีย์ที่มีการจำกัดได้ในหลายๆ แอปตราบใดที่คีย์เหล่านั้นใช้ข้อจำกัดแอปพลิเคชันประเภทเดียวกัน
ใช้ข้อจำกัดของคีย์ API ที่แนะนำ
สําหรับเจ้าของและผู้แก้ไขโปรเจ็กต์บางราย Google Cloud Console จะแนะนําข้อจํากัดของคีย์ API ที่เจาะจงสําหรับคีย์ API ที่ไม่จํากัดโดยอิงตามการใช้งานและกิจกรรมของ Google Maps Platform
คำแนะนำจะปรากฏเป็นตัวเลือกที่กรอกไว้ล่วงหน้าในหน้าข้อมูลเข้าสู่ระบบ Google Maps Platform (หากมี)
สาเหตุที่คุณอาจไม่เห็นคําแนะนําหรือคําแนะนําที่ไม่สมบูรณ์
และคุณกำลังใช้คีย์ API ในบริการอื่นๆ นอกเหนือจาก Google Maps Platform ด้วย หากคุณเห็นการใช้งานในบริการอื่นๆ อย่านำคำแนะนำไปใช้โดยไม่ทำตามสิ่งต่อไปนี้
ยืนยันว่าการใช้งาน API ที่คุณเห็นในเครื่องมือสำรวจเมตริก Google Cloud Console นั้นถูกต้อง
เพิ่มบริการที่ขาดไปลงในรายการ API ที่จะได้รับอนุญาตด้วยตนเอง
เพิ่มข้อจำกัดของแอปพลิเคชันที่ขาดหายไปด้วยตนเองสำหรับบริการที่เพิ่มลงในรายการ API หากรายการที่เพิ่มอื่นๆ ต้องการข้อจำกัดแอปพลิเคชันประเภทอื่น โปรดดูย้ายข้อมูลไปยังคีย์ API หลายรายการ
ไม่มีการใช้คีย์ API ใน SDK หรือ API ฝั่งไคลเอ็นต์
คุณใช้คีย์ API ในแอปหรือเว็บไซต์ที่มีปริมาณน้อยซึ่งไม่มีการใช้งานในช่วง 60 วันที่ผ่านมา
คุณสร้างคีย์ใหม่เมื่อไม่นานมานี้หรือเพิ่งทำให้คีย์ที่มีอยู่ใช้งานได้ในแอปใหม่ หากเป็นเช่นนี้ โปรดรออีก 2-3 วันเพื่อให้คำแนะนำอัปเดต
คุณใช้คีย์ API ในหลายแอปพลิเคชันซึ่งต้องใช้ข้อจำกัดแอปพลิเคชันประเภทที่ขัดแย้งกัน หรือคุณใช้คีย์ API เดียวกันในแอปหรือเว็บไซต์ต่างๆ มากเกินไป ในทั้ง 2 กรณี แนวทางปฏิบัติแนะนำ คือคุณควรย้ายข้อมูลไปยังหลายคีย์ ดูรายละเอียดเพิ่มเติมได้ที่หัวข้อย้ายข้อมูลไปยังคีย์ API หลายรายการ
สาเหตุที่คุณอาจเห็นคำแนะนำที่ไม่แสดงอยู่ในแผนภูมิ
แอปหรือเว็บไซต์ของคุณส่งการเข้าชมเพิ่มขึ้นในเวลาสั้นๆ เท่านั้น ในกรณีนี้ ให้เปลี่ยนจากมุมมอง CHART เพื่อแสดง TABLE หรือ BOTH เนื่องจากการใช้งานยังคงปรากฏในคำอธิบาย ดูข้อมูลเพิ่มเติมได้ที่การสลับคำอธิบายแบบเต็มของแผนภูมิ
การเข้าชมมาจาก Maps Embed API โปรดดูวิธีการที่หัวข้อระบุ API ที่ใช้คีย์ API ของคุณ
การเข้าชมจากแอปหรือเว็บไซต์อยู่นอกช่วงวันที่ที่ใช้ได้ในเครื่องมือสำรวจเมตริก Google Cloud Console
วิธีใช้ข้อจำกัดที่แนะนำ
เปิดหน้าข้อมูลเข้าสู่ระบบ Google Maps Platform ของคอนโซล Google Cloud
เลือกใช้ข้อจำกัดที่แนะนำ หากมี
หมายเหตุ: หากไม่เห็นข้อจำกัดที่แนะนำ โปรดดูตั้งค่าข้อจำกัดของ API สำหรับคีย์ API เพื่อกำหนดข้อจำกัดที่เหมาะสม
เลือกตรวจสอบการใช้งาน API เพื่อยืนยันว่ามีการใช้คีย์ API กับบริการใด หากเห็นบริการอื่นๆ นอกเหนือจากบริการ Google Maps Platform ให้หยุดชั่วคราวเพื่อตรวจสอบขั้นตอนคำแนะนำด้านบนด้วยตนเอง ดูขั้นตอนการแก้ปัญหาที่ตอนต้นของส่วนใช้ข้อจำกัดคีย์ API ที่แนะนำ
ตรวจสอบอีกครั้งว่าข้อจำกัดที่กรอกไว้ล่วงหน้าตรงกับเว็บไซต์และแอปที่คุณคาดว่าจะใช้คีย์ API
แนวทางปฏิบัติแนะนำ: บันทึกและนำข้อจำกัดของแอปพลิเคชันหรือ API ที่ไม่เกี่ยวข้องกับบริการของคุณออก หากมีบางสิ่งผิดพลาดเนื่องจาก การขึ้นต่อกันที่ไม่คาดคิด คุณสามารถเพิ่มแอปหรือ API ที่จำเป็นกลับเข้าไปได้
หากพบว่าแอป เว็บไซต์ หรือ API ไม่ได้อยู่ในคำแนะนำอย่างชัดเจน ให้เพิ่มแอป เว็บไซต์ หรือ API ด้วยตนเองหรือรอ 2-3 วันเพื่อให้การอัปเดตคำแนะนำ
หากต้องการความช่วยเหลือเพิ่มเติมเกี่ยวกับคำแนะนำที่แนะนำ โปรดติดต่อทีมสนับสนุน
เลือกใช้
สิ่งที่ต้องทำหากใบสมัครถูกปฏิเสธหลังจากใช้คำแนะนำ
หากคุณสังเกตเห็นว่าแอปหรือเว็บไซต์ถูกปฏิเสธหลังจากใช้การจำกัดแล้ว ให้มองหาข้อจำกัดของแอปพลิเคชันที่คุณต้องเพิ่มในข้อความแสดงข้อผิดพลาดของการตอบกลับ API
สำหรับ SDK ฝั่งไคลเอ็นต์ โปรดดูด้านล่าง
- แอป Maps JavaScript API: ดูคอนโซลแก้ไขข้อบกพร่องของเบราว์เซอร์
- แอป Android: ใช้ Android Debug Bridge (adb) หรือ Logcat
- แอป iOS: โปรดดูที่การดูข้อความบันทึก
หากต้องการตรวจสอบข้อจำกัด API ที่จำเป็น โปรดดู ระบุ API ที่ใช้คีย์ API ของคุณ
หากคุณไม่สามารถระบุได้ว่าจะใช้ข้อจำกัดใด ให้ทำดังนี้
- บันทึกข้อจำกัดในปัจจุบันไว้ใช้อ้างอิงในอนาคต
- นำคีย์เวิร์ดเหล่านั้นออกชั่วคราวในระหว่างตรวจสอบปัญหา คุณตรวจสอบการใช้งานเมื่อเวลาผ่านไปได้โดยทำตามขั้นตอนในตรวจสอบการใช้งานคีย์ API
- โปรดติดต่อทีมสนับสนุนหากจำเป็น
ลบคีย์ API ที่ไม่ได้ใช้
ก่อนลบคีย์ API โปรดตรวจสอบว่าคีย์ดังกล่าวไม่ได้ใช้ในเวอร์ชันที่ใช้งานจริง หากไม่มีการเข้าชมที่สำเร็จ คีย์ก็น่าจะปลอดภัยแล้ว ดูข้อมูลเพิ่มเติมได้ที่ตรวจสอบการใช้งานคีย์ API
วิธีลบคีย์ API
เปิดหน้าข้อมูลเข้าสู่ระบบ Google Maps Platform ของคอนโซล Google Cloud
เลือกคีย์ API ที่ต้องการลบ
เลือกปุ่มลบที่อยู่ใกล้กับด้านบนสุดของหน้า
ในหน้าลบข้อมูลเข้าสู่ระบบ ให้เลือกลบ
การลบคีย์ API ใช้เวลา 2-3 นาทีในการเผยแพร่ หลังจากการนำไปใช้งานเสร็จสมบูรณ์แล้ว การรับส่งข้อมูลที่ใช้คีย์ API ที่ลบไปแล้วจะถูกปฏิเสธ
โปรดระมัดระวังเมื่อสร้างคีย์ API ใหม่
การสร้างคีย์ API ใหม่จะเป็นการสร้างคีย์ใหม่ที่มีข้อจำกัดของคีย์เก่าทั้งหมด กระบวนการนี้จะเริ่มต้นตัวจับเวลา 24 ชั่วโมงหลังลบคีย์ API เก่าด้วย
ในช่วงเวลานี้ ระบบจะยอมรับทั้งคีย์เก่าและคีย์ใหม่ คุณจึงมีโอกาสย้ายข้อมูลแอปไปใช้คีย์ใหม่ อย่างไรก็ตาม หลังจากพ้นระยะเวลานี้ไปแล้ว แอปที่ยังคงใช้คีย์ API เดิมจะหยุดทำงาน
ก่อนสร้างคีย์ API ใหม่ ให้ทำดังนี้
ก่อนอื่นให้ลองจำกัดคีย์ API ตามที่อธิบายไว้ในจำกัดคีย์ API
หากจำกัดคีย์ API ไม่ได้เนื่องจากประเภทข้อจำกัดของแอปพลิเคชันที่ขัดแย้งกัน ให้เปลี่ยนไปใช้คีย์ใหม่ (จำกัด) หลายรายการตามที่อธิบายไว้ในย้ายข้อมูลไปยังคีย์ API หลายรายการ การย้ายข้อมูลจะช่วยให้ควบคุมไทม์ไลน์การย้ายข้อมูลและเปิดตัวไทม์ไลน์ไปยังคีย์ API ใหม่ได้
หากดูคำแนะนำก่อนหน้าไม่ได้ และต้องสร้างคีย์ API ใหม่เพื่อป้องกันการใช้งานที่ไม่ได้รับอนุญาต ให้ทำตามขั้นตอนต่อไปนี้
เปิดหน้าข้อมูลเข้าสู่ระบบ Google Maps Platform ของคอนโซล Google Cloud
เปิดคีย์ API ที่ต้องการสร้างใหม่
เลือกสร้างคีย์ใหม่ที่ด้านบนของหน้า
เลือกแทนที่คีย์
หมายเหตุ: หากจำเป็น คุณจะย้อนกลับไปใช้คีย์ที่สร้างขึ้นใหม่เป็นเวอร์ชันก่อนหน้าได้ ไม่มีการจํากัดเวลาสําหรับการย้อนกลับ
วิธีย้อนกลับคีย์ที่สร้างใหม่
เปิดหน้าข้อมูลเข้าสู่ระบบ Google Maps Platform ของคอนโซล Google Cloud
เปิดคีย์ API ที่ต้องการย้อนกลับ
เลือกเปลี่ยนกลับไปเป็นคีย์ก่อนหน้า
ในกล่องโต้ตอบเปลี่ยนกลับ ให้เลือกเปลี่ยนกลับคีย์
เมื่อย้อนกลับไป เวอร์ชันเดิมของคีย์ "ใหม่" จะกลายเป็นเวอร์ชันก่อนหน้าและมีตัวจับเวลาการปิดใช้งาน 24 ชั่วโมงใหม่ คุณสามารถเปลี่ยนกลับระหว่างค่าคีย์ทั้ง 2 ค่านี้จนกว่าคุณจะสร้างคีย์อีกครั้ง
หากสร้างคีย์อีกครั้ง คีย์จะเขียนทับค่าคีย์เก่าที่ไม่ได้ใช้งาน
ย้ายข้อมูลไปยังคีย์ API หลายรายการ
หากต้องการย้ายข้อมูลจากการใช้คีย์ API เดียวสำหรับหลายแอปไปยังคีย์ API เดียวที่ไม่ซ้ำกันในแต่ละแอป ให้ทำดังนี้
ระบุแอปที่ต้องมีคีย์ใหม่:
- เว็บแอปอัปเดตได้ง่ายที่สุดเนื่องจากคุณควบคุมโค้ดทั้งหมด วางแผนอัปเดตคีย์ของแอปบนเว็บทั้งหมด
- แอปบนอุปกรณ์เคลื่อนที่นั้นยากกว่ามาก เนื่องจากลูกค้าต้องอัปเดตแอปก่อนจึงจะใช้คีย์ใหม่ได้
สร้างและจำกัดคีย์ใหม่: เพิ่มทั้งข้อจำกัดของแอปพลิเคชันและข้อจำกัด API อย่างน้อย 1 รายการ ดูข้อมูลเพิ่มเติมได้ที่แนวทางปฏิบัติแนะนำ
เพิ่มคีย์ใหม่ลงในแอป: สำหรับแอปบนอุปกรณ์เคลื่อนที่ ขั้นตอนนี้อาจใช้เวลาหลายเดือนจนกว่าผู้ใช้ทั้งหมดจะอัปเดตแอปเป็นเวอร์ชันล่าสุดด้วยคีย์ API ใหม่
ปกป้องแอปโดยใช้ API เว็บแบบคงที่
API เว็บแบบคงที่ เช่น Maps Static API และ Street View Static API จะคล้ายกับการเรียก API บริการเว็บ
คุณเรียกใช้ API ทั้งสองแบบโดยใช้ HTTPS REST API แบบง่าย และมักจะสร้าง URL คำขอ API บนเซิร์ฟเวอร์ อย่างไรก็ตาม API ของ Static Web API จะสร้างรูปภาพที่คุณสามารถฝังลงในโค้ด HTML ที่สร้างขึ้นแทนการแสดงการตอบสนอง JSON ที่สำคัญไปกว่านั้นก็คือ โดยทั่วไปจะเป็นไคลเอ็นต์ของผู้ใช้ปลายทาง ไม่ใช่เซิร์ฟเวอร์ที่เรียกใช้บริการ Google Maps Platform
ใช้ลายเซ็นดิจิทัล
แนวทางปฏิบัติแนะนำคือใช้ลายเซ็นดิจิทัลเสมอนอกเหนือจากคีย์ API นอกจากนี้ ให้ตรวจสอบจำนวนคำขอที่คุณต้องการอนุญาตต่อวัน และปรับโควต้าคำขอที่ไม่ได้ลงนามตามลำดับ
ดูรายละเอียดเพิ่มเติมเกี่ยวกับลายเซ็นดิจิทัลที่คู่มือลายเซ็นดิจิทัล
ปกป้องข้อมูลลับในการลงชื่อของคุณ
หากต้องการปกป้อง API ของเว็บแบบคงที่ อย่าฝังข้อมูลลับในการรับรอง API ในโค้ดหรือในแผนผังซอร์สโดยตรง หรือเปิดเผยข้อมูลลับดังกล่าวในแอปพลิเคชันฝั่งไคลเอ็นต์ ทำตามแนวทางปฏิบัติแนะนำเหล่านี้เพื่อปกป้องข้อมูลลับในการลงชื่อของตนเอง
ลงนามคำขอฝั่งเซิร์ฟเวอร์ ไม่ใช่ไคลเอ็นต์ หากคุณลงนามฝั่งไคลเอ็นต์ใน JavaScript เท่ากับคุณได้แสดงโค้ดดังกล่าวแก่ทุกคนที่เข้าชมเว็บไซต์ ดังนั้น สำหรับรูปภาพที่สร้างขึ้นแบบไดนามิก ให้สร้าง URL คำขอของ Maps Static API และ Street View Static API ที่ลงชื่อทุกครั้งเมื่อแสดงหน้าเว็บ สำหรับเนื้อหาเว็บแบบคงที่ คุณสามารถใช้วิดเจ็ตลงชื่อ URL เลยในหน้าข้อมูลเข้าสู่ระบบของ Google Maps Platform บน Cloud Console ได้
เก็บข้อมูลลับใน Store ไว้นอกซอร์สโค้ดและซอร์สโค้ดของแอปพลิเคชัน หากคุณเก็บข้อมูลลับในการลงชื่อหรือข้อมูลส่วนตัวอื่นๆ ไว้ในตัวแปรสภาพแวดล้อม หรือรวมไฟล์ที่จัดเก็บไว้แยกต่างหากแล้วแชร์โค้ด ข้อมูลลับในการลงชื่อจะไม่รวมอยู่ในไฟล์ที่แชร์ หากคุณเก็บข้อมูลลับในการลงชื่อหรือข้อมูลส่วนตัวอื่นๆ ไว้ในไฟล์ ให้เก็บไฟล์ไว้นอกโครงสร้างแหล่งที่มาของแอปพลิเคชันเพื่อไม่ให้ระบบควบคุมซอร์สโค้ดของคุณเป็นความลับ ข้อควรระวังนี้มีความสำคัญอย่างยิ่งหากคุณใช้ระบบจัดการซอร์สโค้ดสาธารณะ เช่น GitHub
ปกป้องคีย์ API ในแอปโดยใช้บริการเว็บ
จัดเก็บคีย์ API ไว้นอกซอร์สโค้ดหรือซอร์สโค้ดของแอปพลิเคชัน หากคุณใส่คีย์ API หรือข้อมูลอื่นๆ ในตัวแปรสภาพแวดล้อม หรือรวมไฟล์ที่จัดเก็บไว้แยกต่างหากแล้วแชร์โค้ด คีย์ API จะไม่รวมอยู่ในไฟล์ที่แชร์ ซึ่งมีความสำคัญโดยเฉพาะหากคุณใช้ระบบการจัดการซอร์สโค้ดสาธารณะ เช่น GitHub
ปกป้องคีย์ API และข้อมูลลับในการรับรองในแอปบนอุปกรณ์เคลื่อนที่โดยใช้บริการเว็บหรือ API เว็บแบบคงที่
หากต้องการปกป้องแอปบนอุปกรณ์เคลื่อนที่ ให้ใช้คีย์สโตร์ที่ปลอดภัยหรือพร็อกซีเซิร์ฟเวอร์ที่ปลอดภัย ดังนี้
เก็บคีย์ API หรือข้อมูลลับในการลงชื่อไว้ในคีย์สโตร์ที่ปลอดภัย ขั้นตอนนี้ทำให้คัดลอกคีย์ API และข้อมูลส่วนตัวอื่นๆ จากแอปพลิเคชันโดยตรงได้ยากขึ้น
ใช้พร็อกซีเซิร์ฟเวอร์ที่ปลอดภัย พร็อกซีเซิร์ฟเวอร์เป็นแหล่งที่เสถียรสำหรับ การโต้ตอบกับ Google Maps Platform API ที่เหมาะสม ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้พร็อกซีเซิร์ฟเวอร์ได้ที่ Living Vicประเภทต่างๆly: การใช้พร็อกซีเซิร์ฟเวอร์กับไลบรารีของไคลเอ็นต์ Google Data API
สร้างคำขอ Google Maps Platform บนพร็อกซีเซิร์ฟเวอร์ ไม่อนุญาตให้ไคลเอ็นต์ส่งต่อการเรียก API ที่กำหนดเองผ่านพร็อกซี
หลังการประมวลผลคำตอบของ Google Maps Platform บนพร็อกซีเซิร์ฟเวอร์ กรองข้อมูลที่ไคลเอ็นต์ไม่จำเป็นต้องใช้ออก
จัดการการใช้คีย์ API ที่ไม่ได้รับอนุญาต
หากพบว่ามีการใช้คีย์ API ที่ไม่ได้รับอนุญาต ให้ดำเนินการดังต่อไปนี้เพื่อแก้ไขปัญหา
จำกัดคีย์: หากคุณใช้คีย์เดียวกันในหลายๆ แอป ให้เปลี่ยนไปใช้คีย์ API หลายรายการและใช้คีย์ API แยกกันสำหรับแต่ละแอป ดูรายละเอียดเพิ่มเติมได้ที่
โดยสร้างคีย์อีกครั้งในกรณีที่จำกัดไม่ได้ โปรดอ่านในส่วนโปรดระมัดระวังเมื่อสร้างคีย์ API ใหม่ ก่อนดำเนินการต่อ
หากคุณยังคงพบปัญหาหรือต้องการความช่วยเหลือ โปรดติดต่อทีมสนับสนุน
ข้อจำกัดแอปพลิเคชันและ API ที่แนะนำ
ส่วนต่อไปนี้จะแนะนำการจำกัดแอปพลิเคชันและ API ที่เหมาะสมสำหรับ Google Maps Platform API, SDK หรือบริการแต่ละอย่าง
ข้อจำกัด API ที่แนะนำ
หลักเกณฑ์การจำกัด API ต่อไปนี้มีผลกับ Google Maps Platform ทั้งแพลตฟอร์ม
จำกัดคีย์ API ให้เฉพาะกับ API ที่คุณใช้โดยมีข้อยกเว้นต่อไปนี้
หากแอปของคุณใช้ Places SDK สำหรับ Android หรือ Places SDK สำหรับ iOS ให้ให้สิทธิ์ Places API
หากแอปใช้ Maps JavaScript API ให้ให้สิทธิ์ทุกครั้งในคีย์ของคุณ
และหากคุณใช้บริการ Maps JavaScript API ต่อไปนี้ด้วย คุณควรให้สิทธิ์ API ต่อไปนี้ด้วย
บริการ ข้อจำกัด API บริการเส้นทาง, Maps JavaScript API Directions API บริการเมทริกซ์ระยะทาง, Maps JavaScript API Distance Matrix API บริการระดับความสูง, Maps JavaScript API Elevation API บริการการเข้ารหัสพิกัดภูมิศาสตร์, Maps JavaScript API Geocoding API Places Library, Maps JavaScript API Places API
ตัวอย่างมีดังต่อไปนี้
คุณกำลังใช้ Maps SDK สำหรับ Android และ Places SDK สำหรับ Android คุณจึงใส่ Maps SDK สำหรับ Android และ Places API เป็น ข้อจำกัดของ API
เว็บไซต์ของคุณใช้ Maps JavaScript API Elevation Service และ Maps Static API คุณจึงเพิ่มข้อจํากัด API สําหรับ API ต่อไปนี้ทั้งหมด
- Maps JavaScript API
- Elevation API
- Maps Static API
ข้อจำกัดแอปพลิเคชันที่แนะนำ
เว็บไซต์ที่มี Maps JavaScript API หรือ Static Web API
สําหรับเว็บไซต์ที่ใช้บริการ Maps JavaScript หรือ Static Web API ให้ใช้ข้อจํากัดของแอปพลิเคชัน Websites
ใช้สำหรับเว็บไซต์ที่ใช้บริการ JavaScript และ API เหล่านี้
1 สำหรับแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ ให้พิจารณาใช้ Maps SDK สำหรับ Android และ Maps SDK สำหรับ iOS
2 ดูเพิ่มเติม ปกป้องแอปบนอุปกรณ์เคลื่อนที่โดยใช้บริการเว็บหรือ API เว็บแบบคงที่
เว็บไซต์ที่มี Maps Embed API
แม้ว่าการใช้งาน Maps Embed API จะไม่มีค่าใช้จ่าย แต่คุณยังคงควรจำกัดคีย์ API ที่ใช้เพื่อป้องกันการละเมิดในบริการอื่นๆ
แนวทางปฏิบัติแนะนำ: สร้างคีย์ API แยกต่างหากสำหรับการใช้ Maps Embed API และจำกัดคีย์นี้ให้ใช้เฉพาะ Maps Embed API เท่านั้น ข้อจำกัดนี้ช่วยรักษาความปลอดภัยของคีย์ได้อย่างเพียงพอเพื่อป้องกันการนำไปใช้ในบริการอื่นๆ ของ Google โดยไม่ได้รับอนุญาต
หากคุณแยกการใช้งาน Maps Embed API ออกจากคีย์ API แยกต่างหากไม่ได้ ให้รักษาความปลอดภัยคีย์โดยใช้การจำกัดแอปพลิเคชัน Websites
แอปและเซิร์ฟเวอร์ที่ใช้บริการเว็บ
สำหรับแอปและเซิร์ฟเวอร์ที่ใช้บริการผ่านเว็บ ให้ใช้ข้อจำกัดของแอปพลิเคชัน IP addresses
ใช้สำหรับแอปและเซิร์ฟเวอร์ที่ใช้ API เหล่านี้
3 สำหรับแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ ให้ลองใช้ Places SDK สำหรับ Android และ Places SDK สำหรับ iOS
แอป Android
สำหรับแอปใน Android ให้ใช้การจำกัดแอปพลิเคชัน "Android apps
"
ใช้สำหรับแอปและเซิร์ฟเวอร์ที่ใช้ SDK เหล่านี้
นอกจากนี้ ป้องกันการตรวจสอบคีย์ API ในการควบคุมเวอร์ชันโดยไม่ได้ตั้งใจโดยใช้ Secrets Gradle Plugin เพื่อแทรกข้อมูลลับจากไฟล์ในเครื่องแทนการจัดเก็บข้อมูลลับใน Android Manifest
แอป iOS
สำหรับแอปใน iOS ให้ใช้การจำกัดแอปพลิเคชัน "iOS apps
"
ใช้สำหรับแอปและเซิร์ฟเวอร์ที่ใช้ SDK เหล่านี้