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 apa pun untuk membuat kredensial otorisasi saat Anda membuat instance. Sebagai contoh, halaman ini memandu Anda melakukan langkah-langkah untuk menyiapkan autentikasi untuk instance Looker (Google Cloud core) menggunakan Google Cloud konsol 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 kepada setiap prinsipal Anda, bergantung pada tingkat akses yang Anda inginkan untuk mereka:

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 (Google Cloud core) di konsol Google Cloud .

Pelihat Looker (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 (Google Cloud core) dan detail instance di Google Cloud konsol
Admin Looker (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 mencakup 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 principal 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. Untuk mengetahui informasi selengkapnya, lihat bagian Peran Admin Looker versus peran Admin melalui IAM Looker.

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 atau dicabut, pengguna harus menggunakan OAuth untuk login ke instance lagi guna mendapatkan kembali peran Admin melalui IAM.

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

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

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

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

Peran Admin Looker versus peran Admin melalui IAM Looker

Ada dua peran dalam instance Looker (Google Cloud core) yang menggunakan set 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 IAM Looker
Sumber tepercaya Diberikan oleh admin lain di instance Looker (Google Cloud core) Ditautkan 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) Saat 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 Instance Looker (Google Cloud core) individual Semua instance Looker (Google Cloud core) dalam Google Cloud project

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 Google OAuth. 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 sudah 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 Anda 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 kemudian menggunakan SAML, saat pengguna mencoba login dengan OAuth untuk pertama kalinya, Looker (inti Google Cloud) akan mencari pengguna menggunakan OIDC terlebih dahulu, 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 fitur dan data, serta menetapkan atribut pengguna.

Grup Looker yang dicerminkan (dan semua peran serta akses terkait) diterapkan kepada pengguna baru saat login awal ke instance Looker (Google Cloud core). Grup tidak diterapkan ke pengguna yang sudah ada, dan grup tidak 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 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 mencocokkan metode autentikasi utama, terlepas dari metode autentikasi sebenarnya yang digunakan untuk login.
  • Jika pengguna tidak memiliki identitas gabungan, pencerminan grup akan mencocokkan 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 project Google Cloud 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 Perbarui cakupan yang dipilih.
    • Temukan cakupan https://www.googleapis.com/auth/cloud-identity.groups.readonly dan centang kotak di sampingnya.
    • Klik tombol Update untuk menambahkan cakupan.
    • Tutup panel, lalu 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 Nama Grup Looker, tambahkan nama untuk grup Looker. Nama ini akan muncul di halaman Grup dalam Looker (Google Cloud core).
    • Di kolom ID Grup Google, masukkan nama atau email Grup Google yang ingin Anda cerminkan.
    • 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 login berikutnya setiap pengguna.

Jika Anda mengedit kolom Nama kustom atau Peran yang ditetapkan ke grup di halaman Autentikasi Google, hal 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 pada halaman Autentikasi Google menjadi ID grup Google baru, tindakan tersebut 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.

Setiap pengeditan yang dilakukan pada grup yang dicerminkan akan diterapkan kepada pengguna grup tersebut saat mereka login ke Looker (Google Cloud core) berikutnya.

Menonaktifkan grup yang dicerminkan

Jika Anda ingin berhenti mencerminkan grup Google di Looker (Google Cloud core), nonaktifkan tombol Cerminkan Grup Google di halaman Autentikasi Google pada instance Looker (Google Cloud core). Menonaktifkan tombol akan menghasilkan perilaku berikut:

  • Semua grup Google mirror tanpa pengguna akan segera dihapus.
  • Grup Google mirror yang berisi pengguna akan ditandai sebagai tidak memiliki induk. Jika tidak ada pengguna grup ini yang login dalam waktu 31 hari, grup akan dihapus. Pengguna tidak lagi dapat ditambahkan ke atau dihapus dari grup Google yang tidak memiliki pemilik.

Pengelolaan peran lanjutan

Jika tombol Mirror Google Groups diaktifkan, halaman Autentikasi Google akan menampilkan setelan Pengelolaan Peran Lanjutan. Opsi di bagian ini menentukan fleksibilitas yang dimiliki admin Looker saat mengonfigurasi grup dan pengguna Looker yang telah disalin dari Google.

Jika Anda ingin konfigurasi grup dan pengguna Looker Anda cocok dengan konfigurasi Google Grup Anda, 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 lebih banyak fleksibilitas 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 Pengelolaan Peran Lanjutan berisi opsi berikut:

  • Mencegah pengguna Google tertentu 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 menjadi anggota grup Looker bawaan (tidak dicerminkan), mereka tetap dapat mewarisi perannya dari Grup Google yang dicerminkan dan dari grup Looker bawaan. Setiap pengguna Google yang sebelumnya diberi peran secara langsung akan dihapus perannya saat mereka login berikutnya.

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

  • Mencegah keanggotaan langsung di grup non-Google: Opsi ini mencegah admin Looker menambahkan anggota grup yang dicerminkan secara 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 berikutnya.

    Jika opsi ini tidak dicentang, admin Looker dapat menambahkan pengguna Google secara langsung ke grup Looker bawaan.

  • Mencegah Pewarisan Peran dari grup 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 mereka 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.

  • Otentikasi Memerlukan Peran: Jika opsi ini aktif, pengguna Google harus memiliki peran Looker yang ditetapkan. Semua pengguna Google yang tidak diberi peran tidak akan dapat login ke Looker (Google Cloud core).

    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 apa pun 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 kepada akun pengguna dengan peran IAM Looker Instance User (roles/looker.instanceUser) atau peran IAM Looker Viewer (roles/looker.viewer) saat mereka login pertama kali ke instance Looker (inti Google Cloud). Untuk menetapkan peran default, ikuti langkah-langkah berikut:

  1. Buka halaman Google Authentication di bagian Authentication pada menu Admin.
  2. Pada setelan Peran untuk pengguna baru, 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 dapat menjadi 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 dalam setelan Peran untuk pengguna baru.

Jika Anda mengaktifkan tombol Mirror Google Groups setelah menyesuaikan setelan Peran untuk pengguna baru, peran yang ditetapkan kepada pengguna melalui setelan Peran untuk pengguna baru akan dihapus untuk pengguna saat mereka login berikutnya dan digantikan oleh 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 melakukan validasi.
  • 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 ID token yang didekode dan mentah yang diterima. Kredensial ini dapat digunakan untuk mengonfirmasi detail pengguna serta konfigurasi Google.

Simpan dan terapkan setelan

Setelah Anda selesai memasukkan informasi dan semua pengujian berhasil, 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 (Google Cloud core) bawaan atau peran khusus yang telah Anda tambahkan.

  7. Klik Simpan.

  8. Memberi tahu pengguna baru Looker (Google Cloud core) bahwa akses telah diberikan dan mengarahkan mereka ke URL untuk instance. Dari sana, mereka dapat login ke instance, dan 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 oleh langkah-langkah IAM yang dijelaskan sebelumnya, dengan satu pengecualian: Anda dapat membuat akun layanan khusus API Looker 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 dicantumkan admin Looker di kolom Tambahkan prinsipal saat memberikan akses. Pengguna akan melihat layar izin OAuth yang dikonfigurasi selama pembuatan klien OAuth. Setelah pengguna menyetujui layar izin, akun mereka di instance Looker (Google Cloud core) akan dibuat dan mereka akan login.

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

Beberapa pengguna mungkin diberi kredensial API untuk digunakan dalam mengambil token akses API. Jika otorisasi untuk pengguna tersebut berakhir atau dicabut, kredensial API mereka akan berhenti berfungsi. Semua token akses API saat ini juga akan berhenti berfungsi. Untuk mengatasi masalah ini, pengguna harus mengotorisasi ulang kredensialnya dengan login kembali ke UI Looker (Google Cloud core) untuk setiap instance Looker (Google Cloud core) yang terpengaruh. Atau, penggunaan 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 mencabut 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 muncul sebagai 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 saat SAML atau OIDC adalah metode autentikasi utama.

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

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

  1. Pilih Lakukan 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