Nguyên tắc bảo mật chung cho nhiều môi trường quy trình phát triển

Trang này mô tả các phương pháp hay nhất và quan trọng nhất để bảo mật trên nhưng hãy xem xét Danh sách kiểm tra bảo mật để biết thêm chi tiết và hướng dẫn kỹ lưỡng về bảo mật và Firebase.

Bảo mật cho môi trường trước khi phát hành công khai

Một lợi ích của việc phân tách các môi trường trong nhiều dự án Firebase là đối tượng xấu có thể truy cập vào môi trường trước khi sản xuất sẽ không thể truy cập vào dữ liệu người dùng thực. Sau đây là các biện pháp bảo mật quan trọng nhất mà bạn cần thực hiện đối với môi trường trước khi phát hành công khai:

  • Hạn chế quyền truy cập vào môi trường thử nghiệm. Đối với ứng dụng dành cho thiết bị di động, hãy sử dụng App Distribution (hoặc tên tương tự) để phân phối một ứng dụng cho một nhóm người cụ thể. Khó hạn chế các ứng dụng web hơn; hãy cân nhắc thiết lập một hàm chặn cho các môi trường thử nghiệm trước khi phát hành để hạn chế quyền truy cập của những người dùng có địa chỉ email dành riêng cho miền của bạn. Hoặc, nếu bạn đang sử dụng Firebase Hosting thân mến, hãy thiết lập quy trình công việc trước khi sản xuất URL xem trước tạm thời.

  • Khi một môi trường không cần được duy trì và chỉ có một môi trường sử dụng người (hoặc trong trường hợp thử nghiệm là bằng một máy), hãy sử dụng Firebase Local Emulator Suite. Những trình mô phỏng này an toàn hơn và nhanh hơn vì chúng có thể hoạt động hoàn toàn trên máy chủ cục bộ thay vì sử dụng đám mây của chúng tôi.

  • Đảm bảo rằng bạn đã thiết lập Firebase Security Rules trong môi trường trước khi phát hành, giống như trong môi trường phát hành chính thức. Nhìn chung, Rules phải giống nhau trên các môi trường, với lưu ý là vì các quy tắc thay đổi theo mã, nên có thể có các quy tắc trước đó trong quy trình chưa tồn tại trong môi trường phát hành chính thức.

Bảo mật cho môi trường thực tế

Dữ liệu phát hành chính thức luôn là mục tiêu, ngay cả khi ứng dụng không rõ ràng. Đang làm theo các nguyên tắc này không ngăn hành vi xấu xa lấy được dữ liệu của bạn, nhưng điều này khiến việc này khó khăn hơn:

  • Bật và thực thi App Check cho tất cả sản phẩm mà bạn đang sử dụng phần hỗ trợ đó. App Check đảm bảo rằng các yêu cầu đến các dịch vụ phụ trợ đến từ ứng dụng chính thống của bạn. Để sử dụng công cụ này, bạn cần đăng ký từng phiên bản ứng dụng với App Check. Cách này dễ hơn thiết lập trước khi bạn có người dùng, vì vậy, hãy thiết lập càng sớm càng tốt.

  • Viết Firebase Security Rules mạnh mẽ. Realtime Database, Cloud FirestoreCloud Storage đều dựa vào Rules do nhà phát triển định cấu hình để thực thi những người có thể và không thể truy cập vào dữ liệu. Cần phải bảo mật mà bạn viết Rules tốt. Nếu không biết cách làm, hãy bắt đầu từ lớp học lập trình này.

  • Xem Danh sách kiểm tra bảo mật để biết thêm thông tin đề xuất về tính bảo mật cho môi trường thực tế.

Các bước tiếp theo