Aturan Penyimpanan Firebase dengan Klaim Kustom

Blog

Aturan Penyimpanan Firebase dengan Klaim Kustom

Saya tidak dapat membuat Firebase Storage berfungsi dengan aturan khusus dan menggunakan klaim khusus.

Di panel Admin Python saya, saya melakukan hal berikut untuk membuat pengguna dan menetapkan klaim client_id:

# Standard Auth import firebase_admin from firebase_admin import db, storage, auth cred = firebase_admin.credentials.Certificate('path_to_cert_json') app = firebase_admin.initialize_app(cred, 'config') bucket = storage.bucket(app=app) 

auth.set_custom_user_claims(uid, {‘client_id’: client_id})

Kemudian untuk aturan Firebase, saya mencoba mengizinkan pengguna untuk hanya membaca (atau mengunduh) file ketika file tersebut berada dalam subfolder dengan client_id:

Struktur file pada penyimpanan:

/{environment}/{client_id}/other_folders_and_files  

Saya menetapkan aturan penyimpanan berikut:

service firebase.storage {  
match /b/{bucket}/o {
match /{environment}/{client_id}/{allPaths=**} {
allow read: if request.auth.token.client_id == client_id
}
}
}

Tapi itu memberi saya kesalahan bahwa Izin ditolak.

Apa yang saya lakukan salah?

Catatan:

  • client_id benar dan struktur folder benar, telah memeriksa ini jutaan kali.


#python #firebase