Secara default, hanya pemilik dan editor project yang dapat membuat, memperbarui, menghapus, atau memanggil layanan dan tugas, dan hanya pemilik project serta Admin Cloud Run yang dapat mengubah kebijakan Identity and Access Management (IAM)—misalnya, untuk menjadikan suatu layanan bersifat publik. Buka Peran IAM Cloud Run untuk mengetahui detailnya.
Untuk mengizinkan akun utama atau grup lain melakukan tindakan ini, gunakan IAM untuk memberikan peran ke berbagai akun utama.
Peran Cloud Run yang telah ditetapkan
Dibandingkan dengan peran dasar (Pemilik, Editor, dan Viewer), peran bawaan berikut memiliki kontrol akses yang lebih terperinci untuk mengakses resource Cloud Run:
Peran | Deskripsi |
---|---|
Admin Cloud Run (roles/run.admin ) |
Dapat membuat, memperbarui, dan menghapus layanan dan tugas, dapat memperoleh, mencantumkan, dan menghapus eksekusi tugas. Dapat memanggil layanan dan tugas, dapat membatalkan eksekusi tugas. Dapat melihat, menerapkan, dan menolak rekomendasi. Memerlukan konfigurasi tambahan untuk men-deploy layanan. |
Developer Cloud Run (roles/run.developer ) |
Dapat membuat, memperbarui, dan menghapus layanan dan tugas, dapat memperoleh, mencantumkan, dan menghapus eksekusi tugas. Dapat memperoleh, tetapi tidak dapat menetapkan kebijakan IAM. Dapat melihat, menerapkan, dan menolak rekomendasi. |
Penampil Cloud Run (roles/run.viewer ) |
Dapat melihat layanan, tugas, dan eksekusi tugas. Dapat memperoleh kebijakan IAM. Dapat melihat rekomendasi. |
Invoker Cloud Run (roles/run.invoker ) |
Dapat memanggil layanan dan tugas, dapat membatalkan eksekusi tugas. |
Mengontrol akses pada setiap layanan atau tugas
Anda dapat mengontrol akses berdasarkan layanan atau pekerjaan tertentu menggunakan IAM.
Membuat layanan menjadi publik
Opsi ini ditujukan untuk layanan Cloud Run yang merupakan API publik atau situs web.
Anda dapat mengizinkan pemanggilan yang tidak diautentikasi ke layanan dengan menetapkan peran IAM Cloud Run Invoker ke jenis anggota allUsers
.
Anda harus memiliki izin run.services.setIamPolicy
untuk mengonfigurasi autentikasi
pada layanan Cloud Run. Izin ini termasuk dalam peran Owner dan Cloud Run Admin. Lihat peran IAM Cloud Run
untuk mengetahui daftar lengkap peran dan izin terkaitnya.
UI Konsol
Untuk layanan Cloud Run yang sudah ada:
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri layanan yang ingin dipublikasikan. (Jangan mengklik layanan.)
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Klik Tambahkan akun utama.
Di kotak teks Akun utama baru, masukkan nilai allUsers
Dari menu dropdown Role, pilih peran Cloud Run Invoker.
Klik Save.
Anda akan diminta untuk memverifikasi bahwa Anda ingin menjadikan referensi ini publik. Klik Izinkan akses publik untuk menerapkan perubahan pada setelan layanan IAM.
Untuk layanan baru yang Anda buat, buat layanan, tetapi pastikan Anda memilih Izinkan pemanggilan tidak diautentikasi di tab Autentikasi untuk membuat layanan menjadi tersedia untuk publik. Memilih Wajibkan autentikasi akan membuat layanan menjadi pribadi.
gcloud
Agar layanan dapat diakses secara publik, gunakan perintah gcloud run services
untuk menambahkan jenis anggota allUsers
khusus ke layanan dan memberikan
peran roles/run.invoker
:
gcloud run services add-iam-policy-binding [SERVICE_NAME] \ --member="allUsers" \ --role="roles/run.invoker"
Atau, jalankan perintah gcloud run deploy
agar layanan Anda dapat diakses secara publik saat Anda men-deploy layanan:
gcloud run deploy [SERVICE_NAME] ... --allow-unauthenticated
YAML
Buat file bernama policy.yaml
dengan konten berikut:
bindings:
- members:
- allUsers
role: roles/run.invoker
Izinkan pemanggilan yang tidak diautentikasi untuk SERVICE yang ada menggunakan:
gcloud run services set-iam-policy SERVICE policy.yaml
Terraform
Untuk membuat layanan Cloud Run, tambahkan kode berikut ke file main.tf
Anda yang sudah ada:
Untuk memperbarui binding IAM layanan untuk roles/run.invoker
, tambahkan resource berikut yang merujuk ke layanan Cloud Run Anda:
Binding ini hanya bersifat otoritatif untuk peran yang diberikan. Binding IAM lainnya dalam kebijakan IAM layanan dipertahankan.
Berbagi dengan domain terbatas
Jika project tunduk pada batasan berbagi yang dibatasi domain dalam kebijakan organisasi, Anda tidak akan dapat membuat layanan publik secara default. Anda dapat menggunakan tag dan kebijakan kondisional untuk mengecualikan layanan tertentu dari batasan ini. Untuk mengetahui detailnya, lihat postingan blog tentang membuat layanan Cloud Run publik ketika fitur berbagi yang dibatasi domain diterapkan.
Menambahkan akun utama
Anda dapat menambahkan akun utama ke tugas atau layanan.
Menambahkan akun utama ke layanan
Untuk menambahkan akun utama ke layanan:
UI Konsol
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri layanan yang ingin Anda tambahkan akun utama. (Jangan mengklik layanan.)
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Klik Tambahkan akun utama.
Di kotak teks Akun utama baru, masukkan satu atau beberapa identitas yang memerlukan akses ke layanan Anda.
Dari menu dropdown Peran, pilih satu atau beberapa peran. Peran yang Anda pilih akan muncul di panel dengan deskripsi singkat tentang izin yang diberikan.
Klik Save.
gcloud
Gunakan perintah gcloud run services add-iam-policy-binding
:
gcloud run services add-iam-policy-binding SERVICE_NAME \ --member=MEMBER_TYPE \ --role=ROLE
dengan SERVICE_NAME
adalah nama layanan, MEMBER_TYPE
adalah jenis utama (misalnya user:email@domain.com
), dan ROLE
adalah perannya.
Untuk mengetahui daftar nilai yang dapat diterima untuk MEMBER_TYPE
, lihat
halaman konsep IAM.
Untuk mengetahui daftar nilai yang dapat diterima untuk ROLE
, lihat
Peran IAM Cloud Run.
Menambahkan akun utama ke tugas
Untuk menambahkan akun utama ke tugas:
UI Konsol
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri tugas yang ingin Anda tambahkan akun utama. (Jangan mengklik tugas.)
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Klik Tambahkan akun utama.
Di kotak teks Akun utama baru, masukkan satu atau beberapa identitas yang memerlukan akses ke tugas Anda.
Dari menu dropdown Peran, pilih satu atau beberapa peran. Peran yang Anda pilih akan muncul di panel dengan deskripsi singkat tentang izin yang diberikan.
Klik Save.
gcloud
Gunakan perintah gcloud run jobs add-iam-policy-binding
:
gcloud run jobs add-iam-policy-binding JOB_NAME \ --member=MEMBER_TYPE \ --role=ROLE
dengan JOB_NAME
adalah nama tugas,
MEMBER_TYPE
adalah jenis utama
(misalnya user:email@domain.com
), dan ROLE
adalah perannya.
Untuk mengetahui daftar nilai yang dapat diterima untuk MEMBER_TYPE
, lihat
halaman konsep IAM.
Untuk mengetahui daftar nilai yang dapat diterima untuk ROLE
, lihat
Peran IAM Cloud Run.
Hapus akun utama dari peran
Anda dapat menghapus akun utama dari layanan atau tugas.
Hapus akun utama dari peran untuk layanan
Untuk menghapus akun utama dari peran untuk layanan:
UI Konsol
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri layanan yang akun utamanya ingin Anda hapus. (Jangan mengklik layanan.)
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Masukkan akun utama yang ingin Anda hapus ke dalam filter daftar peran. Daftar ini akan menampilkan semua peran yang telah diberikan kepada akun utama.
Klik ikon sampah hapus di samping akun utama dalam peran yang diinginkan untuk menghapus peran tersebut dari akun utama.
Pada dialog konfirmasi, Anda memiliki opsi untuk menghapus akun utama tersebut dari semua peran dalam layanan. Klik Hapus untuk menghapus akun utama dari peran.
gcloud
Gunakan perintah gcloud run services remove-iam-policy-binding
:
gcloud run services remove-iam-policy-binding SERVICE_NAME \ --member=MEMBER_TYPE \ --role=ROLE
dengan SERVICE_NAME
adalah nama layanan, MEMBER_TYPE
adalah jenis utama (misalnya user:email@domain.com
), dan ROLE
adalah perannya.
Untuk mengetahui daftar nilai yang dapat diterima untuk MEMBER_TYPE
, lihat
halaman konsep IAM.
Untuk mengetahui daftar nilai yang dapat diterima untuk ROLE
, lihat
Peran IAM Cloud Run.
Hapus akun utama dari peran untuk tugas
Untuk menghapus akun utama dari peran untuk tugas:
UI Konsol
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri tugas yang ingin Anda tambahkan akun utama. (Jangan mengklik tugas.)
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Masukkan akun utama yang ingin Anda hapus ke dalam filter daftar peran. Daftar ini akan menampilkan semua peran yang telah diberikan kepada akun utama.
Klik ikon sampah hapus di samping akun utama dalam peran yang diinginkan untuk menghapus peran tersebut dari akun utama.
Pada dialog konfirmasi, Anda memiliki opsi untuk menghapus akun utama tersebut dari semua peran dalam tugas. Klik Hapus untuk menghapus akun utama dari peran.
gcloud
Gunakan perintah gcloud run jobs remove-iam-policy-binding
:
gcloud run jobs remove-iam-policy-binding JOB_NAME \ --member=MEMBER_TYPE \ --role=ROLE
dengan JOB_NAME
adalah nama tugas,
MEMBER_TYPE
adalah jenis utama
(misalnya user:email@domain.com
), dan ROLE
adalah perannya.
Untuk mengetahui daftar nilai yang dapat diterima untuk MEMBER_TYPE
, lihat
halaman konsep IAM.
Untuk mengetahui daftar nilai yang dapat diterima untuk ROLE
, lihat
Peran IAM Cloud Run.
Penambahan atau penghapusan akun utama dalam jumlah besar
Anda dapat melakukan penambahan atau penghapusan dalam jumlah besar untuk layanan dan tugas.
Menambah atau menghapus akun utama pada layanan dalam jumlah besar
Untuk melakukan penambahan atau penghapusan dalam jumlah besar untuk suatu layanan:
UI Konsol
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri layanan yang ingin Anda tambahkan atau hapus dari akun utama. (Jangan mengklik layanan.)
Pilih layanan yang ingin Anda tambahkan atau hapus dari akun utama.
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Jika Anda ingin menambahkan akun utama:
Klik Tambahkan akun utama.
Di kotak teks Akun utama baru, masukkan satu atau beberapa identitas yang memerlukan akses ke layanan Anda.
Dari menu dropdown Peran, pilih peran (atau beberapa peran) Peran yang Anda pilih akan muncul di panel dengan deskripsi singkat tentang izin yang diberikan.
Klik Save.
Jika Anda ingin menghapus akun utama:
Masukkan akun utama yang ingin Anda hapus ke dalam filter daftar peran. Daftar ini akan menampilkan semua peran yang telah diberikan kepada akun utama.
Klik ikon sampah hapus di samping akun utama dalam peran yang diinginkan untuk menghapus peran tersebut dari akun utama.
Pada dialog konfirmasi, Anda memiliki opsi untuk menghapus akun utama tersebut dari semua peran dalam layanan. Klik Hapus untuk menghapus akun utama dari peran.
gcloud
Membuat kebijakan IAM:
cat <<EOF > policy.json { "bindings": [ { "role": ROLE, "members": [ MEMBER_TYPE ] } ] } EOF
Gunakan perintah gcloud run services set-iam-policy
:
gcloud run services set-iam-policy SERVICE_NAME policy.json
Untuk mengetahui daftar nilai yang dapat diterima untuk MEMBER_TYPE
, lihat
halaman konsep IAM.
Untuk mengetahui daftar nilai yang dapat diterima untuk ROLE
, lihat
Peran IAM Cloud Run.
Penambahan dan penghapusan akun utama dalam jumlah besar untuk tugas
Untuk melakukan penambahan atau penghapusan dalam jumlah besar untuk sebuah tugas:
UI Konsol
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri tugas yang ingin Anda tambahkan akun utama. (Jangan mengklik tugas.)
Pilih tugas yang ingin Anda tambah atau hapus akun utama.
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Jika Anda ingin menambahkan akun utama:
Klik Tambahkan akun utama.
Di kotak teks Akun utama baru, masukkan satu atau beberapa identitas yang memerlukan akses ke layanan Anda.
Dari menu dropdown Peran, pilih peran (atau beberapa peran) Peran yang Anda pilih akan muncul di panel dengan deskripsi singkat tentang izin yang diberikan.
Klik Save.
Jika Anda ingin menghapus akun utama:
Masukkan akun utama yang ingin Anda hapus ke dalam filter daftar peran. Daftar ini akan menampilkan semua peran yang telah diberikan kepada akun utama.
Klik ikon sampah hapus di samping akun utama dalam peran yang diinginkan untuk menghapus peran tersebut dari akun utama.
Pada dialog konfirmasi, Anda memiliki opsi untuk menghapus akun utama tersebut dari semua peran dalam tugas. Klik Hapus untuk menghapus akun utama dari peran.
gcloud
Membuat kebijakan IAM:
cat <<EOF > policy.json { "bindings": [ { "role": ROLE, "members": [ MEMBER_TYPE ] } ] } EOF
Gunakan perintah gcloud run jobs set-iam-policy
:
gcloud run jobs set-iam-policy JOB_NAME policy.json
Untuk mengetahui daftar nilai yang dapat diterima untuk MEMBER_TYPE
, lihat
halaman konsep IAM.
Untuk mengetahui daftar nilai yang dapat diterima untuk ROLE
, lihat
Peran IAM Cloud Run.
Melihat akun utama
Anda dapat melihat akun utama untuk layanan dan tugas.
Melihat prinsipal untuk suatu layanan
Untuk melihat akun utama untuk suatu layanan:
UI Konsol
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri layanan yang ingin Anda lihat untuk akun utama dan peran. (Jangan mengklik layanan.)
Pilih layanan yang ingin Anda lihat untuk akun utama dan peran.
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Daftar peran dan akun utama akan ditampilkan dan dikelompokkan berdasarkan peran yang diberikan.
gcloud
Gunakan perintah gcloud run services get-iam-policy
:
gcloud run services get-iam-policy SERVICE_NAME
Menampilkan akun utama untuk suatu tugas
Untuk menampilkan akun utama tugas:
UI Konsol
Buka Konsol Google Cloud:
Klik kotak centang di sebelah kiri tugas yang ingin Anda tambahkan akun utama. (Jangan mengklik tugas.)
Pilih tugas yang ingin Anda tampilkan untuk akun utama dan peran.
Di panel informasi pojok kanan atas, klik tab Izin. Jika panel informasi tidak terlihat, Anda mungkin perlu mengklik Tampilkan Panel Info, lalu klik Izin.
Daftar peran dan akun utama akan ditampilkan dan dikelompokkan berdasarkan peran yang diberikan.
gcloud
Gunakan perintah gcloud run jobs get-iam-policy
:
gcloud run jobs get-iam-policy JOB_NAME
Mengontrol akses pada semua layanan dan tugas dalam sebuah project
Jika ingin memberikan peran kepada akun utama di semua layanan dan tugas dalam sebuah project, Anda dapat menggunakan IAM level project.
UI Konsol
Buka Konsol Google Cloud:
Temukan akun utama yang ingin Anda berikan peran di seluruh project.
Klik ikon edit Pensil di sisi kanan baris akun utama.
Klik Tambahkan peran lain, lalu pilih peran yang diinginkan.
Klik Save.
gcloud
Gunakan perintah gcloud projects add-iam-policy-binding
:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=MEMBER_TYPE \ --role=ROLE
dengan MEMBER_TYPE
adalah jenis utama
(misalnya user:email@domain.com
), dan ROLE
adalah
peran (misalnya roles/run.admin
).
Jenis akun utama allUsers
dan allAuthenticatedUsers
tidak dapat diterapkan
pada level project. Sebagai gantinya, keduanya harus ditambahkan ke setiap layanan satu per satu.
Langkah berikutnya
Pelajari cara mengautentikasi developer, layanan, dan pengguna dengan aman ke layanan yang baru saja Anda amankan.