Firebase tích hợp với Application Design Center (ADC) từ Google Cloud để giúp khách hàng doanh nghiệp đáp ứng nhu cầu về tiêu chuẩn hoá và quản trị, đồng thời cho phép nhà phát triển ứng dụng của họ phát hành ứng dụng một cách nhanh chóng. Việc sử dụng ADC đảm bảo rằng cơ sở hạ tầng tuân thủ các tiêu chuẩn và phương pháp hay nhất của tổ chức thông qua các mẫu được xác định trước. Các mẫu này xác định các biện pháp bảo vệ để cung cấp tài nguyên, cấp quyền IAM, v.v.
Trên trang này, bạn có thể tìm hiểu về những nội dung sau:
- Tổng quan về ADC và Firebase, bao gồm cả các sản phẩm được hỗ trợ của Firebase
- Các nhân vật chính và các vai trò IAM bắt buộc để kiểm soát quyền truy cập
- Quy trình chung
Tổng quan về ADC và Firebase
Bạn nên xem tài liệu về Google Cloud để biết thông tin tổng quan về ADC. Tài liệu Google Cloud cũng cung cấp một số hướng dẫn chuyên sâu về ADC, bao gồm cả các khái niệm chính và hướng dẫn thiết lập ban đầu.
Khi sử dụng ADC, "ứng dụng" được định nghĩa là một nhóm tài nguyên và dịch vụ logic cùng nhau cung cấp một chức năng kinh doanh. Đối với nhà phát triển Firebase, bạn có thể coi ADC "ứng dụng" tương đương với một dự án Firebase, trong đó mọi ứng dụng đã đăng ký trên iOS, Android và web đề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 cho dự án.
Để bắt đầu, bạn nên làm việc với ADC bằng cách sử dụng trải nghiệm GUI của họ có tên là canvas thiết kế có trong bảng điều khiển Google Cloud. Canvas thiết kế cho phép bạn trực quan hoá và tạo sơ đồ kiến trúc của cơ sở hạ tầng mà bạn muốn cung cấp cho các ứng dụng của mình.
Xin lưu ý rằng ADC được Terraform hỗ trợ, vì vậy, bạn sẽ luôn có quyền truy cập vào định nghĩa mã của cơ sở hạ tầng được xác định bằng ADC.
Các sản phẩm được hỗ trợ của Firebase
Dưới đây là bộ sản phẩm Firebase được hỗ trợ ban đầu có thể dùng với ADC:
- Firebase AI Logic
- Firebase Authentication
- Firebase App Check
- Cloud Firestore
- Firebase Security Rules
Các đối tượng chính sử dụng ADC
Một cách phổ biến để hiểu và sử dụng ADC là chia nhỏ các tác vụ liên quan đến ADC dựa trên 2 nhân vật:
Kỹ sư nền tảng: Người này thiết kế, xác minh và xuất bản các mẫu ADC có thể dùng lại và được thực thi theo chính sách vào một danh mục ADC.
Nhà phát triển ứng dụng: Persona này sử dụng các mẫu ADC đã xuất bản (chẳng hạn như trong danh mục ADC của nhóm) để định cấu hình và triển khai cơ sở hạ tầng. Họ cũng phát triển toàn bộ mã nguồn và các tính năng thực tế của ứng dụng.
Các vai trò IAM bắt buộc để kiểm soát quyền truy cập
Bằng cách chỉ định vai trò IAM, bạn có thể kiểm soát những thành viên dự án (hoặc người dùng) nào có thể thực hiện các tác vụ cụ thể.
Ví dụ: bạn có thể chỉ định vai trò Quản trị viên Trung tâm thiết kế ứng dụng (roles/designcenter.admin) cho Kỹ sư nền tảng cần tạo và chỉ định không gian, quản lý danh mục và thiết kế mẫu. Tuy nhiên, bạn có thể chỉ cần chỉ định vai trò Trình chỉnh sửa ứng dụng (roles/designcenter.applicationEditor) cho Nhà phát triển ứng dụng để họ có thể sử dụng mẫu, nhưng không thể tạo mẫu.
Bảng sau đây mô tả các tác vụ liên quan đến ADC, đối tượng mục tiêu và vai trò bắt buộc của các tác vụ đó:
| Việc cần làm | Đối tượng sử dụng | Vai trò IAM 1 |
|---|---|---|
| Tạo và quản lý mẫu | ||
|
Quản lý toàn bộ ADCvòng đời (bao gồm cả việc quản lý không gian, danh mục, mẫu, định cấu hình và triển khai ứng dụng) |
Kỹ sư nền tảng |
Quản trị viên Trung tâm thiết kế ứng dụng ( roles/designcenter.admin |
| Tạo và quản lý mẫu cũng như định cấu hình và triển khai ứng dụng | Kỹ sư nền tảng |
Người dùng Trung tâm thiết kế ứng dụng ( roles/designcenter.user |
| Tạo tài khoản dịch vụ để triển khai các ứng dụng ADC | ||
| Tạo tài khoản dịch vụ | Kỹ sư nền tảng |
Tạo tài khoản dịch vụ ( roles/iam.serviceAccountCreator |
| Cấp cho tài khoản dịch vụ quyền truy cập vào dự án dùng cho việc triển khai ADC | Kỹ sư nền tảng |
Quản trị viên IAM của dự án ( roles/resourcemanager.projectIamAdmin |
| Định cấu hình và triển khai các ứng dụng ADC | ||
|
Kiểm soát toàn bộ vòng đời của ứng dụng (bao gồm cả việc tích hợp với mã nguồn và hệ thống CI/CD) |
Nhà phát triển ứng dụng |
Quản trị viên ứng dụng ( roles/designcenter.applicationAdmin |
| Định cấu hình và triển khai các ứng dụng dựa trên các mẫu và mối kết nối hiện có do Quản trị viên thiết lập | Nhà phát triển ứng dụng |
Trình chỉnh sửa ứng dụng ( roles/designcenter.applicationEditor |
1 Bạn cần thiết lập một số vai trò này trên dự án quản lý, đây là một tài nguyên cấp cao nhất trong hệ phân cấp Google Cloud.
Quy trình làm việc chung
Phần này mô tả quy trình chung để tạo và sử dụng một mẫu ADC. Các bước được gắn thẻ với người thường thực hiện bước đó.
- Bước 1: Thiết lập ADC (Kỹ sư nền tảng)
- Bước 2: Tạo một mẫu (Kỹ sư nền tảng)
- Bước 3: Sử dụng mẫu (Nhà phát triển ứng dụng)
- Bước 4: Phát triển ứng dụng thực tế (Nhà phát triển ứng dụng)
Bước 1: Thiết lập ADC (Kỹ sư nền tảng)
Nhân viên kỹ thuật nền tảng (hoặc cấp bậc cao hơn) hoàn thành những nhiệm vụ này để thiết lập ADC. Bạn thường chỉ cần hoàn tất các tác vụ này một lần để thiết lập mọi thứ cần thiết để sử dụng ADC.
Thiết lập ADC ban đầu.
Làm theo các bước và hướng dẫn trong hướng dẫn thiết lập ban đầu cho ADC trong tài liệu Google Cloud. Xin lưu ý rằng hướng dẫn này giả định rằng bạn sẽ thiết lập giới hạn ở cấp thư mục.
Sau khi hoàn tất quá trình thiết lập này, bạn sẽ có một không gian, đây là một khu vực riêng biệt để nhóm cộng tác, tạo mẫu và triển khai các ứng dụng. Đảm bảo rằng không gian này (cũng như thư mục và danh mục) được chia sẻ với tất cả những người mà bạn muốn làm việc cùng ADC.
Thiết lập quyền truy cập và người dùng cho không gian.
Làm theo các bước trong phần Quản lý người dùng trong không gian đối với ADC trong tài liệu về Google Cloud. Làm theo hướng dẫn được mô tả trước đó trên trang này về Các vai trò IAM bắt buộc để kiểm soát quyền truy cập.
Chuẩn bị trước các dự án.
Tạo một hoặc nhiều dự án Google Cloud mới trong thư mục. Đảm bảo rằng bạn liên kết một tài khoản Cloud Billing với các dự án này. Các dự án này sẽ được Nhà phát triển ứng dụng của bạn sử dụng khi họ triển khai cơ sở hạ tầng được xác định trong mẫu.
Định cấu hình tài khoản dịch vụ triển khai.
ADC quản lý việc cung cấp tài nguyên tự động bằng tài khoản dịch vụ có phạm vi hạn chế. Điều này ngăn Nhà phát triển ứng dụng sử dụng tài khoản của riêng họ để triển khai cơ sở hạ tầng.
ADC có thể tự động tạo một tài khoản dịch vụ có phạm vi hẹp thay cho bạn khi bạn kiểm thử việc triển khai các mẫu mà bạn tạo. Bạn cũng có thể sử dụng tài khoản dịch vụ của riêng mình có các quyền mà bạn cho là phù hợp với Nhà phát triển ứng dụng.
Bước 2: Tạo mẫu (Kỹ sư nền tảng)
Nhân vật Kỹ sư nền tảng sử dụng canvas thiết kế hoặc thậm chí Gemini Cloud Assist để tạo mẫu ADC mới.
Xác định tài nguyên.
Sử dụng canvas thiết kế, kéo và thả các thành phần vào canvas rồi tạo mối kết nối giữa các thành phần đó. Đây là cách bạn xác định những dịch vụ Firebase (và Google Cloud) mà bạn muốn Nhà phát triển ứng dụng sử dụng.
Ví dụ: mẫu có thể xác định các tài nguyên như sau:
- Nhà phát triển ứng dụng có thể phát triển các ứng dụng iOS, Android và web đều sử dụng tài nguyên này.
- Nhà phát triển ứng dụng có thể sử dụng Firebase AI Logic, Firebase Authentication, Cloud Firestore và Firebase Security Rules trong ứng dụng của họ (xem danh sách tất cả các sản phẩm được Firebase hỗ trợ cho ADC).
- Theo mặc định, Firebase Security Rules ban đầu được đặt để từ chối tất cả các yêu cầu truy cập. Sau đó, khi Nhà phát triển ứng dụng sử dụng mẫu này cho việc triển khai của riêng họ, họ sẽ có thể thay đổi các Security Rules này để phù hợp với mô hình truy cập bắt buộc của họ.
Xác định chính sách.
Nếu muốn xác định các chính sách, chẳng hạn như vai trò IAM cho cơ sở hạ tầng đã triển khai hoặc các khu vực được phép cho tài nguyên, thì bạn cần thiết lập các chính sách đó trong giao diện tương ứng. ADC hiện không hỗ trợ việc xác định các chính sách ở cấp mẫu.
Bạn có thể chỉ định các vai trò IAM của Firebase cụ thể cho các thành viên dự án tuỳ theo việc bạn muốn họ làm gì. Ví dụ: nếu họ chỉ cần xem tài nguyên trong bảng điều khiển Firebase, hãy chỉ định vai trò Người xem Firebase (
roles/firebase.viewer) cho họ.Bạn có thể đặt giới hạn về khu vực cho các tài nguyên ở cấp thư mục hoặc tổ chức.
Thêm mẫu vào danh mục.
Sau khi bạn kiểm thử mẫu, hãy thêm mẫu đó vào danh mục ADC của nhóm. Danh mục này phải được chia sẻ với những người phù hợp, đặc biệt là Nhà phát triển ứng dụng để họ có thể sử dụng các mẫu (xem Bước 1: Thiết lập ADC ở trên).
Bước 3: Sử dụng mẫu (Nhà phát triển ứng dụng)
Nhân vật Nhà phát triển ứng dụng chọn một mẫu được xác định trước, định cấu hình mẫu đó cho trường hợp sử dụng cụ thể của họ, rồi triển khai cơ sở hạ tầng.
Chọn một mẫu rồi định cấu hình mẫu đó.
Trong danh mục ADC, hãy chọn một mẫu rồi định cấu hình mẫu đó để tạo bản nháp ứng dụng. Các cấu hình có sẵn (chẳng hạn như các khu vực có thể có cho tài nguyên) chỉ giới hạn ở những cấu hình do Kỹ sư nền tảng thiết lập khi họ tạo mẫu.
Triển khai cơ sở hạ tầng.
Sau khi tạo bản nháp ứng dụng, hãy triển khai ứng dụng ADC đến một trong các dự án được cung cấp trước mà bạn đã tạo để triển khai cơ sở hạ tầng (xem Bước 1: Thiết lập ADC ở trên)
Bạn có thể truy cập vào bảng điều khiển Firebase và xem các tài nguyên được cung cấp cũng như các dịch vụ đã bật cho dự án của mình.
Bước 4: Phát triển ứng dụng thực tế (Nhà phát triển ứng dụng)
ADC giúp thiết lập Firebase và Google Cloud cơ sở hạ tầng (chẳng hạn như cung cấp tài nguyên và bật API). Tuy nhiên, nó không thực hiện việc mã hoá ứng dụng thực tế sử dụng các tài nguyên và API đó.
Sau đây là một số việc quan trọng mà người dùng là Nhà phát triển ứng dụng cần làm:
Kết nối toàn bộ mã nguồn của ứng dụng với Firebase.
Lấy rồi thêm cấu hình Firebase vào cơ sở mã của mỗi ứng dụng.
Ví dụ: nếu mẫu cho phép một ứng dụng Android, thì bạn phải thêm tệp
google-services.jsonvào thư mục thích hợp trong dự án Android.Giữ cho mã và tài nguyên luôn nhất quán.
(nếu sử dụng Cloud Firestore) Nhớ cập nhật và xuất bản Firebase Security Rules để phù hợp với mô hình dữ liệu Cloud Firestore cho ứng dụng.
Bạn có thể làm gì khác?
- Giám sát ADC "ứng dụng" đã triển khai, các ứng dụng này sẽ tự động được đăng ký trong App Hub. Điều này cho phép bạn giám sát, theo dõi chi phí và khắc phục sự cố cho các tài nguyên Firebase trong bối cảnh triển khai Google Cloud rộng hơn.