Bắt đầu sử dụng Quy tắc bảo mật của Firebase

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

Tìm hiểu ngôn ngữ của Quy tắc bảo mật của Firebase

Trước khi bắt đầu viết quy tắc, bạn nên dành thời gian xem lại ngôn ngữ cụ thể của Quy tắc bảo mật Firebase cho các sản phẩm Firebase mà bạn đang sử dụng. Cloud Storage tận dụng tập mẹ của Ngôn ngữ biểu thức chung (CEL) dựa trên câu lệnh matchallow đặt điều kiện truy cập tại một đường dẫn đã xác định.

Hãy bắt đầu bằng cách tìm hiểu cú pháp cốt lõi của ngôn ngữ Quy tắc bảo mật Firebase.

Thiết lập chế độ xác thực

Nếu bạn chưa thực hiện, hãy thêm tính năng Xác thực Firebase vào ứng dụng. Tính năng 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 của 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 bổ sung, tuỳ chỉnh cho ứng dụng của mình.

Tìm hiểu thêm về Quy tắc bảo mật của Firebase và tính năng xác thực Firebase.

Xác định cấu trúc dữ liệu và quy tắc

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 những ngụ ý mà chúng có thể có đối với cấu trúc Quy tắc của bạn.

Ví dụ: trong Cloud Storage, bạn có thể thêm một trường biểu thị vai trò cụ thể của từng người dùng. Sau đó, các quy tắc có thể đọc và sử dụng trường đó để cấp quyền truy cập dựa trên vai trò. Bạn cũng có thể tạo cơ sở dữ liệu trên Cloud Firestore, lưu trữ các tiêu chí truy cập trong các tài liệu trên Cloud Firestore, sau đó truy cập vào các tài liệu đó từ các Quy tắc bảo mật của Cloud Storage.

Khi bạn xác định cấu trúc dữ liệu và quy tắc, hãy lưu ý cách quy tắc phân tầng hoặc không phân tầng, tuỳ thuộc vào sản phẩm của bạn. Với Cơ sở dữ liệu theo thời gian thực, các quy tắc hoạt động từ trên xuống, trong đó các quy tắc nông hơn sẽ ghi đè các quy tắc sâu hơn. Nếu một quy tắc cấp quyền đọc hoặc ghi tại một đường dẫn cụ thể, thì quy tắc đó cũng cấp quyền truy cập vào tất cả các nút con trong đó. Ngược lại, với Cloud Firestore và Cloud Storage, các quy tắc chỉ áp dụng ở các cấp được chỉ định trong hệ phân cấp dữ liệu và bạn phải viết các quy tắc rõ ràng để kiểm soát quyền truy cập vào các cấp khác nhau.

Truy cập vào các quy tắc của bạn

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

Để truy cập vào các quy tắc của bạn từ bảng điều khiển của Firebase, hãy chọn dự án của bạn, sau đó trong bảng điều hướng bên trái, hãy nhấp vào Bộ nhớ. Nhấp vào Rules (Quy tắc) sau khi bạn đã vào đúng bộ chứa cơ sở dữ liệu hoặc bộ nhớ.

Để truy cập vào các quy tắc của bạn từ Giao diện dòng lệnh (CLI) của Firebase, 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 các Quy tắc, hãy thử triển khai Quy tắc để giải quyết một số trường hợp sử dụng cơ bản, bao gồm:

  • Chỉ chủ sở hữu nội dung: Hạn chế quyền truy cập vào nội dung theo người dùng.
  • Quyền truy cập hỗn hợp: Hạn chế quyền ghi của người dùng, nhưng cho phép quyền đọ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 vào một nhóm hoặc loại người dùng.

Kiểm tra quy tắc

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

Triển khai quy tắc

Sử dụng bảng điều khiển của Firebase hoặc Firebase CLI để triển khai các quy tắc của bạn vào giai đoạn phát hành chính thức. Làm theo các bước được nêu trong bài viết Quản lý và triển khai Quy tắc bảo mật của Firebase.