Firebase terintegrasi dengan Application Design Center (ADC) dari Google Cloud untuk membantu pelanggan perusahaan memenuhi kebutuhan standarisasi dan tata kelola sekaligus memungkinkan developer aplikasi mereka melakukan pengiriman dengan cepat. Dengan menggunakan ADC, infrastruktur akan mematuhi standar dan praktik terbaik organisasi melalui template yang telah ditentukan sebelumnya yang menentukan batasan untuk menyediakan resource, memberikan izin IAM, dll.
Di halaman ini, Anda akan mempelajari hal berikut:
- Ringkasan ADC dan Firebase, termasuk produk Firebase yang didukung
- Persona utama dan peran IAM yang diperlukan untuk mengontrol akses
- Alur kerja umum
Ringkasan ADC dan Firebase
Sebaiknya tinjau dokumentasi Google Cloud untuk mengetahui ringkasan ADC. Dokumentasi Google Cloud juga menyediakan beberapa panduan mendalam untuk ADC, termasuk konsep utama dan panduan penyiapan awal.
Saat menggunakan ADC, "aplikasi" ditentukan sebagai pengelompokan logis resource dan layanan yang bersama-sama memberikan fungsi bisnis. Untuk developer Firebase, Anda dapat menganggap ADC "aplikasi" setara dengan project Firebase, tempat aplikasi iOS, Android, dan web yang terdaftar berbagi dan memiliki akses ke semua resource dan layanan yang sama untuk project tersebut.
Untuk memulai, sebaiknya gunakan ADC menggunakan pengalaman GUI yang disebut kanvas desain yang tersedia di Google Cloud konsol. Kanvas desain memungkinkan Anda memvisualisasikan dan membuat diagram arsitektur infrastruktur yang ingin Anda sediakan untuk aplikasi.
Perhatikan bahwa ADC didukung oleh Terraform, sehingga Anda akan selalu memiliki akses ke definisi kode infrastruktur yang ditentukan menggunakan ADC.
Produk Firebase yang didukung
Berikut adalah kumpulan awal produk Firebase yang didukung yang dapat digunakan dengan ADC:
- Firebase AI Logic
- Firebase Authentication
- Firebase App Check
- Cloud Firestore
- Firebase Security Rules
Persona utama untuk menggunakan ADC
Cara umum untuk memahami dan menggunakan ADC adalah dengan mengelompokkan tugas terkait ADC berdasarkan dua persona:
Engineer Platform: Persona ini mendesain, memverifikasi, dan memublikasikan template yang dapat digunakan kembali dan menerapkan kebijakan ke katalog.ADCADC
Developer Aplikasi: Persona ini menggunakan template ADC yang dipublikasikan (seperti dari katalog ADC tim) untuk mengonfigurasi dan men-deploy infrastruktur. Mereka juga mengembangkan codebase dan fitur aplikasi yang sebenarnya.
Peran IAM yang diperlukan untuk mengontrol akses
Dengan menetapkan peran IAM, Anda dapat mengontrol anggota project (atau principal) mana yang dapat melakukan tugas tertentu.
Misalnya, Anda dapat menetapkan peran Admin Application Design Center (roles/designcenter.admin) kepada Engineer Platform yang perlu membuat dan menetapkan ruang, mengelola katalog, dan mendesain template. Namun, Anda mungkin hanya menetapkan peran Editor Aplikasi (roles/designcenter.applicationEditor) kepada Developer Aplikasi agar mereka dapat menggunakan template, tetapi tidak membuat template.
Tabel berikut menjelaskan tugas terkait ADC- , persona yang dituju, dan peran yang diperlukan:
| Tugas | Persona | Peran IAM 1 |
|---|---|---|
| Membuat dan mengelola template | ||
|
Mengelola siklus proses ADC lengkap (termasuk mengelola ruang, katalog, template, mengonfigurasi dan men-deploy aplikasi) |
Engineer Platform |
Admin Application Design Center ( roles/designcenter.admin |
| Membuat dan mengelola template serta mengonfigurasi dan men-deploy aplikasi | Engineer Platform |
Pengguna Application Design Center ( roles/designcenter.user |
| Membuat akun layanan untuk men-deploy ADC aplikasi | ||
| Membuat akun layanan | Engineer Platform |
Membuat Akun Layanan ( roles/iam.serviceAccountCreator |
| Memberikan akses akun layanan ke project yang digunakan untuk ADC deployment | Engineer Platform |
Admin IAM Project ( roles/resourcemanager.projectIamAdmin |
| Mengonfigurasi dan men-deploy ADC aplikasi | ||
|
Mengontrol siklus proses aplikasi lengkap (termasuk integrasi dengan kode sumber dan sistem CI/CD) |
Developer Aplikasi |
Admin Aplikasi ( roles/designcenter.applicationAdmin |
| Mengonfigurasi dan men-deploy aplikasi berdasarkan template dan koneksi yang ada disiapkan oleh Admin | Developer Aplikasi |
Editor Aplikasi ( roles/designcenter.applicationEditor |
1 Beberapa peran ini harus ditetapkan di project pengelolaan, yang merupakan resource tingkat atas dalam hierarki Google Cloud.
Alur kerja umum
Bagian ini menjelaskan alur kerja umum untuk membuat dan menggunakan template ADC. Langkah-langkah ini ditandai dengan persona yang biasanya melakukan langkah tersebut.
- Langkah 1: Menyiapkan ADC (Engineer Platform)
- Langkah 2: Membuat template (Engineer Platform)
- Langkah 3: Menggunakan template (Developer Aplikasi)
- Langkah 4: Mengembangkan aplikasi Anda yang sebenarnya (Developer Aplikasi)
Langkah 1: Menyiapkan ADC (Engineer Platform)
Persona Engineer Platform (atau yang lebih tinggi) menyelesaikan tugas ini untuk menyiapkan ADC. Tugas ini biasanya hanya perlu diselesaikan satu kali agar semuanya siap untuk menggunakan ADC.
Penyiapan ADC awal.
Ikuti langkah-langkah dan panduan dalam panduan penyiapan awal untuk ADC di dokumentasi Google Cloud. Perhatikan bahwa panduan ini mengasumsikan bahwa Anda akan menyiapkan batasan tingkat folder.
Setelah menyelesaikan penyiapan ini, Anda akan memiliki ruang, yang merupakan area khusus bagi tim untuk berkolaborasi, membuat template, dan men-deploy aplikasi. Pastikan ruang ini (serta folder dan katalog) dibagikan kepada semua orang yang ingin Anda ajak bekerja sama dengan ADC.
Menyiapkan akses dan pengguna untuk ruang.
Ikuti langkah-langkah di bagian Mengelola pengguna ruang untuk ADC di dokumentasi Google Cloud. Gunakan panduan yang dijelaskan sebelumnya di halaman ini tentang Peran IAM yang diperlukan untuk mengontrol akses.
Menyediakan project terlebih dahulu.
Buat satu atau beberapa project Google Cloud baru di folder. Pastikan Anda menautkan akun Cloud Billing ke project ini. Project ini akan digunakan oleh Developer Aplikasi Anda saat mereka men-deploy infrastruktur yang ditentukan dalam template.
Mengonfigurasi akun layanan deployment.
ADC mengelola penyediaan resource otomatis menggunakan akun layanan dengan cakupan yang ketat. Hal ini mencegah Developer Aplikasi menggunakan akun mereka sendiri untuk men-deploy infrastruktur.
ADC dapat otomatis membuat akun layanan dengan cakupan yang ketat untuk Anda saat Anda menguji deployment template yang Anda buat. Anda juga memiliki opsi untuk menggunakan akun layanan Anda sendiri yang memiliki izin yang Anda anggap sesuai untuk Developer Aplikasi.
Langkah 2: Membuat template (Engineer Platform)
Persona Engineer Platform menggunakan kanvas desain atau bahkan Gemini Cloud Assist untuk membuat template ADC baru.
Menentukan resource.
Dengan menggunakan kanvas desain, lakukan drag-and-drop komponen ke kanvas dan buat koneksi di antara komponen tersebut. Komponen ini adalah cara Anda menentukan layanan Firebase (dan Google Cloud) mana yang ingin Anda gunakan oleh Developer Aplikasi.
Misalnya, template dapat menentukan resource seperti berikut:
- Developer Aplikasi dapat mengembangkan aplikasi iOS, Android, dan web yang semuanya menggunakan resource.
- Developer Aplikasi dapat menggunakan Firebase AI Logic, Firebase Authentication, Cloud Firestore, dan Firebase Security Rules di aplikasi mereka (lihat a daftar semua produk Firebase yang didukung untuk ADC).
- Firebase Security Rules awalnya ditetapkan untuk menolak semua permintaan akses secara default. Kemudian, saat Developer Aplikasi menggunakan template ini untuk deployment mereka sendiri, mereka akan dapat mengubah Security Rules ini agar sesuai dengan model akses yang diperlukan.
Menentukan kebijakan.
Jika ingin menentukan kebijakan, seperti peran IAM untuk infrastruktur yang di-deploy atau region yang diizinkan untuk resource, Anda harus menetapkannya di antarmuka yang sesuai untuk kebijakan tersebut. ADC saat ini tidak mendukung penentuan kebijakan di tingkat template.
Anda dapat menetapkan peran Firebase IAM tertentu kepada anggota project, bergantung pada hal yang ingin Anda lakukan. Misalnya, jika mereka hanya perlu melihat resource di Firebase console, tetapkan peran Firebase Viewer (
roles/firebase.viewer).Anda dapat menetapkan batasan region untuk resource di tingkat folder atau organisasi.
Menambahkan template ke katalog.
Setelah menguji template, tambahkan ke katalog ADC tim Anda. Katalog ini harus dibagikan kepada orang yang tepat, khususnya Developer Aplikasi agar mereka dapat menggunakan template (lihat Langkah 1: Menyiapkan ADC di atas).
Langkah 3: Menggunakan template (Developer Aplikasi)
Persona Developer Aplikasi memilih template yang telah ditentukan sebelumnya, mengonfigurasinya untuk kasus penggunaan tertentu, lalu men-deploy infrastruktur.
Memilih template dan mengonfigurasinya.
Dari katalog ADC, pilih template dan konfigurasikan untuk membuat draf aplikasi. Konfigurasi yang tersedia — seperti kemungkinan region untuk resource — terbatas pada konfigurasi yang ditetapkan oleh Engineer Platform saat mereka membuat template.
Men-deploy infrastruktur.
Setelah draf aplikasi dibuat, deploy aplikasi ADC ke salah satu project yang disediakan sebelumnya yang dibuat untuk deployment infrastruktur (lihat Langkah 1: Menyiapkan ADC di atas)
Anda dapat membuka Firebase console dan melihat resource yang disediakan dan layanan yang diaktifkan untuk project Anda.
Langkah 4: Mengembangkan aplikasi Anda yang sebenarnya (Developer Aplikasi)
ADC membantu menyiapkan Firebase dan Google Cloud infrastruktur (seperti menyediakan resource dan mengaktifkan API). Namun, ADC tidak melakukan coding aplikasi sebenarnya yang menggunakan resource dan API tersebut.
Berikut beberapa hal penting yang perlu dilakukan oleh persona Developer Aplikasi:
Menghubungkan codebase aplikasi Anda ke Firebase.
Dapatkan, lalu tambahkan konfigurasi Firebase ke codebase setiap aplikasi.
Misalnya, jika template mengizinkan aplikasi Android, Anda harus menambahkan file
google-services.jsonke direktori yang sesuai dalam project Android Anda.Menjaga kode dan resource tetap selaras.
(jika menggunakan Cloud Firestore) Pastikan untuk memperbarui dan memublikasikan Firebase Security Rules agar selaras dengan model data Cloud Firestore untuk aplikasi.
Kamu bisa apa lagi?
- Memantau "aplikasi" ADC yang di-deploy, yang otomatis terdaftar di App Hub.ADC Hal ini memungkinkan pemantauan gabungan, pengamatan biaya, dan pemecahan masalah untuk resource Firebase dalam konteks deployment Google Cloud yang lebih luas.