หลักเกณฑ์ด้านความปลอดภัยทั่วไปสำหรับสภาพแวดล้อมเวิร์กโฟลว์การพัฒนาซอฟต์แวร์ที่แตกต่างกัน

หน้านี้อธิบายแนวทางปฏิบัติแนะนำที่สำคัญที่สุดสำหรับการรักษาความปลอดภัยในสภาพแวดล้อมต่างๆ แต่โปรดอ่านรายการตรวจสอบความปลอดภัยเพื่อดูคำแนะนำโดยละเอียดและถี่ถ้วนยิ่งขึ้นเกี่ยวกับการรักษาความปลอดภัยและ Firebase

การรักษาความปลอดภัยสำหรับสภาพแวดล้อมก่อนการผลิตจริง

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

  • จำกัดการเข้าถึงสภาพแวดล้อมก่อนการผลิต สำหรับแอปบนอุปกรณ์เคลื่อนที่ ให้ใช้ App Distribution (หรือสิ่งที่คล้ายกัน) เพื่อเผยแพร่แอปไปยังกลุ่มคนที่เฉพาะเจาะจง เว็บแอปพลิเคชันจะจำกัดได้ยากกว่า ให้พิจารณาตั้งค่าฟังก์ชันการบล็อกสำหรับสภาพแวดล้อมก่อนการผลิตที่จำกัดการเข้าถึงเฉพาะผู้ใช้ที่มีอีเมลเฉพาะสำหรับโดเมนของคุณ หรือหากใช้ Firebase Hosting ให้ตั้งค่าเวิร์กโฟลว์ก่อนการผลิตเพื่อใช้ URL ตัวอย่างชั่วคราว

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

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

การรักษาความปลอดภัยสำหรับสภาพแวดล้อมฮาร์ดแวร์และซอฟต์แวร์

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

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

  • เขียน Firebase Security Rules ที่มีประสิทธิภาพ Realtime Database, Cloud Firestore และ Cloud Storage ต่างก็อาศัย Security Rules ที่นักพัฒนาแอปกำหนดค่าไว้เพื่อบังคับใช้ว่าใครควรและไม่ควรเข้าถึงข้อมูลได้ การเขียน Security Rules ที่ดีเป็นสิ่งสำคัญต่อความปลอดภัยของคุณ หากไม่แน่ใจว่าต้องทำอย่างไร ให้เริ่มด้วย Codelab นี้

  • ดูคำแนะนำเพิ่มเติมเกี่ยวกับความปลอดภัยสำหรับสภาพแวดล้อมฮาร์ดแวร์และซอฟต์แวร์ได้ในเช็กลิสต์สำหรับการรักษาความปลอดภัย

ขั้นตอนถัดไป