Trang này cung cấp các phương pháp hay nhất chung, cấp cao để thiết lập dự án Firebase và đăng ký ứng dụng của bạn với một dự án để bạn có quy trình phát triển rõ ràng sử dụng các môi trường riêng biệt. Sau khi làm quen với các phương pháp hay nhất trên trang này, hãy xem hướng dẫn chung về bảo mật của chúng tôi.
Tìm hiểu hệ thống phân cấp của các dự án Firebase
Sơ đồ này cho thấy hệ thống phân cấp cơ bản của một dự án Firebase. Dưới đây là các mối quan hệ chính:
Dự án Firebase giống như một vùng chứa cho tất cả ứng dụng của bạn và mọi tài nguyên cũng như dịch vụ được cung cấp cho dự án.
Một dự án Firebase có thể có một hoặc nhiều Ứng dụng Firebase được đăng ký với dự án đó (ví dụ: cả phiên bản iOS và Android của một ứng dụng hoặc cả phiên bản miễn phí và trả phí của một ứng dụng).
Tất cả Ứng dụng Firebase được đăng ký với cùng một dự án Firebase đều chia sẻ và có quyền truy cập vào tất cả các tài nguyên và dịch vụ giống nhau được cung cấp cho dự án. Dưới đây là một số ví dụ:
Tất cả Ứng dụng Firebase được đăng ký với cùng một dự án Firebase đều chia sẻ cùng một phần phụ trợ, chẳng hạn như Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage, và Cloud Functions.
Tất cả Ứng dụng Firebase được đăng ký với cùng một dự án Firebase đều được liên kết với cùng một tài sản Google Analytics, trong đó mỗi Ứng dụng Firebase là một luồng dữ liệu riêng biệt trong tài sản đó.
Dự án Google Cloud phù hợp với hệ thống phân cấp này ở đâu?
Một khía cạnh của hệ thống phân cấp dự án Firebase không được hiển thị trong sơ đồ ở trên là mối quan hệ với dự án Google Cloud. Dự án Firebase thực ra chỉ là một dự án Google Cloud có thêm các cấu hình và dịch vụ dành riêng cho Firebase được bật cho dự án đó. Xin lưu ý rằng tất cả các ứng dụng được đăng ký với cùng một dự án Firebase cũng chia sẻ và có quyền truy cập vào tất cả các tài nguyên và dịch vụ giống nhau của Google Cloud, quá.
Tìm hiểu thêm về mối quan hệ giữa Firebase và Google Cloud trong Tìm hiểu về các dự án Firebase
Đăng ký các biến thể ứng dụng với dự án Firebase
Dưới đây là một số mẹo quan trọng để đăng ký các biến thể ứng dụng với một dự án Firebase:
Đảm bảo rằng tất cả các ứng dụng được đăng ký với một dự án Firebase đều là biến thể nền tảng của cùng một ứng dụng theo góc độ của người dùng cuối. Đăng ký phiên bản iOS, Android và web của cùng một ứng dụng hoặc trò chơi với cùng một dự án Firebase .
Nếu bạn có nhiều biến thể bản dựng có thể chia sẻ cùng một tài nguyên Firebase, hãy đăng ký các biến thể đó với cùng một dự án Firebase. Một số ví dụ là một blog và một ứng dụng web trong cùng một dự án, hoặc cả phiên bản miễn phí và trả phí của cùng một ứng dụng trong cùng một dự án.
Nếu bạn có nhiều biến thể bản dựng dựa trên trạng thái phát hành (thay vì dựa trên hoạt động hoặc quyền truy cập chung của người dùng cuối, như ở trên), hãy đăng ký từng biến thể với một dự án Firebase riêng biệt. Ví dụ: bản dựng gỡ lỗi so với bản phát hành – hãy đăng ký từng bản dựng này trong dự án Firebase riêng.
Các bản dựng dựa trên trạng thái phát hành không được chia sẻ cùng một tài nguyên Firebase vì điều đó có nguy cơ dữ liệu gỡ lỗi làm hỏng hoặc thậm chí ghi đè dữ liệu sản xuất.
Các biến thể nền tảng của mỗi biến thể bản dựng này phải nằm trong cùng một dự án Firebase. Ví dụ: đăng ký cả bản dựng gỡ lỗi iOS và Android trong một dự án Firebase "dev" vì cả hai đều có thể tương tác với cùng một dữ liệu và tài nguyên không phải sản xuất.
Tránh nhiều đối tượng thuê
Nhiều đối tượng thuê có thể dẫn đến các vấn đề nghiêm trọng về cấu hình và vấn đề về quyền riêng tư, bao gồm các vấn đề không mong muốn với việc tổng hợp số liệu phân tích, xác thực được chia sẻ, cấu trúc cơ sở dữ liệu quá phức tạp và khó khăn với các quy tắc bảo mật.
Nói chung, nếu một nhóm ứng dụng không chia sẻ cùng một dữ liệu và cấu hình, hãy cân nhắc kỹ việc đăng ký từng ứng dụng với một dự án Firebase khác.
Ví dụ: nếu bạn phát triển một ứng dụng nhãn trắng, thì mỗi ứng dụng được gắn nhãn độc lập phải có dự án Firebase riêng và các phiên bản iOS và Android của nhãn đó phải nằm trong cùng một dự án Firebase. Mỗi ứng dụng được gắn nhãn độc lập không được (vì lý do quyền riêng tư) chia sẻ dữ liệu với các ứng dụng khác.
Các bước tiếp theo
Xem lại hướng dẫn chung về bảo mật cho các môi trường khác nhau. Bạn cần đảm bảo rằng mỗi môi trường và dữ liệu của môi trường đó đều an toàn.