เดิมที ความปลอดภัยเป็นเรื่องที่ซับซ้อนที่สุดเรื่องหนึ่งของแอป ที่กำลังพัฒนา ในแอปพลิเคชันส่วนใหญ่ นักพัฒนาซอฟต์แวร์จะต้องสร้างและเรียกใช้เซิร์ฟเวอร์ที่ จัดการการตรวจสอบสิทธิ์ (ผู้ใช้คือใคร) และการให้สิทธิ์ (สิ่งที่ผู้ใช้ทําได้) การตรวจสอบสิทธิ์และการให้สิทธิ์นั้นตั้งค่าได้ยาก ทำให้ถูกต้องได้ยากขึ้น สำคัญต่อความสำเร็จของผลิตภัณฑ์ของคุณ
เช่นเดียวกับวิธีที่การตรวจสอบสิทธิ์ของ Firebase ช่วยให้คุณตรวจสอบสิทธิ์ กฎการรักษาความปลอดภัยของ Firebase สำหรับ Cloud Storage ช่วยให้คุณให้สิทธิ์ผู้ใช้ได้อย่างสะดวก และตรวจสอบคำขอ กฎการรักษาความปลอดภัยของ Cloud Storage จะจัดการความซับซ้อนให้คุณโดย ซึ่งช่วยให้คุณระบุสิทธิ์ตามเส้นทางได้ เพียงใช้โค้ดเพียงไม่กี่บรรทัด คุณก็จะ สามารถเขียนกฎการให้สิทธิ์ที่จำกัดคำขอ Cloud Storage เฉพาะ ผู้ใช้บางคนหรือจำกัดขนาดของการอัปโหลด
ฐานข้อมูลเรียลไทม์ของ Firebase มีฟีเจอร์ที่คล้ายกันที่เรียกว่า กฎความปลอดภัยของฐานข้อมูลเรียลไทม์ของ Firebase
การตรวจสอบสิทธิ์
การรู้ว่าผู้ใช้ของคุณคือใครคือส่วนสำคัญในการสร้างแอปพลิเคชัน และ
การตรวจสอบสิทธิ์ Firebase เป็นโซลูชันที่ใช้งานง่าย ปลอดภัย และฝั่งไคลเอ็นต์เท่านั้น
การตรวจสอบสิทธิ์ กฎการรักษาความปลอดภัยของ Firebase สำหรับ Cloud Storage จะเชื่อมโยงกับการตรวจสอบสิทธิ์ Firebase
เพื่อความปลอดภัยตามผู้ใช้ เมื่อผู้ใช้ได้รับการตรวจสอบสิทธิ์ด้วยการตรวจสอบสิทธิ์ Firebase
ตัวแปร request.auth
ในกฎความปลอดภัยของ Cloud Storage จะกลายเป็นออบเจ็กต์ที่
มีรหัสที่ไม่ซ้ำกัน (request.auth.uid
) ของผู้ใช้และผู้ใช้รายอื่นๆ
ในโทเค็น (request.auth.token
) เมื่อผู้ใช้ไม่ได้อยู่
ตรวจสอบสิทธิ์แล้ว request.auth
คือ null
ซึ่งจะช่วยให้คุณควบคุม
การเข้าถึงข้อมูลตามผู้ใช้แต่ละราย ดูข้อมูลเพิ่มเติมใน
การตรวจสอบสิทธิ์
การให้สิทธิ์
การระบุผู้ใช้เป็นเพียงส่วนหนึ่งของการรักษาความปลอดภัยเท่านั้น เมื่อคุณทราบว่าพวกเขาเป็นใคร คุณ ต้องการวิธีควบคุมการเข้าถึงไฟล์ใน Cloud Storage
Cloud Storage ช่วยให้คุณระบุการให้สิทธิ์ตามไฟล์และตามเส้นทางได้
กฎที่ทำงานบนเซิร์ฟเวอร์ของเราและกำหนดสิทธิ์การเข้าถึงไฟล์ในแอปของคุณ
เช่น กฎความปลอดภัยของ Cloud Storage เริ่มต้นต้องมีการตรวจสอบสิทธิ์ Firebase ใน
เพื่อดำเนินการ read
หรือ write
กับไฟล์ทั้งหมด:
service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { allow read, write: if request.auth != null; } } }
คุณสามารถแก้ไขกฎเหล่านี้ได้โดยเลือกแอป Firebase ในคอนโซล Firebase
และดูแท็บ Rules
ของส่วนพื้นที่เก็บข้อมูล
การตรวจสอบข้อมูล
นอกจากนี้ยังใช้กฎความปลอดภัยของ Firebase สำหรับ Cloud Storage เพื่อตรวจสอบข้อมูลได้อีกด้วย ซึ่งได้แก่
การตรวจสอบชื่อและเส้นทางของไฟล์ รวมถึงคุณสมบัติข้อมูลเมตาของไฟล์
contentType
และ size
service firebase.storage { match /b/{bucket}/o { match /images/{imageId} { // Only allow uploads of any image file that's less than 5MB allow write: if request.resource.size < 5 * 1024 * 1024 && request.resource.contentType.matches('image/.*'); } } }
ขั้นตอนถัดไป
เริ่มต้น การพัฒนากฎการวางแผน สำหรับที่เก็บข้อมูล Cloud Storage
ดูข้อมูลเพิ่มเติมเกี่ยวกับการรักษาความปลอดภัยของข้อมูล โดยใช้กฎความปลอดภัย