Menggunakan Google OAuth untuk autentikasi pengguna Looker (Google Cloud core)

Google OAuth digunakan bersama dengan Identity and Access Management (IAM) untuk mengautentikasi pengguna Looker (inti Google Cloud).

Saat menggunakan OAuth untuk autentikasi, Looker (inti Google Cloud) mengautentikasi pengguna melalui protokol OAuth 2.0. Gunakan klien OAuth 2.0 untuk membuat kredensial otorisasi saat Anda membuat instance. Sebagai contoh, halaman ini akan memandu Anda melalui langkah-langkah untuk menyiapkan autentikasi untuk instance Looker (inti Google Cloud) menggunakan Konsol Google Cloud untuk membuat kredensial OAuth.

Jika metode lain adalah bentuk autentikasi utama, Google OAuth secara default adalah metode autentikasi cadangan. Google OAuth juga merupakan metode autentikasi yang digunakan Cloud Customer Care saat memberikan dukungan.

Klien OAuth yang digunakan untuk autentikasi harus sama dengan klien OAuth yang digunakan untuk menyiapkan instance.

Autentikasi dan otorisasi dengan OAuth dan IAM

Jika digunakan dengan OAuth, peran IAM Looker (Google Cloud core) memberikan tingkat autentikasi dan otorisasi berikut untuk semua instance Looker (Google Cloud core) dalam project Google Cloud tertentu. Tetapkan salah satu peran IAM berikut ke setiap akun utama Anda, bergantung pada tingkat akses yang Anda inginkan:

Peran IAM Autentikasi Otorisasi
Pengguna Instance Looker (roles/looker.instanceUser)

Dapat login ke instance Looker (Google Cloud core)

Saat pertama kali login ke Looker (Google Cloud core), pengguna akan diberi peran Looker default yang ditetapkan di Peran untuk pengguna baru.

Tidak dapat mengakses resource Looker (inti Google Cloud) di konsol Google Cloud.

Looker Viewer (roles/looker.viewer) Dapat login ke instance Looker (Google Cloud core) Saat pertama kali login ke Looker (Google Cloud core), pengguna akan diberi peran Looker default yang ditetapkan di Peran untuk pengguna baru.

Dapat melihat daftar instance Looker (inti Google Cloud) dan detail instance di konsol Google Cloud
Looker Admin (roles/looker.admin) Dapat login ke instance Looker (Google Cloud core) Saat pertama kali login ke Looker (Google Cloud core), pengguna akan diberi peran Looker default yang ditetapkan di Peran untuk pengguna baru.

Diverifikasi pada setiap login ke Looker (Google Cloud core) yang menggunakan OAuth utama atau OAuth cadangan dan setiap kali pengguna melakukan panggilan ke Looker API, peran ini (atau peran kustom yang menyertakan izin looker.instances.update) juga memberikan peran Admin melalui IAM dalam instance.

Peran Admin melalui IAM berisi semua izin dan kemampuan peran Looker Admin. Peran ini tidak dapat dihapus atau ditetapkan ulang dalam instance Looker (Google Cloud core). Untuk menghapus peran Admin melalui IAM, tetapkan ulang akun utama ke peran IAM selain Admin Looker (roles/looker.admin). Perubahan pada peran IAM akan otomatis disinkronkan ke instance Looker (inti Google Cloud) meskipun pengguna login dengan penyedia identitas pihak ketiga setelah perubahan tersebut. Untuk mengetahui informasi selengkapnya, lihat bagian Peran Looker Admin versus Admin melalui peran Looker IAM.

Selama token refresh OAuth pengguna valid, peran pengguna akan ditampilkan sebagai Admin melalui IAM dalam Looker (inti Google Cloud), meskipun pengguna tersebut kemudian login dengan penyedia identitas pihak ketiga. Jika token refresh OAuth berakhir masa berlakunya atau dicabut, pengguna harus menggunakan OAuth untuk login ke instance lagi guna mendapatkan kembali peran Admin melalui IAM.

Dapat melakukan semua tugas administratif untuk Looker (Google Cloud core) dalam konsol Google Cloud

Selain itu, akun pengguna dengan peran owner untuk project dapat login ke dan mengelola instance Looker (Google Cloud core) dalam project tersebut. Pengguna ini akan diberi peran Looker Admin.

Jika peran yang telah ditetapkan tidak menyediakan kumpulan izin yang Anda inginkan, Anda juga dapat membuat peran khusus Anda sendiri.

Akun Looker (Google Cloud core) dibuat saat pertama kali login ke instance Looker (Google Cloud core).

Peran Admin Looker versus Admin melalui peran Looker IAM

Ada dua peran dalam instance Looker (Google Cloud core) yang menggunakan Kumpulan izin admin dan memberikan hak istimewa admin yang sama dalam instance. Tabel berikut merangkum kesamaan dan perbedaan kedua peran tersebut.

Properti Peran Admin Looker Admin melalui peran Looker IAM
Sumber kredibel Diberikan oleh admin lain di instance Looker (Google Cloud core) Terhubung langsung ke peran IAM Admin Looker
Dapat ditambahkan atau dihapus dalam instance Looker (Google Cloud core)? Ya Tidak
Dapat ditambahkan atau dihapus dengan IAM? Tidak Ya
Izin dalam Looker (Google Cloud core) Semua izin Semua izin
Izin dalam konsol Google Cloud Tidak ada Akses penuh ke semua resource Looker (Google Cloud core)
Validasi peran Terus-menerus dalam instance Looker (Google Cloud core) Setelah setiap login ke instance Looker (Google Cloud core) dan setiap panggilan Looker API.

Perubahan pada peran dengan IAM mungkin memerlukan waktu beberapa menit untuk diterapkan.
Cakupan Setiap instance Looker (Google Cloud core) Semua instance Looker (Google Cloud core) dalam project Google Cloud

Pengguna dapat memiliki peran Looker Admin dan Admin melalui IAM. Oleh karena itu, jika Anda ingin mencabut hak istimewa admin, pastikan untuk menghapus peran IAM dan peran Admin dalam instance Looker (inti Google Cloud).

Mengonfigurasi OAuth dalam instance Looker (Google Cloud core)

Dalam instance Looker (Google Cloud core), halaman Google Authentication di bagian Authentication pada menu Admin memungkinkan Anda mengonfigurasi beberapa setelan OAuth Google. Anda harus memiliki peran Looker Admin.

Menggabungkan akun pengguna

Di kolom Gabungkan Pengguna Menggunakan, tentukan metode yang akan digunakan untuk menggabungkan login OAuth pertama kali ke akun pengguna yang ada. Saat pengguna login untuk pertama kalinya melalui OAuth, opsi ini akan menghubungkan pengguna ke akun yang sudah ada dengan menemukan akun yang memiliki alamat email yang cocok. Jika tidak ada akun untuk pengguna, akun pengguna baru akan dibuat.

Anda dapat menggabungkan pengguna dari sistem berikut:

  • SAML
  • OIDC

Jika memiliki lebih dari satu sistem, Anda dapat menentukan lebih dari satu sistem untuk digabungkan di kolom ini. Looker (Google Cloud core) akan mencari pengguna dari sistem yang tercantum sesuai urutan sistem yang ditentukan. Misalnya, jika Anda pertama kali membuat beberapa pengguna menggunakan OIDC, lalu menggunakan SAML, saat pengguna mencoba login dengan OAuth untuk pertama kalinya, Looker (inti Google Cloud) akan terlebih dahulu mencari pengguna menggunakan OIDC, lalu, jika tidak menemukan kecocokan untuk pengguna dengan OIDC, Looker akan mencari pengguna menggunakan SAML.

Jika Anda tidak ingin Looker (Google Cloud core) menggabungkan pengguna, biarkan kolom ini kosong.

Mencerminkan Google Grup

Jika Anda telah mengelola Google Grup, Looker (Google Cloud core) dapat membuat grup Looker yang mencerminkan keanggotaan Google Grup Anda. Artinya, Anda tidak perlu menyiapkan pengguna di Looker (Google Cloud core) secara langsung, tetapi dapat mengelola akses pengguna dengan mengelola keanggotaan Google Grup. Selain itu, grup Looker dapat digunakan untuk menetapkan peran kepada anggota grup, menetapkan kontrol akses konten, mengontrol akses data dan fitur, serta menetapkan atribut pengguna.

Grup Looker yang dicerminkan (dan peran serta akses terkait) diterapkan ke pengguna baru saat mereka login pertama kali ke instance Looker (Google Cloud core). Grup tidak diterapkan ke pengguna yang sudah ada, dan grup tidak akan diterapkan kembali jika dihapus dari akun pengguna dalam Looker (inti Google Cloud) setelah login awal pengguna.

Sebaiknya aktifkan pencerminan grup hanya untuk metode autentikasi utama untuk Looker (inti Google Cloud). Jika Anda menggunakan OAuth sebagai metode autentikasi cadangan, jangan aktifkan pencerminan grup untuk OAuth. Jika Anda mengaktifkan pencerminan grup untuk metode autentikasi primer dan sekunder, perilaku berikut akan terjadi:

  • Jika pengguna telah menggabungkan identitas, pencerminan grup akan cocok dengan metode autentikasi utama, terlepas dari metode autentikasi sebenarnya yang digunakan untuk login.
  • Jika pengguna tidak memiliki identitas gabungan, pencerminan grup akan cocok dengan metode autentikasi yang digunakan untuk login.

Langkah-langkah untuk mengaktifkan grup yang dicerminkan

Untuk mengaktifkan pencerminan grup, selesaikan langkah-langkah berikut:

  1. Di konsol Google Cloud, aktifkan Cloud Identity API di Google Cloud project yang berisi klien OAuth Anda. Anda harus memiliki peran IAM Service Usage Admin (roles/serviceusage.serviceUsageAdmin) untuk mengaktifkan API.

    Mengaktifkan API

  2. Di konsol Google Cloud, perbarui layar izin klien OAuth untuk menambahkan cakupan https://www.googleapis.com/auth/cloud-identity.groups.readonly. Anda harus memiliki izin IAM clientauthconfig.clients.update untuk menambahkan cakupan. Selesaikan langkah-langkah berikut untuk memperbarui layar izin:

    • Buka klien OAuth.
    • Pilih halaman Akses Data.
    • Klik tombol Tambahkan atau hapus cakupan. Tindakan ini akan membuka panel Update selected scopes.
    • Temukan cakupan https://www.googleapis.com/auth/cloud-identity.groups.readonly dan centang kotak di sampingnya.
    • Klik tombol Update untuk menambahkan cakupan.
    • Tutup panel dan klik Simpan di halaman Akses Data untuk menyimpan cakupan.

  3. Di instance Looker (Google Cloud core), aktifkan tombol Mirror Google Groups di halaman Google Authentication. Tombol ini dinonaktifkan secara default. Lengkapi kolom berikut:

    • Di kolom Looker Group Name, tambahkan nama untuk grup Looker. Nama ini akan muncul di halaman Grup dalam Looker (Google Cloud core).
    • Di kolom ID Google Grup, masukkan nama atau email Google Grup yang ingin Anda buat salinannya.
    • Di kolom Peran, masukkan peran Looker yang ingin Anda tetapkan kepada anggota grup tersebut.

Looker (Google Cloud core) akan membuat satu grup Looker untuk setiap Grup Google yang ditambahkan ke halaman Autentikasi Google. Anda dapat melihat grup Looker tersebut di halaman Grup Looker (Google Cloud core).

Mengedit grup yang dicerminkan

Saat Anda membuat perubahan pada keanggotaan Google Grup, perubahan tersebut akan otomatis diterapkan ke keanggotaan grup Looker yang dicerminkan dan divalidasi pada saat setiap pengguna login lagi.

Jika Anda mengedit kolom Nama kustom atau Peran yang ditetapkan ke grup di halaman Autentikasi Google, tindakan ini akan mengubah tampilan nama grup Looker yang dicerminkan di halaman Grup Looker (inti Google Cloud) atau peran yang ditetapkan ke grup, tetapi tidak mengubah anggota grup.

Jika Anda mengubah nama atau email di kolom ID Grup Google di halaman Autentikasi Google menjadi ID grup Google baru, tindakan ini akan mengubah anggota grup Looker yang dicerminkan menjadi anggota grup Google baru, tetapi akan mempertahankan nama dan peran grup seperti yang ditentukan di halaman Autentikasi Google.

Semua hasil edit yang dilakukan pada grup yang dicerminkan akan diterapkan kepada pengguna grup tersebut saat mereka login ke Looker (Google Cloud core) lagi.

Menonaktifkan grup yang dicerminkan

Jika Anda ingin berhenti mencerminkan Google Grup dalam Looker (Google Cloud core), nonaktifkan tombol Mirror Google Groups di halaman Google Authentication pada instance Looker (Google Cloud core).

Jika opsi ini dinonaktifkan, grup Looker yang dicerminkan yang masih berisi pengguna akan tetap tersedia untuk digunakan dalam Looker (Google Cloud core), dan dapat digunakan dalam pengelolaan konten dan penetapan peran. Namun, pengguna tidak dapat ditambahkan ke atau dihapus dari grup Looker yang dicerminkan setelah Mirror Google Groups dinonaktifkan. Semua grup Looker yang dicerminkan yang tidak berisi pengguna akan dihapus.

Pengelolaan peran lanjutan

Jika tombol Mirror Google Groups diaktifkan, halaman Google Authentication akan menampilkan setelan Advanced Role Management. Opsi di bagian ini menentukan seberapa fleksibel admin Looker saat mengonfigurasi grup dan pengguna Looker yang telah dicerminkan dari Google.

Jika Anda ingin konfigurasi pengguna dan grup Looker benar-benar cocok dengan konfigurasi Google Grup, aktifkan semua opsi Pengelolaan Peran Lanjutan. Jika semua opsi diaktifkan, admin Looker tidak dapat mengubah keanggotaan grup yang dicerminkan dan hanya dapat menetapkan peran kepada pengguna melalui Google Grup.

Jika Anda ingin memiliki fleksibilitas lebih untuk menyesuaikan grup dalam Looker (inti Google Cloud), nonaktifkan opsi ini. Grup Looker (Google Cloud core) Anda akan tetap mencerminkan konfigurasi Google Grup, tetapi Anda dapat melakukan pengelolaan grup dan pengguna tambahan dalam Looker (Google Cloud core), seperti menambahkan pengguna Google ke grup Looker atau menetapkan peran Looker langsung kepada pengguna Google.

Untuk instance Looker (inti Google Cloud), opsi ini dinonaktifkan secara default.

Bagian Advanced Role Management berisi opsi berikut:

  • Cegah pengguna Google individual menerima peran langsung: Mengaktifkan opsi ini akan mencegah admin Looker menetapkan peran Looker langsung kepada pengguna Google. Pengguna Google hanya akan menerima peran melalui keanggotaan grup mereka. Jika pengguna Google diizinkan untuk menjadi anggota grup Looker bawaan (tidak dicerminkan), mereka tetap dapat mewarisi peran dari Google Grup yang dicerminkan dan dari grup Looker bawaan. Peran pengguna Google yang sebelumnya ditetapkan secara langsung akan dihapus saat mereka login lagi.

    Jika opsi ini nonaktif, admin Looker dapat menetapkan peran Looker langsung kepada pengguna Google dalam instance Looker (Google Cloud core).

  • Cegah keanggotaan langsung di grup non-Google: Opsi ini mencegah admin Looker menambahkan anggota grup yang dicerminkan langsung ke grup Looker bawaan yang bukan bagian dari konfigurasi grup yang dicerminkan di halaman Autentikasi Google.

    Jika opsi ini dipilih, semua pengguna Google yang sebelumnya ditetapkan ke grup Looker bawaan akan dihapus dari grup tersebut saat mereka login lagi.

    Jika opsi ini dihapus, admin Looker dapat menambahkan pengguna Google langsung ke grup Looker bawaan.

  • Cegah Pewarisan Peran dari non-Google Grup: Opsi ini mencegah anggota grup yang dicerminkan mewarisi peran dari grup Looker bawaan. Jika Grup Google yang dicerminkan diizinkan menjadi anggota grup Looker bawaan, pengguna Google dapat mempertahankan keanggotaan di grup Looker bawaan mana pun. Semua pengguna Google yang sebelumnya mewarisi peran dari grup Looker bawaan akan kehilangan peran tersebut saat login berikutnya.

    Jika opsi ini nonaktif, grup yang dicerminkan atau pengguna Google yang ditambahkan sebagai anggota grup Looker bawaan akan mewarisi peran yang ditetapkan ke grup Looker bawaan.

  • Autentikasi Memerlukan Peran: Jika opsi ini diaktifkan, pengguna Google harus memiliki peran Looker yang ditetapkan. Pengguna Google yang tidak memiliki peran yang ditetapkan tidak akan dapat login ke Looker (Google Cloud core) sama sekali.

    Jika opsi ini nonaktif, pengguna Google dapat mengautentikasi ke Looker (inti Google Cloud) meskipun mereka tidak memiliki peran yang ditetapkan. Pengguna tanpa peran yang ditetapkan tidak akan dapat melihat data atau melakukan tindakan apa pun di Looker (Google Cloud core), tetapi mereka akan dapat login ke Looker (Google Cloud core).

Menetapkan peran Looker default

Jika tombol Mirror Google Groups dinonaktifkan, setelan Roles for new users akan muncul di halaman Google Authentication. Setelan ini memungkinkan Anda menetapkan peran Looker default yang akan diberikan ke akun pengguna dengan peran IAM Looker Instance User (roles/looker.instanceUser) atau peran IAM Looker Viewer (roles/looker.viewer) saat mereka pertama kali login ke instance Looker (Google Cloud core). Untuk menetapkan peran default, ikuti langkah-langkah berikut:

  1. Buka halaman Google Authentication di bagian Authentication pada menu Admin.
  2. Di setelan Roles for new users, pilih peran yang ingin Anda berikan kepada semua pengguna baru secara default. Setelan ini berisi daftar semua peran default dan peran kustom dalam instance Looker (Google Cloud Core).

Peran admin tidak boleh berupa peran default. Akun pengguna dengan peran IAM Admin Looker (roles/looker.admin) akan diberi peran Looker Admin melalui IAM saat login pertama kali, selain peran yang dipilih di setelan Peran untuk pengguna baru.

Jika Anda mengaktifkan tombol Mirror Google Groups setelah menyesuaikan setelan Roles for new users, peran yang ditetapkan kepada pengguna melalui setelan Roles for new users akan dihapus untuk pengguna saat mereka login berikutnya dan diganti dengan peran yang ditetapkan melalui setelan Mirror Google Groups.

Menguji Autentikasi Pengguna

Klik tombol Test Google Authentication untuk menguji setelan Anda. Pengujian akan mengalihkan ke server OAuth Google dan akan membuka tab browser. Tab ini menampilkan informasi berikut:

  • Apakah Looker (inti Google Cloud) dapat berkomunikasi dengan server dan memvalidasi.
  • Informasi pengguna yang diperoleh Looker (Google Cloud core) dari server. Anda perlu memvalidasi bahwa server menampilkan hasil yang tepat.
  • Trace untuk menunjukkan cara info ditemukan. Gunakan rekaman aktivitas untuk memecahkan masalah jika informasinya salah. Jika memerlukan informasi tambahan, Anda dapat membaca file server XML mentah.
  • Versi token ID mentah dan yang didekode yang diterima. Kode ini dapat digunakan untuk mengonfirmasi detail pengguna serta konfigurasi Google.

Simpan dan terapkan setelan

Setelah Anda selesai memasukkan informasi dan semua pengujian lulus, centang kotak Saya telah mengonfirmasi konfigurasi di atas dan ingin mengaktifkan penerapannya secara global, lalu klik Kirim untuk menyimpan.

Menambahkan pengguna ke instance Looker (Google Cloud core)

Setelah instance Looker (Google Cloud core) dibuat, pengguna dapat ditambahkan melalui IAM. Untuk menambahkan pengguna, ikuti langkah-langkah berikut:

  1. Pastikan Anda memiliki peran Project IAM Admin atau peran lain yang memungkinkan Anda mengelola akses IAM.
  2. Buka Google Cloud project konsol tempat instance Looker (Google Cloud core) berada.

  3. Buka bagian IAM & Admin > IAM di konsol Google Cloud.

  4. Pilih Berikan Akses.

  5. Di bagian Add principals, tambahkan satu atau beberapa hal berikut:

    • Email Akun Google
    • Google Grup
    • Domain Google Workspace
  6. Di bagian Assign roles, pilih salah satu peran IAM Looker (inti Google Cloud) yang telah ditetapkan atau peran kustom yang telah Anda tambahkan.

  7. Klik Simpan.

  8. Beri tahu pengguna Looker (Google Cloud core) baru bahwa akses telah diberikan dan arahkan mereka ke URL untuk instance tersebut. Dari sana, mereka dapat login ke instance, dan pada saat itu akun mereka akan dibuat. Tidak ada komunikasi otomatis yang akan dikirim.

Jika Anda mengubah peran IAM pengguna, peran IAM akan diterapkan ke instance Looker (Google Cloud core) dalam beberapa menit. Jika ada akun pengguna Looker yang sudah ada, peran Looker pengguna tersebut tidak akan berubah.

Semua pengguna harus disediakan dengan langkah-langkah IAM yang dijelaskan sebelumnya, dengan satu pengecualian: Anda dapat membuat akun layanan khusus Looker API dalam instance Looker (inti Google Cloud).

Login ke Looker (Google Cloud core) dengan OAuth

Saat login pertama kali, pengguna akan diminta untuk login dengan Akun Google mereka. Mereka harus menggunakan akun yang sama dengan yang tercantum oleh admin Looker di kolom Tambahkan akun utama saat memberikan akses. Pengguna akan melihat layar izin OAuth yang dikonfigurasi selama pembuatan klien OAuth. Setelah pengguna menyetujui layar izin, akun mereka dalam instance Looker (inti Google Cloud) akan dibuat dan mereka akan login.

Setelah itu, pengguna akan otomatis login ke Looker (Google Cloud core) kecuali jika otorisasi mereka berakhir masa berlakunya atau dicabut oleh pengguna. Dalam skenario tersebut, pengguna akan kembali melihat layar izin OAuth dan diminta untuk memberikan izin otorisasi.

Beberapa pengguna mungkin diberi kredensial API untuk digunakan dalam mengambil token akses API. Jika otorisasi untuk pengguna tersebut berakhir masa berlakunya atau dicabut, kredensial API mereka akan berhenti berfungsi. Semua token akses API saat ini juga akan berhenti berfungsi. Untuk mengatasi masalah ini, pengguna harus memberikan otorisasi ulang kredensial mereka dengan login kembali ke UI Looker (Google Cloud core) untuk setiap instance Looker (Google Cloud core) yang terpengaruh. Atau, menggunakan akun layanan khusus API membantu menghindari kegagalan otorisasi kredensial untuk token akses API.

Menghapus akses OAuth ke Looker (Google Cloud core)

Jika memiliki peran yang memungkinkan Anda mengelola akses IAM, Anda dapat menghapus akses ke instance Looker (inti Google Cloud) dengan membatalkan peran IAM yang memberikan akses. Jika Anda menghapus peran IAM akun pengguna, perubahan tersebut akan diterapkan ke instance Looker (inti Google Cloud) dalam beberapa menit. Pengguna tidak akan dapat lagi melakukan autentikasi ke instance. Namun, akun pengguna akan tetap terlihat aktif di halaman Pengguna. Untuk menghapus akun pengguna dari halaman Pengguna, hapus pengguna dalam instance Looker (Google Cloud core).

Menggunakan OAuth sebagai metode autentikasi cadangan

OAuth adalah metode autentikasi cadangan jika SAML atau OIDC adalah metode autentikasi utama.

Untuk menyiapkan OAuth sebagai metode cadangan, berikan peran IAM yang sesuai kepada setiap pengguna Looker (inti Google Cloud) untuk login ke instance.

Setelah metode pencadangan disiapkan, pengguna dapat mengaksesnya melalui langkah-langkah berikut:

  1. Pilih Autentikasi dengan Google di halaman login.
  2. Dialog akan muncul untuk mengonfirmasi autentikasi Google. Pilih Konfirmasi di dialog.

Kemudian, pengguna dapat login menggunakan Akun Google mereka. Saat pertama kali login dengan OAuth, mereka akan diminta untuk menyetujui layar izin OAuth yang disiapkan selama pembuatan instance.

Langkah berikutnya