Menggunakan IAM untuk mengontrol akses

Alur kerja menggunakan Identity and Access Management (IAM) untuk mengontrol pengguna dan akun layanan yang diautentikasi mana yang dapat melakukan tindakan tertentu.

Sebelum Anda mulai mengautentikasi dan memberikan otorisasi akses ke resource Alur Kerja, pastikan Anda memahami konsep dasar IAM.

Halaman ini menjelaskan izin yang diperlukan untuk mengakses resource Alur Kerja, termasuk kemampuan untuk memanggil eksekusi alur kerja.

Untuk informasi tentang cara memberikan izin ke alur kerja untuk mengakses layanan lain, lihat Memberikan izin alur kerja untuk mengakses resource Google Cloud.

Kontrol akses

Terlepas dari cara Anda menerapkan autentikasi, penting untuk memahami kontrol akses dan peran Alur Kerja yang tersedia. Peran adalah kumpulan izin yang memberikan akses ke resource di Google Cloud. Saat mem-build aplikasi produksi, hanya berikan peran yang diperlukan akun layanan untuk berinteraksi dengan API, fitur, atau resource Google Cloud yang berlaku.

Untuk mengetahui informasi selengkapnya tentang peran Workflows yang tersedia, lihat Peran dan izin Workflows.

Memanggil Alur Kerja

Akun layanan adalah identitas dan resource yang menerima kebijakan IAM. Dengan demikian, Anda dapat memberikan peran ke akun layanan, lalu mengizinkan akun utama lain meniru identitas akun layanan dengan memberinya peran di akun layanan atau di salah satu resource induk akun layanan.

Misalnya, Anda dapat memberikan peran workflows.invoker ke akun layanan sehingga akun tersebut memiliki izin untuk memicu eksekusi alur kerja Anda. Kemudian, Anda dapat mengizinkan akun utama untuk meniru identitas, atau bertindak sebagai, akun layanan Anda. Perhatikan bahwa akun layanan alur kerja tidak memerlukan peran workflows.invoker, kecuali jika alur kerja memanggil dirinya sendiri atau alur kerja lainnya.

Untuk informasi selengkapnya tentang peniruan akun layanan, lihat Peniruan akun layanan.

Untuk memberikan peran Workflows Invoker (roles/workflows.invoker) kepada akun layanan layanan yang memanggil Workflows sehingga layanan memiliki izin untuk menjalankan alur kerja dan mengelola eksekusi, lakukan tindakan berikut:

Konsol

  1. Di konsol Google Cloud, buka halaman Service Accounts:
    Buka Service Accounts

  2. Pilih project, lalu klik Buat akun layanan.

  3. Di kolom Nama akun layanan, masukkan nama, seperti sa-name.

  4. Klik Buat dan lanjutkan.

  5. Dalam daftar Select a role, pilih Workflows > Workflows Invoker.

  6. Klik Done.

gcloud

  1. Buka terminal.

  2. Masukkan perintah berikut:

    gcloud projects add-iam-policy-binding PROJECT_ID \
       --member serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
       --role roles/workflows.invoker

    Ganti kode berikut:

    • PROJECT_ID: ID project Google Cloud Anda.
    • SERVICE_ACCOUNT_NAME: nama akun layanan.