Xác thực nhanh các quy tắc bảo mật của Firebase

Để nhanh chóng kiểm tra Quy tắc bảo mật Firebase được cập nhật của bạn trong bảng điều khiển Firebase, hãy sử dụng Rules Playground.

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 nhận 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 tham số bạn đặt cho mô phỏng.

Sử dụng Sân chơi quy tắc

  1. Mở bảng điều khiển Firebase và chọn dự án của bạn.
  2. Sau đó, từ điều hướng sản phẩm, hãy thực hiện một trong những thao tác sau:
    • Chọn Cơ sở dữ liệu thời gian thực , Cloud Firestore hoặc Storage , 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.
  3. Sau khi bạn thực hiện chỉnh sửa xong, hãy nhấp vào Rules Playground từ trình chỉnh sửa.
  4. 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 viết.
    • Một Vị trí cụ thể trong cơ sở dữ liệu hoặc nhóm 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).
  5. Nhấp vào Chạy và tìm kết quả trong biểu ngữ phía trên trình chỉnh sửa.

Kịch bản sân chơi quy tắc mẫu

Kiểm tra hành vi của Rules Playground bằng kịch bản mẫu và các quy tắc cơ bản sau.

Cửa hàng đá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 được đưa ra ở 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ừ danh sách thả xuống 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 soạn thảo. Tùy thuộc vào chi tiết ID người dùng bạn đã nhập, bạn sẽ thấy biểu ngữ xác nhận việc đọc được cho phép hoặc bị từ chối thành công.