Akun layanan adalah jenis Akun Google khusus yang dimaksudkan untuk mewakili pengguna non-manusia yang dapat melakukan autentikasi dan diberi otorisasi untuk mengakses data di Google API dan produk. Looker Studio dapat menggunakan akun layanan untuk mengakses data, alih-alih mendelegasikan akses menggunakan Kredensial pemilik, atau mewajibkan setiap pelihat laporan untuk memiliki akses ke data menggunakan kredensial pelihat laporan.
Catatan: Kredensial akun layanan hanya tersedia untuk sumber data BigQuery.
Pelajari selengkapnya tentang akun layanan.
Manfaat menggunakan akun layanan dengan Looker Studio
Menggunakan kredensial akun layanan sebagai ganti kredensial setiap pengguna akan memberikan manfaat berikut:
- Sumber data yang menggunakan kredensial akun layanan tidak akan terganggu jika kreator keluar dari perusahaan Anda.
- Kredensial akun layanan mendukung akses ke data yang berada di balik perimeter Kontrol Layanan VPC yang menggunakan kebijakan perangkat.
- Fitur otomatis seperti email terjadwal dan ekstrak data terjadwal berfungsi dengan sumber data yang berada di balik perimeter Kontrol Layanan VPC. (Lihat bagian Batas untuk mengetahui peringatan penting.)
- Anda dapat membuat aturan masuk dan keluar untuk mengizinkan akses akun layanan ke dan dari resource serta klien yang dilindungi oleh perimeter layanan.
Peran yang diperlukan
- Untuk mendapatkan agen layanan Looker Studio, Anda harus menjadi pengguna Google Workspace atau Cloud Identity.
- Untuk menyiapkan akun layanan, Anda harus memiliki peran Service Account Admin (
roles/iam.serviceAccountAdmin
) atau Create Service Accounts (roles/iam.serviceAccountCreator
) di project Google Cloud Anda. Pelajari lebih lanjut peran akun layanan. - Untuk mengonfigurasi akun layanan agar dapat mengakses tabel atau set data BigQuery, Anda harus memiliki peran BigQuery Data Owner (
roles/bigquery.dataOwner
) pada tabel atau set data, atau peran lain yang memberi Anda izinbigquery.datasets.setIamPolicy
.
Petunjuk penyiapan
Untuk menyiapkan akun layanan yang memberikan akses ke data BigQuery, ikuti langkah-langkah berikut:
- Mendapatkan agen layanan Looker Studio. Pada langkah ini, Anda akan menyalin alamat email agen layanan agar dapat menggunakannya di langkah berikutnya. Alamat ini dibuat untuk Anda secara otomatis oleh Looker Studio.
- Buat akun layanan untuk Looker Studio. Pada langkah ini, Anda akan membuat pengguna non-manusia yang akan mengakses data.
- Izinkan agen layanan Looker Studio mengakses akun layanan Anda. Pada langkah ini, Anda akan memberikan peran yang diperlukan kepada agen layanan di akun layanan.
- Memberikan peran pengguna. Pada langkah ini, Anda akan memberikan peran yang diperlukan kepada pengguna agar mereka dapat membuat sumber data yang menggunakan kredensial akun layanan.
- Aktifkan akun layanan untuk mengakses data BigQuery Anda. Pada langkah ini, Anda akan memberikan peran yang diperlukan kepada akun layanan agar akun tersebut dapat mengakses tabel atau set data BigQuery.
Langkah 1: Dapatkan agen layanan Looker Studio
Agar akun layanan dapat mengakses data, Anda harus menyediakan agen layanan Looker Studio untuk organisasi Anda. Anda bisa mendapatkan agen layanan dari halaman bantuan di Looker Studio:
- Buka halaman bantuan agen layanan Looker Studio.
- Salin alamat email agen layanan yang ditampilkan di halaman tersebut.
Langkah 2: Buat akun layanan untuk Looker Studio
Lihat Google Cloud dokumentasi IAM untuk mengetahui petunjuk cara membuat akun layanan. Anda dapat menggunakan konsol Google Cloud atau command line Cloud Shell untuk membuat akun layanan.
Konsol
- Dari konsol Google Cloud , buka halaman Create service account.
- Pilih project.
- Masukkan nama akun layanan untuk ditampilkan di konsol Google Cloud .
Konsol Google Cloud membuat ID akun layanan berdasarkan nama ini. Edit ID sekarang jika perlu. Anda tidak dapat mengubah ID nanti.
- Opsional: Masukkan deskripsi akun layanan.
- Klik CREATE AND CONTINUE.
- Di Permissions, beri akun layanan peran IAM BigQuery Job User di project yang berisi data yang ingin Anda hubungkan di Looker Studio. Perhatikan bahwa project ini mungkin berbeda dengan project tempat Anda membuat akun layanan.
- Klik Lanjutkan.
- Di kolom Peran pengguna akun layanan, tambahkan pengguna yang dapat menggunakan akun layanan ini untuk memberikan kredensial bagi sumber datanya. Jika Anda belum siap menambahkan pengguna sekarang, Anda dapat melakukannya nanti dengan mengikuti petunjuk di Memberikan peran pengguna.
- Klik DONE untuk menyimpan akun layanan dan kembali ke halaman daftar akun layanan untuk project Anda.
gcloud
Ikuti langkah-langkah umum yang tercantum di bagian Cloud Shell pada halaman Membuat dan mengelola akun layanan.
- Buka Cloud Shell.
- Pilih project, jika perlu.
- Untuk membuat akun layanan, jalankan perintah gcloud iam service-accounts create. Anda dapat menggunakan nama akun, deskripsi, dan nama tampilan apa pun yang dipilih.
Contoh:
gcloud iam service-accounts create looker-studio-service-account \ --description="Use for Looker Studio access to BigQuery" \ --display-name="LS_BQ"
-
Untuk mengakses data BigQuery di project yang ingin Anda gunakan dengan Looker Studio, berikan izin
bigquery.jobs.create
kepada akun layanan di project tersebut. Google Cloud Anda dapat memberikan peran IAM BigQuery Job User untuk memberikan izin ini.Selain itu, berikan izin
bigquery.tables.getData
danbigquery.tables.get
untuk akun layanan di project atau set data yang ingin Anda gunakan dengan Looker Studio. Anda dapat memberikan peran BigQuery Data Viewer (roles/bigquery.dataViewer
) untuk memberikan izin ini.Untuk memberikan peran ini, jalankan perintah gcloud projects add-iam-policy-binding. Pada contoh berikut, ganti PROJECT_ID dengan project ID Anda.
Contoh: Memberikan peran BigQuery Job User
gcloud projects add-iam-policy-binding PROJECT_ID\ --member ="serviceAccount:looker-studio-service-account@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/bigquery.jobUser"
Contoh: Memberikan peran BigQuery Data Viewer
gcloud projects add-iam-policy-bindingPROJECT_ID\ --member ="serviceAccount:looker-studio-service-account@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/bigquery.dataViewer"
Langkah 3: Izinkan agen layanan Looker Studio mengakses akun layanan Anda
Untuk mengizinkan agen layanan Looker Studio mengakses data menggunakan
akun layanan, berikan peran Service Account Token Creator
(roles/iam.serviceAccountTokenCreator
) kepada agen layanan.
Konsol
- Kembali ke daftar akun layanan konsolGoogle Cloud .
- Pilih akun layanan Looker Studio yang baru saja Anda buat dengan mengkliknya di daftar.
- Klik Principals with access.
- Klik person_add BERIKAN AKSES.
- Di Add principals to
PROJECT_ID
, tempel alamat email agen layanan Looker Studio (yang telah Anda salin pada langkah 1 sebelumnya) ke kotak New principals. (Alamat agen layanan Anda terlihat seperti ini:SERVICE_AGENT_NAME@PROJECT_ID.iam.gserviceaccount.com
.) - Pilih peran yang memberikan izin
iam.serviceAccounts.getAccessToken
kepada agen layanan. Misalnya, Anda dapat menggunakan peran Service Account Token Creator, tetapi Anda juga dapat menggunakan peran khusus yang memberikan izin ini. - Klik SIMPAN.
gcloud
Jalankan perintah gcloud iam service-accounts add-iam-policy-binding. Pada contoh berikut, ganti ORG_ID dengan ID organisasi Anda.
Contoh:
gcloud iam service-accounts add-iam-policy-binding looker-studio-service-account@PROJECT_ID.iam.gserviceaccount.com \ --member="service-ORG_ID@gcp-sa-datastudio.iam.gserviceaccount.com" \ --role="roles/iam.serviceAccountTokenCreator"
Langkah 4: Berikan peran untuk pengguna
Pengguna Looker Studio yang akan membuat atau mengedit sumber data harus diberi peran yang menyertakan izin iam.serviceAccounts.actAs
, seperti peran Service Account User (roles/iam.serviceAccountUser
). Anda dapat memberikan peran ini pada project atau masing-masing akun layanan, tetapi sebaiknya Anda memberikan peran tersebut pada akun layanan saja. Untuk
mendapatkan petunjuk, lihat Mengelola peniruan identitas akun layanan.
Sebaiknya Anda tidak memberikan peran Service Account Token Creator kepada pengguna non-agen layanan. Peran ini tidak diperlukan untuk Looker Studio.
Konsol
- Buka daftar akun layanan Konsol.
- Pilih akun layanan Looker Studio Anda dengan mengkliknya di daftar.
- Klik Principals with access.
- Klik person_add BERIKAN AKSES.
- Di Add principals and roles for Service Account, masukkan alamat email pengguna Anda di kotak New principals.
- Pilih peran Service Account User.
- Klik SIMPAN.
gcloud
Untuk memberikan peran Service Account User, jalankan perintah gcloud projects add-iam-policy-binding. Pada contoh berikut, ganti PROJECT_ID dengan project ID Anda, dan ganti USER_EMAIL dengan satu atau beberapa alamat email yang valid (pisahkan beberapa entri dengan koma).
Contoh:
gcloud iam service-accounts add-iam-policy-binding looker-studio-service-account@PROJECT_ID.iam.gserviceaccount.com \ --member="user:USER_EMAIL" \ --role="roles/iam.serviceAccountUser"
Langkah 5: Aktifkan akun layanan untuk mengakses data BigQuery Anda
Untuk mengizinkan Looker Studio mengakses data Anda, berikan peran BigQuery Data Viewer untuk akun layanan di tingkat tabel atau set data. Sebaiknya jangan berikan akses di level project untuk akun layanan.
Konsol
Untuk memberikan akses ke tabel:
- Salin alamat email agen layanan Looker Studio, seperti yang dijelaskan sebelumnya di Langkah 1. Dapatkan agen layanan Looker Studio.
- Buka daftar akun layanan konsolGoogle Cloud .
- Buka BigQuery lalu buka project.
- Luaskan set data dengan mengklik panah perluas
.
- Pilih tabel.
- Di toolbar, klik person_add BAGIKAN.
- Di panel yang terbuka di sebelah kanan, klik person_add TAMBAHKAN AKUN UTAMA.
- Di kotak New principals, tempel alamat email agen layanan Looker Studio.
- Pilih peran BigQuery Data Viewer.
- Klik SIMPAN.
Untuk memberikan akses ke set data:
- Salin alamat email agen layanan Looker Studio, seperti yang dijelaskan sebelumnya di Langkah 1. Dapatkan agen layanan Looker Studio.
- Buka daftar akun layanan konsolGoogle Cloud .
- Buka BigQuery, buka project, lalu cari set data.
- Klik menu opsi
.
- Klik Buka.
- Di toolbar, klik person_add Izin berbagi.
- Di panel yang terbuka di sebelah kanan, klik person_add TAMBAHKAN AKUN UTAMA.
- Di kotak New principals, tempel alamat email agen layanan Looker Studio.
- Pilih peran BigQuery Data Viewer.
- Klik SIMPAN.
gcloud
Sebaiknya gunakan petunjuk konsol Google Cloud untuk memberikan akses ke data. Untuk memberikan akses ke data menggunakan alat command line bq
, lihat
Mengontrol akses ke set data dalam dokumentasi BigQuery.
Menyediakan akun layanan Looker Studio untuk pengguna Looker Studio
Pengguna Looker Studio perlu mengetahui akun layanan mana yang akan digunakan saat mereka membuat sumber data. Karena tidak ada cara untuk melihat daftar akun layanan yang tersedia dari dalam Looker Studio, Anda harus menyampaikan informasi ini menggunakan dokumentasi, situs internal, atau email organisasi.
Membuat sumber data yang menggunakan kredensial akun layanan
Untuk membuat sumber data yang menggunakan kredensial akun layanan, pengguna Looker Studio dapat mengikuti langkah-langkah dasar yang sama seperti untuk jenis kredensial data lainnya:
- Buat atau edit sumber data BigQuery.
- Di toolbar, klik Kredensial Data.
- Pilih Kredensial Akun Layanan.
- Masukkan alamat email Akun layanan Anda di kotak.
- Klik Perbarui.
Mengedit sumber data yang menggunakan kredensial akun layanan
Saat seseorang mengedit sumber data yang menggunakan kredensial akun layanan, Looker Studio akan memeriksa apakah orang tersebut memiliki izin untuk menggunakan akun layanan tersebut. Jika tidak memiliki izin, sumber data akan beralih menggunakan kredensial orang tersebut.
Melihat siapa yang menggunakan akun layanan untuk mengakses data
Anda dapat memeriksa log audit untuk akun layanan di konsol Google Cloud . Anda harus mengaktifkan log audit IAM untuk aktivitas Akses Data jika ingin menerima log audit untuk akun layanan.
Contoh skenario akun layanan
Misalnya, Anda ingin memastikan bahwa pengguna Looker Studio di perusahaan Anda hanya memiliki akses ke data untuk anak perusahaan di negara mereka. Solusinya adalah dengan membuat akun layanan untuk setiap negara, dan hanya memberikan izin kepada pengguna Looker Studio di negara tersebut untuk bertindak sebagai akun layanan.
Contoh penyiapan
Dalam contoh ini, Anda akan membuat tiga akun layanan: satu untuk Inggris Raya, satu untuk Prancis, dan satu untuk Jerman. Kemudian, tetapkan agen layanan dan pengguna yang Anda inginkan sebagai akun utama agar dapat membuat sumber data yang menggunakan akun layanan. Anda juga akan menetapkan peran yang tepat untuk setiap pengguna.
Akun layanan untuk Inggris Raya
service-account-1@example-org-uk-example-project.iam.gserviceaccount.com
Akun utama untuk Inggris Raya
Kepala sekolah | Peran |
Posisi ini diisi oleh agen layanan. |
Service Account Token Creator |
Pengguna 1 | Service Account User |
Pengguna 2 | Service Account User |
Akun layanan untuk Prancis
service-account-1@example-org-fr-example-project.iam.gserviceaccount.com
Akun utama untuk Prancis
Kepala sekolah | Peran |
Posisi ini diisi oleh agen layanan. |
Service Account Token Creator |
Pengguna 3 | Service Account User |
Pengguna 4 | Service Account User |
Akun layanan untuk Jerman
service-account-1@example-org-de-example-project.iam.gserviceaccount.com
Akun utama untuk Jerman
Kepala sekolah | Peran |
Posisi ini diisi oleh agen layanan. |
Service Account Token Creator |
Pengguna 5 | Service Account User |
Pengguna 6 | Service Account User |
Error
Bagian ini menjelaskan error yang mungkin dialami oleh pelihat laporan dan pembuat sumber data Looker Studio saat mencoba menggunakan akun layanan. Umumnya, error ini memiliki penyebab utama yang sama: penyiapan akun layanan yang salah atau tidak lengkap.
Peran agen layanan tidak ada
Pesan
|
PenyebabAgen layanan belum diberi peran Service Account Token Creator (atau peran lain yang mencakup izin |
SolusiBerikan peran Service Account Token Creator kepada agen layanan. |
Tidak ada akses ke data
PesanAkun layanan ini tidak dapat mengakses set data pokok. |
Penyebab
|
SolusiMinimal, berikan peran BigQuery Data Viewer untuk akun layanan Anda di tabel, set data, atau project pokok. |
Peran pengguna tidak ada
PesanAnda tidak memiliki izin untuk menggunakan akun layanan ini. |
PenyebabPengguna belum ditambahkan sebagai akun utama ke akun layanan dengan peran Service Account User. |
SolusiBerikan peran Service Account User kepada pengguna di akun layanan tersebut. |
Agen layanan tidak tersedia untuk akun ini
Pesan
|
PenyebabPengguna mencoba menggunakan Akun Google standar (pengguna konsumen) untuk mengakses data yang dikontrol oleh akun layanan. |
SolusiGunakan akun Cloud Identity atau Google Workspace untuk mengakses data. |
Tidak dapat menggunakan agen layanan di dialog kredensial
PesanAgen layanan Looker Studio tidak dapat digunakan untuk terhubung langsung ke data. Sebagai gantinya, gunakan akun layanan. |
SolusiAgen layanan dan akun layanan tidak sama. Masukkan akun layanan di dialog kredensial. Anda dapat menemukan daftar akun layanan yang tersedia menggunakan konsol Google Cloud atau Cloud Shell: Konsol
gcloud
Contoh:
|
Batas
- Kredensial akun layanan hanya tersedia untuk sumber data BigQuery. Batas IAM berlaku untuk akun layanan.
- Mungkin diperlukan waktu beberapa menit hingga perubahan izin akun layanan diterapkan di Looker Studio.
- Pengiriman email terjadwal tidak berfungsi dengan data yang dilindungi menggunakan tingkat akses berbasis IP dengan Kontrol Layanan VPC. (Hal ini karena Looker Studio tidak meneruskan alamat IP penerima email saat penerima melihat laporan.)
Referensi terkait
- Memahami akun layanan
- Aturan masuk dan keluar
- Terhubung ke BigQuery: Dukungan untuk Kontrol Layanan VPC
- Meluncurkan Cloud Shell