Kontrol akses

Beberapa anggota tim biasanya berkolaborasi untuk membuat agen dan layanan mengakses agen. Dengan menggunakan peran, Anda dapat mengontrol akses dan izin yang diberikan kepada prinsipal.

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 Dialogflow Console.

Konsol Dialogflow memberikan peran Admin Agen 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 Peninjau ke agen di Konsol Dialogflow. Saat peran Developer atau Peninjau diberikan di Dialogflow Console, pengguna akan mendapatkan peran IAM Project Editor atau peran IAM Project Viewer. Cara alternatif untuk menambahkan Developer dan Peninjau ke agen adalah dengan memberikan peran IAM Project Editor atau IAM Project Viewer yang sesuai kepada pengguna di konsol Google Cloud.

Ada beberapa situasi yang mengharuskan Anda 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 memiliki integrasi dengan resource Google Cloud lainnya, seperti Cloud Functions, dan tidak ingin memberikan akses project penuh ke aplikasi, Anda harus menetapkan peran Dialogflow API (Admin, Klien, atau Pembaca) di Google Cloud Console untuk IAM.
  • Sebagian peran IAM memiliki peran Dialogflow Console yang sesuai. Jika ingin memberikan peran yang tidak ada di Konsol Dialogflow, 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 untuk resource khusus runtime selama percakapan seperti mendeteksi intent, memperbarui konteks, memperbarui entity sesi, atau interaksi percakapan Agent Assist. Akses ini memberikan sebagian izin yang ditemukan dalam akses penuh dan edit.
  • Akses baca: Izin untuk membaca resource apa pun.
Peran Konsol Dialogflow Peran IAM Ringkasan Izin Detail Izin
Admin Project >
Owner
Berikan kepada pemilik project 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 Konsol Dialogflow.
  • Dapat mendeteksi intent menggunakan API.
  • Dapat mengubah edisi agen di Konsol Dialogflow 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:
  • Mengedit akses ke semua resource project Google Cloud menggunakan Konsol Google Cloud atau API.
  • Edit akses ke agen menggunakan Konsol Dialogflow.
  • Dapat mendeteksi intent menggunakan API.
Lihat definisi peran dasar IAM.
Pengulas 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 Google Cloud atau API.
  • Akses baca ke agen menggunakan Konsol atau API Dialogflow, 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 project, termasuk folder, organisasi, dan kebijakan IAM:
  • Akses baca ke hierarki project Google Cloud.
  • Tidak ada akses ke agen yang menggunakan Konsol Dialogflow.
  • 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 intent deteksi 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.
  • Edit akses ke sebagian besar data agen menggunakan Konsol Dialogflow. Tidak dapat mengakses Editor Langsung 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 Konsol Dialogflow, 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 petunjuk mendetail tentang cara menambahkan, mengedit, dan menghapus izin.

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

Menambahkan akun pengguna atau 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 Konsol Dialogflow

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 Bagikan, hal ini karena Anda tidak memiliki peran Admin Agen yang diperlukan.

Tab Bagikan menampilkan pengguna dengan tingkat akses mereka.

Tambahkan 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 Sertakan pemberian peran yang disediakan Google di halaman IAM.

Anda tidak boleh menghapus, mengedit, atau mendownload kunci untuk agen layanan ini, dan Anda juga tidak boleh menggunakan agen layanan ini untuk melakukan panggilan API langsung. Akun tersebut hanya digunakan oleh layanan Dialogflow untuk terhubung ke berbagai layanan Google Cloud yang digunakan oleh agen Anda. Anda mungkin perlu menghubungi 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, admin lama dapat dihapus.

Jika admin yang ada tidak lagi bekerja di organisasi Anda, dan Anda perlu mentransfer peran admin ke 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 mengimpor ke agen tempat karyawan yang diinginkan adalah admin. Hal ini dapat menyebabkan periode nonaktif untuk agen produksi live saat agen dimigrasikan dan integrasi apa pun diperbarui.

OAuth

Jika menggunakan library klien Google untuk mengakses Dialogflow, Anda tidak perlu menggunakan OAuth secara langsung, karena library ini menangani penerapan 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 Dialogflow meminta objek akses 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)