Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Để nhanh chóng kiểm thử Firebase Security Rules đã cập nhật trong bảng điều khiển Firebase, hãy sử dụng Sân chơi quy tắc.
Rules Playground 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. Thông báo này sẽ 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ố mà bạn đặt cho hoạt động mô phỏng.
Sau đó, trong trình đơn đ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 Realtime Database, Cloud Firestore hoặc Bộ nhớ (nếu có), sau đó nhấp vào Quy tắc để chuyển đến trình chỉnh sửa Rules.
Sau khi chỉnh sửa, hãy nhấp vào Rules Playground (Sân chơi quy tắc) trong trình chỉnh sửa.
Trong phần cài đặt Sân chơi quy tắc, hãy chọn các lựa chọn cho thử nghiệm của bạn, bao gồm:
Kiểm thử lượt đọc hoặc ghi.
Một Vị trí cụ thể trong cơ sở dữ liệu hoặc vùng lưu trữ của bạn, dưới dạng một đường dẫn.
Loại xác thực – người dùng ẩn danh chưa xác thực, người dùng ẩn danh đã xác thực hoặc một mã nhận dạng người dùng cụ thể.
Dữ liệu dành riêng cho tài liệu mà các quy tắc của bạn tham chiếu cụ thể (ví dụ: nếu các quy tắc của bạn yêu cầu phải có một trường cụ thể trước khi cho phép ghi).
Nhấp vào Chạy và xem kết quả trong biểu ngữ phía trên trình chỉnh sửa.
Trường hợp mẫu về Rules Playground
Kiểm thử hành vi của Rules Playground bằng tình huống mẫu và các quy tắc cơ bản sau.
Cloud Firestore
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
}
}
}
Realtime Database
// 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"}}}}
Cloud Storage
// Grants a user access to a node matching their user IDservicefirebase.storage{match/b/{bucket}/o{// Files look like: "user/<UID>/file.txt"match/user/{userId}/{fileName}{allowread,write:ifrequest.auth!=null && request.auth.uid==userId;}}}
Trong trình chỉnh sửa Rules, hãy thêm quy tắc đã cho.
Chọn get trong trình đơn thả xuống Simulation type (Loại mô phỏng) rồi nhập một đường dẫn hợp lệ vào trường Location (Vị trí).
Bật Xác thực rồi chọn một loại xác thực trong trình đơn thả xuống Nhà cung cấp.
Nhập thông tin chi tiết về mã nhận dạng người dùng rồi nhấp vào Chạy.
Kết quả mô phỏng sẽ xuất hiện ở đầu trình chỉnh sửa. Tuỳ thuộc vào thông tin chi tiết về mã nhận dạng người dùng mà bạn đã nhập, bạn sẽ thấy một biểu ngữ xác nhận rằng yêu cầu đọc đã được cho phép hoặc bị từ chối.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-25 UTC."],[],[],null,["\u003cbr /\u003e\n\nTo quickly test your updated Firebase Security Rules in the Firebase console, use\nthe Rules Playground.\n| **Note:** To fully validate your app's behavior and verify your Firebase Security Rules \n| configurations, use the [Firebase Emulator](/docs/rules/emulator-setup) to run and automate unit tests in a local environment.\n\nThe Rules Playground is a convenient tool to use as you're exploring\nnew behaviors or quickly validating rules as you write them. It displays a\nmessage confirming that access was either allowed or denied according to the\nparameters you set for the simulation.\n\nUse the Rules Playground\n\n1. Open the [Firebase console](//console.firebase.google.com/) and select your project.\n2. Then, from the product navigation, do one of the following:\n - Select **Realtime Database** , **Cloud Firestore** , or **Storage** , as appropriate, then click **Rules** to navigate to the Rules editor.\n3. Once you've made your edits, click **Rules Playground** from the editor.\n4. In the *Rules Playground* settings, select options for your test, including:\n - Testing reads or writes.\n - A specific **Location** in your database or storage bucket, as a path.\n - Authentication type --- unauthenticated, authenticated anonymous user, or a specific user ID.\n - Document-specific data that your rules specifically reference (for example, if your rules require the presence of a specific field before allowing a write).\n5. Click **Run** and look for the results in the banner above the editor.\n\nSample Rules Playground scenario\n\nTest the Rules Playground behavior with the following sample scenario\nand basic rules. \n\nCloud Firestore \n\n service cloud.firestore {\n match /databases/{database}/documents {\n // Allow only authenticated content owners access\n match /some_collection/{document} {\n allow read, write: if request.auth != null && request.auth.uid == request.resource.data.author_uid\n }\n }\n }\n\nRealtime Database\n\n\u003cbr /\u003e\n\n```scilab\n // These rules grant access to a node matching the authenticated\n // user's ID from the Firebase auth token\n {\n \"rules\": {\n \"users\": {\n \"$uid\": {\n \".read\": \"$uid === auth.uid\",\n \".write\": \"$uid === auth.uid\"\n }\n }\n }\n }\n \n```\n\n\u003cbr /\u003e\n\nCloud Storage \n\n // Grants a user access to a node matching their user ID\n service firebase.storage {\n match /b/{bucket}/o {\n // Files look like: \"user/<UID>/file.txt\"\n match /user/{userId}/{fileName} {\n allow read, write: if request.auth != null && request.auth.uid == userId;\n }\n }\n }\n\n- In the Rules editor, add the rule given.\n\n-\n Select **get** from the **Simulation type** drop-down menu and enter a valid\n path in the **Location** field.\n\n- Toggle on **Authentication** and select an authentication type from the\n **Provider** drop-down.\n\n- Enter the user ID details and click **Run**.\n\nThe results of the simulation appear at the top of the editor. Depending on the\nuser ID details you entered, you should see a banner confirming the read\nwas either successfully allowed or denied."]]