Skip to main content

เพิ่ม Database ให้ตะกร้าสินค้า

รู้จักกับ Security rule ใน Realtime database

Document ต้นฉบับ: https://firebase.google.com/docs/database/security

เช่นเดียวกันกับ Firestore Realtime database เองก็สามารถจำกัดสิทธิ์ได้

  • สามารถใช้งานร่วมกับ authentication ได้
  • ใช้งานร่วมกับข้อมูลใหม่ที่เข้ามาได้
  • สามารถใช้กำหนด index เพื่อการเรียงข้อมูลและ query data ได้

ใน Session นี้เราจะพาเล่นการดักตาม authentication กัน

เพิ่ม security rule ให้ตะกร้า

โจทย์คือ

  • ไม่ให้คนอื่น (นอกจากเจ้าของ) มาดึงข้อมูลตะกร้าได้
  • ส่วนเพิ่มเติม banner อ่านได้แต่เขียนไม่ได้
{
"rules": {
"banner": {
".read": true,
".write": false
},
"carts": {
"$uid": {
".read": "$uid === auth.uid",
".write": "$uid === auth.uid"
}
}
}
}

ดังนั้นเมื่อเราพยายามเปลี่ยน uid ให้ไม่ตรงกับ user คนนั้นก็จะเจอ error ออกมาได้

security-01