Tentang akun layanan di Dataform
Saat Anda membuat repositori Dataform pertama, Dataform akan otomatis membuat akun layanan default. Dataform menggunakan akun layanan default untuk berinteraksi dengan BigQuery atas nama Anda. Akun layanan Dataform default tidak diberikan peran atau izin BigQuery apa pun secara default. Anda harus memberikan akses yang diperlukan ke akun layanan Dataform default.
ID akun layanan Dataform default Anda memiliki format berikut:
service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Ganti YOUR_PROJECT_NUMBER dengan ID numerik project Google Cloud Anda. Anda dapat menemukan project ID Google Cloud di dasbor konsol Google Cloud. Untuk mengetahui informasi selengkapnya, lihat Mengidentifikasi project.
Selain akun layanan Dataform default, Anda dapat menggunakan akun layanan lain untuk menjalankan alur kerja atas nama Anda. Anda dapat mengonfigurasi akun layanan kustom:
Di tingkat repositori, untuk menjalankan semua alur kerja di repositori tertentu.
Secara terpisah untuk setiap konfigurasi alur kerja.
Saat membuat repositori Dataform atau konfigurasi alur kerja, Anda dapat memilih akun layanan apa pun yang terkait dengan project Google Cloud yang Anda miliki aksesnya. Anda harus mengonfigurasi izin yang diperlukan untuk semua akun layanan yang terkait dengan resource Dataform Anda.
Akun layanan kustom yang terkait dengan repositori Dataform hanya digunakan untuk menjalankan alur kerja dari repositori tersebut. Semua operasi repositori lainnya masih dilakukan oleh akun layanan Dataform default.
Peran yang diperlukan untuk akun layanan Dataform
Akun layanan default dan kustom yang digunakan di Dataform memerlukan peran IAM BigQuery berikut agar dapat menjalankan alur kerja di BigQuery:
- BigQuery Data Editor di project yang memerlukan akses baca dan tulis Dataform. Biasanya, project ini menyertakan project yang menghosting repositori Dataform Anda.
- BigQuery Data Viewer di project yang memerlukan akses hanya baca untuk Dataform.
- BigQuery Job User di project yang menghosting repositori Dataform Anda.
- Pemilik Data BigQuery jika Anda ingin membuat kueri set data BigQuery.
- Peran BigQuery untuk kontrol akses tingkat kolom jika Anda ingin menggunakan tag kebijakan BigQuery.
Selain itu, Anda perlu memberikan akses Service Account Token Creator(roles/iam.serviceAccountTokenCreator
)
ke akun layanan Dataform default
ke akun layanan kustom yang ingin Anda gunakan di Dataform.
Pertimbangan keamanan untuk akun layanan Dataform
Memberikan peran yang diperlukan oleh Dataform ke akun layanan disertai dengan pertimbangan keamanan berikut:
Setiap akun layanan yang diberi peran yang diperlukan dapat memperoleh akses ke BigQuery atau Secret Manager dalam project tempat akun layanan tersebut berada, terlepas dari Kontrol Layanan VPC.
Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi Kontrol Layanan VPC untuk Dataform.
Setiap pengguna yang memiliki izin IAM
dataform.repositories.create
dapat menjalankan kode menggunakan akun layanan Dataform default dan semua izin yang diberikan ke akun layanan tersebut.Untuk informasi selengkapnya, lihat Pertimbangan keamanan untuk izin Dataform.
Untuk membatasi data yang dapat dibaca atau ditulis oleh pengguna atau akun layanan di BigQuery, Anda dapat memberikan izin IAM BigQuery terperinci ke set data atau tabel BigQuery yang dipilih. Untuk mengetahui informasi selengkapnya, lihat Mengontrol akses ke set data dan Mengontrol akses ke tabel dan tabel virtual.
Sebelum memulai
Di konsol Google Cloud, buka halaman Dataform.
Pilih atau buat repositori.
Memberikan peran BigQuery yang diperlukan ke akun layanan yang digunakan di Dataform
Untuk memberikan peran IAM BigQuery yang diperlukan ke akun layanan Dataform default, atau akun layanan kustom yang ingin Anda gunakan di Dataform, ikuti langkah-langkah berikut:
Di konsol Google Cloud, buka halaman IAM.
Klik Grant Access.
Di kolom New principals, masukkan ID akun layanan.
Di menu drop-down Select a role, pilih peran BigQuery Job User.
Klik Add another role, lalu di menu drop-down Select a role, pilih peran BigQuery Data Editor.
Klik Add another role, lalu di menu drop-down Select a role, pilih peran BigQuery Data Viewer.
Klik Simpan.
Memberikan akses pembuatan token ke akun layanan kustom
Untuk menggunakan akun layanan kustom di Dataform, akun layanan Dataform default harus dapat mengakses akun layanan kustom. Untuk memberikan akses ini, Anda perlu menambahkan akun layanan Dataform default sebagai akun utama ke akun layanan kustom dengan peran Service Account Token Creator.
Untuk memberikan akses akun layanan Dataform default ke akun layanan kustom, ikuti langkah-langkah berikut:
Di konsol Google Cloud, buka IAM > Service accounts.
Pilih project.
Di halaman Akun layanan untuk project "YOUR_PROJECT_NAME", pilih akun layanan Dataform kustom Anda.
Buka Izin, lalu klik Beri Akses.
Di kolom New principals, masukkan ID akun layanan Dataform default Anda.
ID akun layanan Dataform default Anda memiliki format berikut:
service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Di menu drop-down Select a role, pilih peran Service Account Token Creator.
Klik Simpan.
Langkah selanjutnya
- Untuk mempelajari peran dan izin IAM BigQuery lebih lanjut, lihat Kontrol akses dengan IAM.
- Untuk mempelajari lebih lanjut cara memberikan izin terperinci ke set data BigQuery, lihat Mengontrol akses ke set data.
- Untuk mempelajari lebih lanjut cara memberikan izin terperinci ke tabel BigQuery, lihat Mengontrol akses ke tabel dan tabel virtual.
- Untuk mempelajari cara mengontrol akses Dataform dengan Kontrol Layanan VPC, lihat Mengonfigurasi Kontrol Layanan VPC untuk Dataform.