รายการตรวจสอบการเปิดตัว Firebase

เอกสารนี้มีรายการตรวจสอบแนวทางปฏิบัติแนะนำและสิ่งที่ควรพิจารณาก่อนเปิดตัวแอป Firebase เวอร์ชันที่ใช้งานจริง

แนวทางปฏิบัติแนะนำทั่วไปสำหรับการเผยแพร่

  • ตรวจสอบว่าคุณได้ทดสอบการเปลี่ยนแปลงทั้งหมดใน Firebase Local Emulator Suite (สำหรับผลิตภัณฑ์ที่รองรับ) แล้วก่อนที่จะนำไปใช้งานจริง การทดสอบอย่างละเอียดจะช่วยป้องกันข้อผิดพลาดที่ก่อให้เกิดค่าใช้จ่าย

  • เริ่มบังคับใช้ Firebase App Check สำหรับบริการทุกรายการที่รองรับ App Check ช่วยให้มั่นใจได้ว่ามีเพียงแอปจริงของคุณเท่านั้นที่เข้าถึงบริการและทรัพยากรแบ็กเอนด์ได้

  • ตรวจสอบรายการตรวจสอบความปลอดภัยทั่วไปของ Firebase

  • ใช้การเปิดตัวFirebase Remote Configเพื่อเผยแพร่ฟีเจอร์ใหม่และการอัปเดตในแอปอย่างปลอดภัยและค่อยเป็นค่อยไป

  • ลองตั้งค่า Firebase Crashlytics หากยังไม่ได้ตั้งค่า เครื่องมือนี้เป็นเครื่องมือรายงานข้อขัดข้องแบบเรียลไทม์ที่มีน้ำหนักเบา ซึ่งจะช่วยคุณติดตาม จัดลําดับความสําคัญ และแก้ไขปัญหาด้านความเสถียรที่ทําให้คุณภาพของแอปลดลง

ดูขีดจํากัดของแพ็กเกจราคาและตั้งการแจ้งเตือนงบประมาณ

  • ตรวจสอบว่าคุณไม่ได้ใช้ถึงขีดจำกัดการใช้งานและโควต้าหลังจากเปลี่ยนไปใช้เวอร์ชันที่ใช้งานจริง โดยเฉพาะอย่างยิ่งหากคุณใช้แพ็กเกจ Spark แบบไม่มีค่าใช้จ่าย ลองอัปเกรดไปใช้แพ็กเกจราคาแบบจ่ายเมื่อใช้ Blaze

  • ตั้งค่าการแจ้งเตือนงบประมาณสำหรับโปรเจ็กต์

    • โปรดทราบว่าการแจ้งเตือนงบประมาณไม่ใช่ขีดจํากัดงบประมาณ การแจ้งเตือนจะส่งการสื่อสารถึงคุณเมื่อคุณใกล้ถึงหรือเกินเกณฑ์ที่กําหนดไว้เพื่อให้คุณดําเนินการในแอปหรือโปรเจ็กต์ได้

    • ลองตั้งค่าการแจ้งเตือนและการดําเนินการขั้นสูง เช่น ฟังก์ชันที่จะปิดใช้การเรียกเก็บเงินตามการแจ้งเตือน

  • ตรวจสอบการใช้งานในแดชบอร์ดเฉพาะผลิตภัณฑ์ หรือในแดชบอร์ดการใช้งานและการเรียกเก็บเงินส่วนกลางในคอนโซล Firebase

ตรวจสอบว่าโปรเจ็กต์และแอป Firebase เป็นไปตามแนวทางปฏิบัติแนะนำ

ไม่ว่าคุณจะเป็นนักพัฒนาแอปคนเดียวหรือเป็นทีมขนาดองค์กร สิ่งสำคัญคือต้องตรวจสอบว่าโปรเจ็กต์ แอป และทรัพยากร Firebase ได้รับการปกป้อง ปลอดภัย และสามารถพัฒนาไปพร้อมกับการเปลี่ยนแปลงในทีม

โปรดทราบว่าโปรเจ็กต์ Firebase เป็นเพียงGoogle Cloudโปรเจ็กต์ที่เปิดใช้บริการและการกำหนดค่า Firebase ซึ่งหมายความว่าแนวทางปฏิบัติแนะนำหลายอย่างที่ Google Cloud แนะนำก็ใช้กับ Firebase ได้เช่นกัน

  • ใช้โปรเจ็กต์ Firebase ที่แตกต่างกันสําหรับการพัฒนา การทดสอบ และการใช้งานจริง

    พยายามจำกัดการเปิดเผยโปรเจ็กต์ที่เชื่อมโยงกับแอปเวอร์ชันที่ใช้งานจริงของคุณโดยไม่คาดคิด ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าเวิร์กโฟลว์การพัฒนา

  • ปกป้องโปรเจ็กต์สำคัญ โดยเฉพาะโปรเจ็กต์ที่เชื่อมโยงกับแอปเวอร์ชันที่ใช้งานจริง

  • ลองสร้างGoogle Cloudองค์กรและเพิ่มโปรเจ็กต์ Firebase ลงในองค์กรนั้น หากยังไม่ได้ดำเนินการ

  • เพิ่มเจ้าของมากกว่า 1 คนลงในโปรเจ็กต์ Firebase โดยเฉพาะในกรณีที่โปรเจ็กต์ไม่ได้อยู่ในองค์กร Google Cloud ดูข้อมูลเพิ่มเติมเกี่ยวกับกรณีที่ควรมอบหมายเจ้าของและวิธีมอบหมายเจ้าของสำหรับโปรเจ็กต์ Firebase

  • เพิ่มสมาชิกโปรเจ็กต์ (หรือที่เรียกว่า "หลักการ") เป็นกลุ่ม Google แทนการเพิ่มทีละคน

    การใช้กลุ่มช่วยให้มอบหมายบทบาทให้กับสมาชิกทีมทีละหลายคนได้ง่ายขึ้น รวมถึงจัดการผู้ที่มีสิทธิ์เข้าถึงโปรเจ็กต์ Firebase โดยเฉพาะในกรณีที่สมาชิกทีมเปลี่ยนหรือลาออก

  • ให้สิทธิ์เข้าถึงระดับที่เหมาะสมแก่สมาชิกโปรเจ็กต์แต่ละคน (หรือที่เรียกว่า "ผู้ใช้หลัก") สำหรับโปรเจ็กต์และทรัพยากร Firebase ดูข้อมูลเพิ่มเติมในหัวข้อจัดการสิทธิ์เข้าถึงโปรเจ็กต์ด้วย Firebase IAM

  • ตรวจสอบว่าสมาชิกโปรเจ็กต์ที่เกี่ยวข้องแต่ละคน (หรือที่เรียกว่า "หลัก") ตั้งค่าค่ากําหนดของตนเองเพื่อรับการแจ้งเตือนเกี่ยวกับผลิตภัณฑ์หรือสถานะโปรเจ็กต์ที่เฉพาะเจาะจง (เช่น การเปลี่ยนแปลงแผนการเรียกเก็บเงินหรือขีดจํากัดโควต้า) ดูข้อมูลเพิ่มเติมในหัวข้อรับการแจ้งเตือน Firebase

    นอกจากนี้ คุณยังปรับแต่ง "รายชื่อติดต่อที่สำคัญ" ของโปรเจ็กต์ได้หากต้องการให้สมาชิกโปรเจ็กต์บางรายหรือรายเพิ่มเติมได้รับการแจ้งเตือน ซึ่งมีประโยชน์อย่างยิ่งในการช่วยให้มั่นใจว่าไม่ใช่แค่เจ้าของโปรเจ็กต์เท่านั้นที่จะได้รับแจ้งเกี่ยวกับการเปลี่ยนแปลงด้านการเรียกเก็บเงิน กฎหมาย และผลิตภัณฑ์

  • จำกัดคีย์ API ของ Firebase ไว้สำหรับ API ที่ต้องอยู่ในรายการที่อนุญาตของ API ของคีย์เท่านั้น นอกจากนี้ โปรดดูข้อมูลเกี่ยวกับคีย์ API ในรายการตรวจสอบความปลอดภัยของ Firebase

เตรียมบริการที่เฉพาะเจาะจงซึ่งใช้ในแอป

ผลิตภัณฑ์และบริการแต่ละรายการที่ใช้ในแอปอาจมีข้อควรพิจารณาเฉพาะเมื่อนำไปใช้ในเวอร์ชันที่ใช้งานจริง

Google Analytics

  • กําหนดเงื่อนไขกลุ่มเป้าหมายสําหรับ Google Analytics เพื่อเริ่มรวบรวมข้อมูลวิเคราะห์ตั้งแต่เปิดตัวแอป

  • ลองเปิดใช้การส่งออกข้อมูล Google Analytics ไปยัง BigQuery เพื่อให้คุณวิเคราะห์ข้อมูลด้วย BigQuery SQL หรือส่งออกข้อมูลเพื่อใช้กับเครื่องมือของคุณเองได้

  • จำกัดพร็อพเพอร์ตี้ผู้ใช้ไว้เฉพาะข้อมูลที่จะเป็นข้อมูลที่เกี่ยวข้องสำหรับวงจรชีวิตของแอปทั้งหมด โดยคุณสร้างพร็อพเพอร์ตี้ผู้ใช้ได้จํานวนจำกัดและเก็บถาวรไม่ได้

  • ตรวจสอบการตั้งค่าสำหรับบทบาท Google Analytics ของพร็อพเพอร์ตี้และบัญชี Google Analytics สิทธิ์เหล่านี้จะได้รับการจัดการแยกจากสิทธิ์และบทบาท IAM ของโปรเจ็กต์ Firebase

  • ตรวจสอบว่ารหัส App Store และรหัสทีม (หากจำเป็น) ถูกต้องในการตั้งค่าโปรเจ็กต์ของคอนโซล Firebase

App Check

  • ตรวจสอบว่ารหัสทีมถูกต้องในการตั้งค่าโปรเจ็กต์ของคอนโซล Firebase

  • หากยังไม่ได้เริ่ม ให้เริ่มบังคับใช้ Firebase App Check ในบริการทุกรายการที่รองรับ App Check ช่วยให้มั่นใจได้ว่ามีเพียงแอปจริงของคุณเท่านั้นที่เข้าถึงบริการและทรัพยากรแบ็กเอนด์ได้

Authentication

  • ปิดใช้ผู้ให้บริการที่คุณไม่ได้ใช้ (โดยเฉพาะการตรวจสอบสิทธิ์แบบไม่ระบุตัวตน)

  • หากแอปใช้ฟีเจอร์ลงชื่อเข้าใช้ด้วย Google ให้ปรับเปลี่ยนหน้าจอขอความยินยอม OAuth ในแบบของคุณ

  • ปรับแต่งโดเมนและผู้ส่งสำหรับAuthenticationบริการส่งอีเมล

  • หากคุณใช้บริการยืนยันทาง SMS ของ Identity Platform ให้เริ่มบังคับใช้ Firebase App Check และกำหนดค่านโยบายภูมิภาค SMS เพื่อปกป้องแอปจากการละเมิด SMS

  • ใช้การจัดการข้อผิดพลาดบนแพลตฟอร์ม Apple สำหรับข้อผิดพลาด Authentication ที่พบบ่อย

  • เพิ่มแฮช SHA-1 ของรุ่นสำหรับใบรับรองการรับรองของแอปในการตั้งค่าโปรเจ็กต์ของคอนโซล Firebase คุณต้องใช้แฮช SHA-1 หากแอปใช้การลงชื่อเข้าใช้ด้วยหมายเลขโทรศัพท์หรือฟีเจอร์ลงชื่อเข้าใช้ด้วย Google (ซึ่งมีข้อกำหนดไคลเอ็นต์ OAuth)

  • เพิ่มการควบคุมการเข้าถึงสำหรับโดเมนเพื่อป้องกันการใช้งานที่ไม่ได้รับอนุญาต กล่าวโดยละเอียดคือ ให้สิทธิ์เข้าถึงโดเมนเวอร์ชันที่ใช้งานจริงในส่วนAuthentication ของคอนโซล Firebase (สำคัญอย่างยิ่งหากคุณใช้ผลิตภัณฑ์ที่อาศัย Firebase Security Rules)

Cloud Firestore

Cloud Messaging

  • ลองเปิดใช้การส่งออกข้อมูล Cloud Messaging ไปยัง BigQuery เพื่อให้คุณวิเคราะห์ข้อมูลด้วย BigQuery SQL หรือส่งออกข้อมูลเพื่อใช้กับเครื่องมือของคุณเองได้

  • อัปโหลดคีย์การตรวจสอบสิทธิ์ APNS สำหรับ Cloud Messaging ในแอป Apple ในคอนโซล Firebase หากใช้ใบรับรอง APNS โปรดตรวจสอบว่าได้อัปโหลดใบรับรอง APNS เวอร์ชันที่ใช้งานจริงแล้ว

Cloud Storage

  • กำหนดค่า Cloud Storage Security Rules เพื่อป้องกันไม่ให้มีการใช้ข้อมูลโดยไม่ตั้งใจ

Crashlytics

  • ตรวจสอบว่าสมาชิกโปรเจ็กต์ที่เกี่ยวข้องแต่ละคน (หรือที่เรียกว่า "หลักการ") ตั้งค่าค่ากําหนดของตนเองเพื่อรับการแจ้งเตือนเกี่ยวกับCrashlyticsหรือสถานะโปรเจ็กต์ (เช่น การเปลี่ยนแปลงแพ็กเกจการเรียกเก็บเงินหรือขีดจํากัดโควต้า) ดูข้อมูลเพิ่มเติมในหัวข้อรับการแจ้งเตือน Firebase

  • ลองเปิดใช้การส่งออกข้อมูล Crashlytics ไปยัง BigQuery เพื่อให้คุณวิเคราะห์ข้อมูลด้วย BigQuery SQL หรือส่งออกข้อมูลเพื่อใช้กับเครื่องมือของคุณเองได้

  • (Android และ iOS เวอร์ชันเนทีฟเท่านั้น) ลองเปิดใช้ความช่วยเหลือจาก AI ใน Crashlytics เพื่อช่วยเร่งเวลาที่คุณใช้ในการทําความเข้าใจสาเหตุที่เกิดความขัดข้องและวิธีแก้ไข

  • อัปโหลดไฟล์ dSYM สำหรับบิลด์รุ่นที่ใช้ใน Crashlytics ตรวจสอบว่า Xcode สามารถประมวลผล dSYM และอัปโหลดไฟล์โดยอัตโนมัติ

  • อัปโหลดการแมป ProGuard สำหรับบิลด์รุ่นที่จะใช้ใน Crashlytics คุณสามารถอัปโหลดได้โดยใช้ Firebase CLI

  • ลิงก์ Firebase กับ Google Play เพื่อดูภาพรวมที่สมบูรณ์ยิ่งขึ้นเกี่ยวกับประสิทธิภาพของแอป Android เช่น คุณสามารถกรองรายงานข้อขัดข้องของแอปตามGoogle Playแทร็ก ซึ่งจะช่วยให้คุณมุ่งเน้นแดชบอร์ดไปยังบิลด์ที่เฉพาะเจาะจงได้ดียิ่งขึ้น

  • สำหรับบิลด์ที่กำหนดเป้าหมายเป็น Android และใช้ IL2CPP ให้ตรวจสอบว่าคุณอัปโหลดสัญลักษณ์แบบเนทีฟสําหรับการเรียกใช้บิลด์แต่ละรายการที่คุณต้องการมีสัญลักษณ์ ไม่ว่าจะมีการเปลี่ยนแปลงโค้ดหรือการกําหนดค่าหรือไม่ก็ตาม

Firebase ML

Performance Monitoring

  • ตรวจสอบว่าสมาชิกโปรเจ็กต์ที่เกี่ยวข้องแต่ละคน (หรือที่เรียกว่า "หลักการ") ตั้งค่ากำหนดเพื่อรับการแจ้งเตือนเกี่ยวกับPerformance Monitoringหรือสถานะโปรเจ็กต์ (เช่น การเปลี่ยนแปลงแพ็กเกจการเรียกเก็บเงินหรือขีดจำกัดโควต้า) ดูข้อมูลเพิ่มเติมในหัวข้อรับการแจ้งเตือน Firebase

  • ลองเปิดใช้การส่งออกข้อมูล Performance Monitoring ไปยัง BigQuery เพื่อให้คุณวิเคราะห์ข้อมูลด้วย BigQuery SQL หรือส่งออกข้อมูลเพื่อใช้กับเครื่องมือของคุณเองได้

Realtime Database

  • กำหนดค่า Realtime Database Security Rules เพื่อป้องกันไม่ให้มีการใช้ข้อมูลโดยไม่ตั้งใจ

  • ตรวจสอบว่าคุณพร้อมที่จะปรับขนาด Realtime Database มีโควต้าเริ่มต้นที่มากพอสำหรับแอปพลิเคชันส่วนใหญ่ แต่บางแอปอาจต้องใช้พื้นที่เก็บข้อมูลเพิ่ม

  • กำหนดค่ากฎ ProGuardเพื่อใช้กับ Realtime Database

Remote Config

  • ตรวจสอบว่ากฎRemote Config เวอร์ชันทดลองจะไม่ส่งผลต่อผู้ใช้รุ่นต่างๆ และแอปของคุณมีการเผยแพร่ค่าเริ่มต้นที่เหมาะสมสำหรับเซิร์ฟเวอร์และในแอป

Vertex AI in Firebase