IAM Conditions untuk akses terperinci
Halaman ini menjelaskan cara membatasi akses ke koneksi Anda menggunakan IAM Conditions.
Dengan IAM Condition, Anda dapat memiliki kontrol terperinci atas resource Integration Connectors. Secara default,
pengguna atau peran Integration Connectors
dapat melakukan semua operasi yang didukung pada koneksi. Dengan menggunakan IAM Conditions, Anda dapat
membatasi pengguna atau peran tertentu untuk hanya melakukan operasi yang dipilih pada koneksi. Misalnya, Anda dapat membatasi pengguna
sehingga pengguna hanya dapat mengubah koneksi yang namanya diawali dengan
test-connection, dan tidak akan memiliki izin lain pada koneksi tersebut seperti
berlangganan peristiwa, atau melihat metadata skema.
Sebelum memulai
Integration Connectors menggunakan Identity and Access Management (IAM) Google Cloud untuk mengelola peran dan izin resource Integration Connectors. Oleh karena itu, sebelum Anda menentukan atau mengubah kondisi di IAM untuk resource Integration Connectors, pahami konsep IAM berikut:
Menambahkan IAM Conditions
Untuk menambahkan IAM Condition ke resource Integration Connectors, Anda memerlukan informasi berikut:
- URI Resource Bernama - Setiap resource di Integration Connectors memiliki URI resource yang unik. Misalnya, URI untuk resource koneksi adalah
projects/PROJECT_ID/locations/CONNECTION_LOCATION/connections/{connection_name}. Untuk mengetahui daftar lengkap semua URI yang tersedia, lihat Resource REST Integration Connectors. Untuk mengontrol izin akses resource di tingkat terperinci, Anda harus memberi nama resource sesuai dengan konvensi penamaan. Berdasarkan persyaratan, Anda dapat memutuskan konvensi penamaan yang ingin digunakan. Misalnya, Anda dapat menambahkan awalan katamarketing-untuk semua koneksi yang dimiliki oleh tim pemasaran. Dalam contoh ini, URI resource untuk koneksi tim pemasaran akan dimulai denganprojects/PROJECT_ID/locations/CONNECTION_LOCATION/connections/marketing-. - Izin khusus induk - Periksa apakah resource atau salah satu resource turunannya memerlukan izin khusus induk. Untuk mengetahui informasi selengkapnya, lihat Izin khusus induk.
- Jenis resource - Anda dapat mempersempit cakupan resource lebih lanjut dengan memfilter
jenis resource dalam kondisi. Integration Connectors mendukung kondisi untuk resource berikut:
Nama resource Jenis resource Koneksi connectors.googleapis.com/Connection ManagedZone connectors.googleapis.com/ManagedZone EndpointAttachment connectors.googleapis.com/EndpointAttachment EventSubscription connectors.googleapis.com/EventSubscription ConnectionSchemaMetadata connectors.googleapis.com/ConnectionSchemaMetadata
Contoh
Tabel berikut mencantumkan contoh kondisi resource yang dapat Anda terapkan untuk pengguna atau peran Integration Connectors.
| Kondisi resource IAM | Deskripsi |
|---|---|
(resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") && resource.type == "connectors.googleapis.com/Connection")
|| (resource.type != "connectors.googleapis.com/Connection"
&& resource.name.extract("/operations/{operation}") == "") |
Pengguna atau peran yang Anda beri kondisi ini, hanya dapat melakukan operasi berikut:
Pengguna tidak dapat melihat, membatalkan, atau menghapus operasi yang berjalan lama satu per satu. Agar pengguna dapat melacak progres operasi, lihat Mengizinkan pengguna yang dibatasi melacak operasi. |
(resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") && resource.type == "connectors.googleapis.com/Connection") ||
(resource.name.startsWith ("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") && resource.type == "connectors.googleapis.com/ConnectionSchemaMetadata")
|| (resource.type != "connectors.googleapis.com/Connection"
&& resource.type != "connectors.googleapis.com/ConnectionSchemaMetadata"
&& resource.name.extract("/operations/{operation}") == "") |
Pengguna atau peran yang Anda beri kondisi ini, hanya dapat melakukan operasi berikut:
Pengguna tidak dapat melihat, membatalkan, atau menghapus operasi yang berjalan lama satu per satu. |
Mengizinkan pengguna yang dibatasi melacak operasi
Jika kondisi dalam contoh sebelumnya mengecualikan operasi, pengguna yang dibatasi masih dapat
membuat, memperbarui, dan menghapus koneksi yang diizinkan untuk dikelola, tetapi mereka tidak dapat memeriksa
status operasi yang berjalan lama yang dihasilkan. Jika pengguna yang dibatasi perlu melacak
operasi, beri mereka
peran khusus terpisah tanpa kondisi, yang hanya berisi
izin connectors.operations.get.
Dengan peran ini, pengguna dapat melihat operasi apa pun dalam project, termasuk operasi untuk koneksi yang tidak dapat mereka akses. Ini adalah informasi koneksi yang sama dengan yang sudah dapat dilihat pengguna karena mereka dapat mencantumkan semua koneksi. Jangan memberikan izin connectors.operations.cancel atau connectors.operations.delete kepada pengguna yang aksesnya dibatasi oleh suatu kondisi, karena izin tersebut akan memungkinkan mereka membatalkan atau menghapus operasi untuk koneksi apa pun dalam project.
Menambahkan IAM Condition untuk akun layanan Application Integration
Anda dapat menerapkan IAM Condition ke akun layanan Application Integration, yang memungkinkan Anda membatasi koneksi
yang dapat diakses akun layanan selama eksekusi integrasi. Misalnya, Anda dapat membatasi akun layanan sehingga hanya dapat mengakses koneksi yang namanya diawali dengan marketing-.
Untuk mengetahui informasi selengkapnya, lihat Menerapkan IAM Condition ke akun layanan.
Tabel berikut mencantumkan contoh kondisi resource yang dapat Anda terapkan untuk akun layanan Application Integration.
| Kondisi resource IAM | Deskripsi |
|---|---|
resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") |
Akun layanan yang Anda beri kondisi ini hanya dapat menjalankan koneksi yang namanya diawali dengan marketing-. |
Langkah berikutnya
Baca informasi berikut dalam dokumentasi IAM:
- Menambahkan binding peran bersyarat ke kebijakan
- Mengubah binding peran bersyarat yang ada
- Menghapus binding peran bersyarat