Tôi gặp lỗi khi cố viết thư cho Firestore.Thiếu hoặc không đủ quyền khi viết vào trường sử dụng Firestore trong các quy tắc truy cập
Tôi đang cố gắng sử dụng trường chứa người dùng uid cho quy tắc bảo mật của tôi.
service cloud.firestore {
match /databases/{database}/documents {
match /messages/{document=**} {
allow read: if resource.data.user_uid == request.auth.uid;
allow write: if resource.data.user_uid == request.auth.uid;
}
}
}
Nếu tôi có dữ liệu trong cơ sở dữ liệu FireStore của tôi, các quy tắc đọc hoạt động tốt - nhưng khi tôi cố gắng để viết tôi nhận được: Error: Missing or insufficient permissions.
Có điều gì tôi đang làm sai với quy tắc viết này?
P.S. Nếu tôi thay đổi quy tắc của tôi vào đó, tôi có thể viết thư cho cơ sở dữ liệu của tôi - nhưng điều này không đủ an toàn cho các mục đích của tôi:
match /messages/{document=**} {
allow read: if resource.data.user_uid == request.auth.uid;
allow write: if request.auth != null;
}
Cảm ơn mà làm việc. Tài liệu Firebase cần cập nhật, họ chỉ cung cấp ví dụ để đọc, họ nên cung cấp ví dụ để viết quá .... –
@LeoFarmer có tài liệu khá rộng về các quy tắc bảo mật khác nhau tại đây: https://firebase.google.com/ docs/firestore/security/secure-data – Scarygami