จำกัด การเข้าถึง firebase ให้กับแอป Android เดียวโดยไม่มีการตรวจสอบสิทธิ์ [ซ้ำกัน]

ฉันต้องเข้าถึงรูปภาพแบบอ่าน/เขียนจากที่เก็บข้อมูล Firebase ไม่มีสิ่งอำนวยความสะดวกในการตรวจสอบความถูกต้อง จะจำกัดการจัดการข้อมูลผ่านแอปอย่างเดียวได้อย่างไร

กฎเกณฑ์ที่มีอยู่เพื่อให้ประชาชนเข้าถึงได้คือ

rules_version = '2';
service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write;
    }
  }
}

person Viswanath Kumar Sandu    schedule 22.10.2019    source แหล่งที่มา


คำตอบ (2)


ไม่มีวิธีใดที่จะจำกัดการเข้าถึงไฟล์ผ่าน Firebase SDK ให้กับแอปพลิเคชันของคุณเท่านั้น วิธีการดังกล่าวใช้ไม่ได้ผลในสภาพแวดล้อมแบบคลาวด์

ดูเพิ่มเติมที่:

แม้ว่าสิ่งเหล่านี้มักจะเกี่ยวกับผลิตภัณฑ์ Firebase อื่นๆ แต่ตรรกะเดียวกันนี้ใช้กับพื้นที่เก็บข้อมูล

คุณจะต้องอธิบายในกฎความปลอดภัยของคุณถึงสิ่งที่สามารถทำได้กับไฟล์ใน Cloud Storage ผ่าน Firebase API จากนั้น (หากจำเป็น) ใครสามารถทำสิ่งเหล่านั้นได้โดยใช้ Firebase Authentication ด้วยเช่นกัน

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

person Frank van Puffelen    schedule 22.10.2019

ตามเอกสาร

Cloud Storage จัดเก็บไฟล์ของคุณไว้ในที่เก็บข้อมูล Google Cloud Storage ทำให้สามารถเข้าถึงได้ผ่านทั้ง Firebase และ Google Cloud

แม้ว่า firebase จะไม่รองรับโดยตรง แต่ Google Cloud มีตัวเลือกในการจำกัด API ให้กับลายเซ็นชื่อแพ็คเกจแอปพลิเคชันเฉพาะเท่านั้น ฉันลองใช้ MAP sdk แล้ว แต่ตามทฤษฎีแล้วที่เก็บข้อมูลก็ควรใช้งานได้เช่นกัน

person touhid udoy    schedule 22.10.2019