Bắt đầu với Quy tắc bảo mật Firebase

Quy tắc bảo mật Firebase cung cấp khả năng bảo vệ mạnh mẽ, có thể tùy chỉnh hoàn toàn cho dữ liệu của bạn trong Cloud Firestore, Cơ sở dữ liệu thời gian thực và Cloud Storage. Bạn có thể dễ dàng bắt đầu với Quy tắc bằng cách làm theo các bước trong hướng dẫn này, bảo mật dữ liệu và bảo vệ ứng dụng của bạn khỏi những người dùng độc hại.

Hiểu ngôn ngữ Quy tắc bảo mật Firebase

Trước khi bắt đầu viết quy tắc, bạn nên dành chút thời gian để xem lại ngôn ngữ Quy tắc bảo mật Firebase cụ thể cho các sản phẩm Firebase mà bạn đang sử dụng. Cơ sở dữ liệu thời gian thực tận dụng cú pháp và cấu trúc JSON giống như JavaScript cho Quy tắc của nó. Ngoài ra, Cloud Firestore và Cloud Storage tận dụng tập hợp siêu Ngôn ngữ biểu thức chung (CEL) dựa trên matchallow các câu lệnh đặt điều kiện để truy cập tại một đường dẫn xác định.

Tìm hiểu thêm về ngôn ngữ Quy tắc bảo mật Firebase .

Thiết lập xác thực

Nếu bạn chưa làm điều đó, hãy xác định người dùng của bạn bằng Xác thực Firebase . Xác thực Firebase hỗ trợ nhiều phương thức xác thực phổ biến và tích hợp với Quy tắc bảo mật Firebase để cung cấp khả năng xác minh toàn diện.

Bạn có thể thiết lập thông tin xác thực tùy chỉnh bổ sung cho ứng dụng của mình.

Tìm hiểu thêm về Quy tắc bảo mật Firebase và Xác thực Firebase .

Xác định cấu trúc dữ liệu và quy tắc của bạn

Cách bạn cấu trúc dữ liệu có thể ảnh hưởng đến cách bạn cấu trúc và triển khai các quy tắc của mình. Khi bạn xác định cấu trúc dữ liệu của mình, hãy xem xét ý nghĩa của chúng đối với cấu trúc Quy tắc của bạn.

Ví dụ: trong Cloud Firestore, bạn có thể muốn bao gồm một trường biểu thị vai trò cụ thể cho từng người dùng. Sau đó, quy tắc của bạn có thể đọc trường đó và sử dụng trường đó để cấp quyền truy cập dựa trên vai trò.

Khi bạn xác định kiến ​​trúc dữ liệu và quy tắc của mình, hãy nhớ rằng, nếu bất kỳ quy tắc nào cấp quyền truy cập vào tập dữ liệu thì Quy tắc bảo mật Firebase sẽ cấp quyền truy cập vào tập dữ liệu đó. Nói cách khác, bạn không thể tinh chỉnh quyền truy cập ở đường dẫn phụ nếu bạn đã cấp quyền truy cập ở cấp cao hơn trong hệ thống phân cấp dữ liệu của mình.

Truy cập quy tắc của bạn

Để xem Quy tắc hiện có của bạn, hãy sử dụng Firebase CLI hoặc bảng điều khiển Firebase. Đảm bảo bạn chỉnh sửa các quy tắc của mình bằng cùng một phương pháp một cách nhất quán để tránh ghi đè nhầm các bản cập nhật. Nếu bạn không chắc chắn liệu các quy tắc được xác định cục bộ của mình có phản ánh các bản cập nhật gần đây nhất hay không, bảng điều khiển Firebase luôn hiển thị phiên bản Quy tắc bảo mật Firebase được triển khai gần đây nhất của bạn.

Để truy cập các quy tắc của bạn từ bảng điều khiển Firebase , hãy chọn dự án của bạn, sau đó điều hướng đến Cơ sở dữ liệu thời gian thực , Cloud Firestore hoặc Storage . Nhấp vào Quy tắc khi bạn đang ở đúng cơ sở dữ liệu hoặc nhóm lưu trữ.

Để truy cập các quy tắc của bạn từ Firebase CLI, hãy chuyển đến tệp quy tắc được ghi chú trong tệp firebase.json của bạn.

Viết các quy tắc cơ bản

Khi bạn đang phát triển ứng dụng và tìm hiểu Quy tắc, hãy thử triển khai một số Quy tắc bảo mật cơ bản , bao gồm các trường hợp sử dụng sau:

  • Chỉ chủ sở hữu nội dung: Hạn chế quyền truy cập vào nội dung của người dùng.
  • Truy cập hỗn hợp: Hạn chế quyền truy cập ghi của người dùng nhưng cho phép truy cập đọc công khai.
  • Quyền truy cập dựa trên thuộc tính: Hạn chế quyền truy cập đối với một nhóm hoặc loại người dùng.

Kiểm tra quy tắc của bạn

Để xác thực đầy đủ hành vi của ứng dụng và xác minh Quy tắc bảo mật Firebase của bạn
cấu hình, hãy sử dụng Trình mô phỏng Firebase để chạy và tự động hóa các thử nghiệm đơn vị trong môi trường cục bộ.

Nếu đang thiết lập Quy tắc bảo mật Firebase trong bảng điều khiển Firebase, bạn có thể sử dụng Trình mô phỏng quy tắc Firebase để nhanh chóng xác thực hành vi. Tuy nhiên, chúng tôi khuyên bạn nên thử nghiệm kỹ lưỡng hơn với Trình mô phỏng Firebase trước khi triển khai các thay đổi của mình vào sản xuất.

Triển khai quy tắc

Sử dụng bảng điều khiển Firebase hoặc Firebase CLI để triển khai các quy tắc của bạn vào sản xuất. Thực hiện theo các bước được nêu trong Quản lý và triển khai Quy tắc bảo mật Firebase .