Kontrol akses

Beberapa anggota tim biasanya berkolaborasi dalam membangun agen dan layanan untuk mengakses agen. Dengan menggunakan peran, Anda dapat mengontrol akses dan izin yang diberikan kepada akun utama.

Jika menggunakan API, Anda mungkin juga memiliki satu atau beberapa aplikasi yang mengirim permintaan ke agen. Dalam hal ini, Anda dapat mengontrol akses dengan akun layanan.

Anda dapat mengontrol akses menggunakan Identity and Access Management (IAM) atau Konsol Dialogflow.

Konsol Dialogflow memberikan peran Agent Admin kepada pengguna yang membuat agen. Pengguna ini otomatis mendapatkan peran Project Owner IAM dalam project yang terkait dengan agen.

Admin Agen dapat menambahkan Developer dan Reviewer ke agen di Dialogflow Console. Saat peran Developer atau Reviewer diberikan di Dialogflow Console, pengguna masing-masing akan mendapatkan peran IAM Project Editor atau peran IAM Project Viewer. Cara alternatif untuk menambahkan Developer dan Reviewer ke agen adalah dengan memberi pengguna peran IAM Project Editor atau IAM Project Viewer yang sesuai di konsol Google Cloud .

Ada beberapa situasi saat Anda harus menggunakan konsol Google Cloud :

  • Jika ingin mengubah Admin, menambahkan beberapa Admin untuk satu agen, atau menghapus Admin untuk agen, Anda harus menggunakan konsol Google Cloud .
  • Jika Anda memiliki integrasi dengan resource Google Cloud lain, seperti Cloud Functions, dan tidak ingin memberikan akses project penuh ke aplikasi, Anda harus menetapkan peran Dialogflow API (Admin, Client, atau Reader) di konsol Google Cloud untuk IAM.
  • Sebagian peran IAM memiliki peran Konsol Dialogflow yang sesuai. Jika ingin memberikan peran yang tidak ada di Dialogflow Console, Anda harus menggunakan konsol Google Cloud .

Peran

Tabel berikut mencantumkan peran umum yang relevan dengan Dialogflow, korelasi antara peran Konsol Dialogflow dan peran IAM, serta detail tentang izin.

Ringkasan izin dalam tabel menggunakan istilah berikut:

  • Akses penuh: Izin untuk mengubah akses, membuat, menghapus, mengedit, dan membaca resource apa pun.
  • Akses edit: Izin untuk membuat, menghapus, mengedit, dan membaca resource apa pun.
  • Akses sesi: Izin untuk memanggil metode bagi resource khusus runtime selama percakapan seperti mendeteksi intent, memperbarui konteks, memperbarui entity sesi, atau interaksi percakapan Agent Assist. Akses ini memberikan sebagian izin yang ada di akses penuh dan akses edit.
  • Akses baca: Izin untuk membaca resource apa pun.
Peran Dialogflow Console Peran IAM Ringkasan Izin Detail Izin
Admin Project >
Owner
Berikan kepada Project Owner yang memerlukan akses penuh ke semua resource Google Cloud dan Dialogflow:
  • Akses penuh ke semua resource project Google Cloud menggunakan konsol atau API Google Cloud .
  • Akses penuh ke agen menggunakan Dialogflow Console.
  • Dapat mendeteksi intent menggunakan API.
  • Dapat mengubah edisi agen di Dialogflow Console atau menggunakan API.
Lihat definisi peran dasar IAM.
Developer Project >
Editor
Berikan kepada editor project yang memerlukan akses edit ke semua resource Google Cloud dan Dialogflow:
  • Edit akses ke semua resource project Google Cloud menggunakan konsol atau API Google Cloud .
  • Mengedit akses ke agen menggunakan Dialogflow Console.
  • Dapat mendeteksi intent menggunakan API.
Lihat definisi peran dasar IAM.
Reviewer Project >
Viewer
Berikan kepada pelihat project yang memerlukan akses baca ke semua resource Google Cloud dan Dialogflow:
  • Akses baca ke semua resource project Google Cloud menggunakan konsol atau API Google Cloud .
  • Akses baca ke agen menggunakan Konsol Dialogflow atau API, tidak dapat menggunakan simulator.
  • Tidak dapat mendeteksi intent menggunakan API.
Lihat definisi peran dasar IAM.
T/A Project >
Browser
Berikan kepada browser project yang memerlukan akses baca untuk menjelajahi hierarki dalam suatu project, termasuk folder, organisasi, dan kebijakan IAM:
  • Akses baca ke hierarki project Google Cloud .
  • Tidak ada akses ke agen yang menggunakan Dialogflow Console.
  • Tidak dapat mendeteksi intent menggunakan API.
Lihat Definisi peran project IAM.
T/A Dialogflow >
Dialogflow API Admin
Berikan kepada admin Dialogflow API yang memerlukan akses penuh ke resource khusus Dialogflow:
  • Akses penuh ke semua resource Dialogflow menggunakan konsol atau API Google Cloud .
  • Akses baca ke agen menggunakan Konsol Dialogflow.
  • Dapat mendeteksi intent menggunakan API.
Lihat definisi peran IAM Dialogflow.
T/A Dialogflow >
Dialogflow API Client
Berikan kepada klien Dialogflow API yang melakukan panggilan deteksi intent menggunakan API:
  • Akses sesi ke resource Dialogflow runtime menggunakan simulator atau API Dialogflow.
  • Akses terbatas ke agen yang menggunakan Konsol Dialogflow.
  • Dapat mendeteksi intent menggunakan API.
Lihat definisi peran IAM Dialogflow.
T/A Dialogflow >
Dialogflow Console Agent Editor
Berikan kepada editor Konsol Dialogflow yang mengedit agen yang ada:
  • Akses penuh ke semua resource Dialogflow menggunakan konsol Google Cloud .
  • Mengedit akses ke sebagian besar data agen menggunakan Dialogflow Console. Tidak dapat mengakses Editor Inline untuk integrasi Cloud Functions atau Asisten Google.
  • Dapat mendeteksi intent menggunakan API.
Lihat definisi peran IAM Dialogflow.
T/A Dialogflow >
Dialogflow API Reader
Berikan kepada klien Dialogflow API yang melakukan panggilan hanya baca khusus Dialogflow menggunakan API:
  • Akses baca ke semua resource Dialogflow menggunakan konsol atau API Google Cloud .
  • Akses baca ke agen menggunakan Dialogflow Console, tidak dapat menggunakan simulator.
  • Tidak dapat mendeteksi intent menggunakan API.
Lihat definisi peran IAM Dialogflow.

Mengontrol akses dengan konsol Google Cloud

Anda dapat mengontrol akses dengan setelan IAM. Lihat panduan memulai IAM untuk mengetahui petunjuk mendetail tentang cara menambahkan, mengedit, dan menghapus izin.

Untuk mengakses setelan di bawah, buka halaman IAM di konsol Google Cloud .

Menambahkan pengguna atau akun layanan ke project

Anda dapat memberikan izin kepada pengguna atau akun layanan dengan memberikan peran kepada mereka di project Google Cloud Anda. Pengguna ditambahkan dengan memberikan alamat email mereka. Akun layanan juga ditambahkan dengan memberikan alamat email terkait. Anda perlu menambahkan anggota akun layanan jika ingin menggunakan satu akun layanan untuk beberapa project dan agen. Untuk menemukan alamat email yang terkait dengan akun layanan Anda, lihat halaman Service Accounts IAM di konsol Google Cloud .

Untuk menambahkan anggota:

  1. Klik tombol tambahkan di bagian atas halaman.
  2. Masukkan alamat email anggota.
  3. Pilih peran.
  4. Klik Simpan.

Ubah izin

  1. Klik tombol edit untuk anggota.
  2. Pilih peran lain.
  3. Klik Simpan.

Menghapus anggota

  1. Klik tombol hapus untuk anggota.

Mengontrol akses dengan Dialogflow Console

Opsi berbagi dapat ditemukan di setelan agen. Untuk membuka setelan berbagi agen:

  1. Buka konsol Dialogflow ES.
  2. Pilih agen Anda di dekat bagian atas menu sidebar kiri.
  3. Klik tombol setelan di samping nama agen.
  4. Klik tab Bagikan. Jika Anda tidak melihat tab Share, itu karena Anda tidak memiliki peran Agent Admin yang diperlukan.

Tab Bagikan yang menampilkan pengguna beserta tingkat aksesnya.

Menambahkan pengguna

  1. Masukkan alamat email pengguna di bagian Undang Orang Baru.
  2. Pilih peran.
  3. Klik Tambahkan.
  4. Klik Simpan.

Ubah izin

  1. Temukan pengguna dalam daftar.
  2. Pilih peran lain.
  3. Klik Simpan.

Menghapus pengguna

  1. Temukan pengguna dalam daftar.

  2. Klik tombol hapus untuk pengguna.

  3. Klik Simpan.

Akun layanan yang dibuat secara otomatis

Saat Anda membuat dan menggunakan agen, Dialogflow akan membuat beberapa agen layanan secara otomatis.

Untuk melihat peran yang diberikan kepada agen layanan ini, aktifkan opsi Include Google-provided role grants di halaman IAM.

Anda tidak boleh menghapus, mengedit, atau mendownload kunci untuk salah satu agen layanan ini, dan Anda juga tidak boleh menggunakan agen layanan ini untuk melakukan panggilan API langsung. Akun layanan ini hanya digunakan oleh layanan Dialogflow untuk terhubung ke berbagai layanan Google Cloud yang digunakan oleh agen Anda. Anda mungkin perlu merujuk ke agen layanan ini melalui email saat mengonfigurasi fitur Dialogflow tertentu.

Tabel berikut menjelaskan beberapa agen layanan ini:

Formulir email IAM Tujuan
service-project-number
@gcp-sa-dialogflow.iam.gserviceaccount.com
Digunakan untuk menghubungkan agen Anda ke layanan yang menangani traffic integrasi.
firebase-adminsdk-alphanum
@project-id.iam.gserviceaccount.com
Digunakan untuk menghubungkan agen Anda ke layanan yang menangani traffic integrasi Asisten Google.
project-id
@appspot.gserviceaccount.com
Digunakan untuk menghubungkan agen Anda ke layanan yang menangani traffic integrasi Asisten Google.

Mentransfer peran admin

Untuk mentransfer peran admin agen, admin yang ada harus mengikuti langkah-langkah di atas untuk menambahkan admin baru. Setelah admin baru menerima peran yang diberikan, Anda dapat menghapus admin lama dengan aman.

Jika admin yang ada tidak lagi bekerja di organisasi Anda, dan Anda perlu mentransfer peran admin kepada karyawan lain, Anda memiliki dua opsi:

  • Administrator organisasi yang terkait dengan project agen memiliki izin untuk mengubah admin agen.
  • Jika memiliki izin baca untuk agen, Anda dapat mengekspor agen dan mengimpornya ke agen yang adminnya adalah karyawan yang diinginkan. Hal ini dapat menyebabkan periode nonaktif untuk agen produksi live selama agen dimigrasikan dan integrasi apa pun diperbarui.

OAuth

Jika Anda menggunakan library klien Google untuk mengakses Dialogflow, Anda tidak perlu menggunakan OAuth secara langsung, karena library ini menangani implementasinya untuk Anda. Namun, jika Anda menerapkan klien Anda sendiri, Anda mungkin perlu menerapkan alur OAuth Anda sendiri. Akses ke Dialogflow API memerlukan salah satu cakupan OAuth berikut:

  • https://www.googleapis.com/auth/cloud-platform (akses ke semua resource project)
  • https://www.googleapis.com/auth/dialogflow (akses ke resource Dialogflow)

Permintaan yang melibatkan akses Cloud Storage

Beberapa permintaan Dialogflow mengakses objek di Cloud Storage untuk membaca atau menulis data. Saat Anda memanggil salah satu permintaan ini, Dialogflow akan mengakses data Cloud Storage atas nama pemanggil. Artinya, autentikasi permintaan Anda harus memiliki izin untuk mengakses Dialogflow serta objek Cloud Storage.

Saat menggunakan library klien Google dan peran IAM, lihat panduan kontrol akses Cloud Storage untuk mengetahui informasi tentang peran Cloud Storage.

Saat menerapkan klien Anda sendiri dan menggunakan OAuth, Anda harus menggunakan cakupan OAuth berikut:

  • https://www.googleapis.com/auth/cloud-platform (akses ke semua resource project)