Để nhanh chóng kiểm tra Quy tắc bảo mật Firebase đã cập nhật của bạn trong bảng điều khiển Firebase, hãy sử dụng Sân chơi quy tắc.
Sân chơi quy tắc là một công cụ thuận tiện để sử dụng khi bạn khám phá các hành vi mới hoặc nhanh chóng xác thực các quy tắc khi bạn viết chúng. Nó hiển thị một thông báo xác nhận rằng quyền truy cập được cho phép hoặc bị từ chối theo các thông số bạn đặt cho mô phỏng.
Sử dụng Sân chơi Nội quy
- Mở bảng điều khiển Firebase và chọn dự án của bạn.
- Sau đó, từ điều hướng sản phẩm, hãy thực hiện một trong các thao tác sau:
- Chọn Cơ sở dữ liệu thời gian thực , Cloud Firestore hoặc Lưu trữ , nếu thích hợp, sau đó nhấp vào Quy tắc để điều hướng đến trình chỉnh sửa Quy tắc.
- Khi bạn đã thực hiện các chỉnh sửa của mình, hãy nhấp vào Rules Playground từ trình chỉnh sửa.
- Trong cài đặt Rules Playground , hãy chọn các tùy chọn cho bài kiểm tra của bạn, bao gồm:
- Kiểm tra đọc hoặc ghi.
- Vị trí cụ thể trong cơ sở dữ liệu hoặc bộ chứa lưu trữ của bạn, dưới dạng đường dẫn.
- Loại xác thực — người dùng ẩn danh chưa được xác thực, được xác thực hoặc ID người dùng cụ thể.
- Dữ liệu dành riêng cho tài liệu mà quy tắc của bạn tham chiếu cụ thể (ví dụ: nếu quy tắc của bạn yêu cầu sự hiện diện của một trường cụ thể trước khi cho phép ghi).
- Nhấp vào Chạy và tìm kiếm kết quả trong biểu ngữ phía trên trình chỉnh sửa.
Nội quy mẫu Kịch bản sân chơi
Kiểm tra hành vi của Rules Playground với kịch bản mẫu và các quy tắc cơ bản sau đây.
Cửa hàng lửa trên đám mây
service cloud.firestore {
match /databases/{database}/documents {
// Allow only authenticated content owners access
match /some_collection/{document} {
allow read, write: if request.auth != null && request.auth.uid == request.resource.data.author_uid
}
}
}
Cơ sở dữ liệu thời gian thực
// These rules grant access to a node matching the authenticated // user's ID from the Firebase auth token { "rules": { "users": { "$uid": { ".read": "$uid === auth.uid", ".write": "$uid === auth.uid" } } } }
Lưu trữ đám mây
// Grants a user access to a node matching their user ID
service firebase.storage {
match /b/{bucket}/o {
// Files look like: "user/<UID>/path/to/file.txt"
match /user/{userId}/{allPaths=**} {
allow read, write: if request.auth != null && request.auth.uid == userId;
}
}
}
Trong trình chỉnh sửa Quy tắc, hãy thêm quy tắc đã cho ở trên.
Chọn lấy từ menu thả xuống Loại mô phỏng và nhập đường dẫn hợp lệ vào trường Vị trí .
Bật Xác thực và chọn loại xác thực từ menu thả xuống của Nhà cung cấp .
Nhập chi tiết ID người dùng và nhấp vào Chạy .
Kết quả mô phỏng xuất hiện ở đầu trình chỉnh sửa. Tùy thuộc vào chi tiết ID người dùng bạn đã nhập, bạn sẽ thấy một biểu ngữ xác nhận việc đọc được cho phép hoặc bị từ chối thành công.