Kontrol akses dengan IAM

App Optimize API menggunakan Identity and Access Management (IAM) untuk mengontrol akses ke resourcenya, seperti laporan dan operasi. Dengan IAM, Anda dapat memberikan akses terperinci ke resource App Optimize API tertentu dan membantu mencegah akses yang tidak diinginkan ke resource lain.

Dokumen ini menjelaskan izin dan peran IAM yang berlaku untuk App Optimize API.

Ringkasan izin

Izin memungkinkan pengguna melakukan tindakan tertentu pada resource App Optimize API. Tabel berikut mencantumkan izin untuk App Optimize API:

Izin Deskripsi
appoptimize.operations.cancel Membatalkan operasi yang berjalan lama.
appoptimize.operations.delete Menghapus operasi yang berjalan lama.
appoptimize.operations.get Mendapatkan status operasi yang berjalan lama.
appoptimize.operations.list Mencantumkan operasi yang berjalan lama.
appoptimize.reports.create Buat resource laporan App Optimize API.
appoptimize.reports.delete Menghapus resource laporan App Optimize API.
appoptimize.reports.get Membaca metadata konfigurasi resource laporan App Optimize API.
Tindakan ini tidak memberikan akses ke data laporan.
appoptimize.reports.getData Membaca data yang ada dalam laporan App Optimize API.
appoptimize.reports.list Mencantumkan resource laporan App Optimize API dalam project.

Peran yang telah ditetapkan

IAM menyediakan peran bawaan yang memberikan serangkaian izin terkait. Peran berikut tersedia untuk App Optimize API:

Peran Judul Deskripsi
roles/appoptimize.admin Admin Pengoptimalan Aplikasi Kontrol penuh atas laporan dan operasi App Optimize API.
roles/appoptimize.viewer App Optimize Viewer Akses baca ke metadata laporan, data laporan, dan operasi App Optimize API.

Memberikan peran IAM

Anda dapat memberikan peran IAM kepada prinsipal menggunakan KonsolGoogle Cloud atau Google Cloud CLI.

Konsol

  1. Di konsol Google Cloud , buka halaman IAM.

    Buka IAM

  2. Klik Berikan Akses.

  3. Di kolom Akun utama baru, masukkan alamat email akun utama yang akan diberi peran.

  4. Klik menu drop-down Select a role.

  5. Filter peran App Optimize dan pilih peran yang akan diberikan, seperti Admin App Optimize atau Pelihat App Optimize.

  6. Klik Simpan.

gcloud

  1. Jika Anda belum melakukannya, instal dan inisialisasi Google Cloud CLI.

  2. Gunakan perintah gcloud projects add-iam-policy-binding untuk memberikan peran:

    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="PRINCIPAL" \
        --role="ROLE_NAME"
    

    Ganti kode berikut:

    • PROJECT_ID: ID Google Cloud project Anda.
    • PRINCIPAL: ID untuk akun utama, seperti user:my-user@example.com atau group:my-group@example.com. Lihat ID utama.
    • ROLE_NAME: peran yang akan diberikan, seperti roles/appoptimize.admin atau roles/appoptimize.viewer.

Misalnya, untuk memberikan peran App Optimize Admin kepada pengguna test-user@example.com di project my-appoptimize-project:

gcloud projects add-iam-policy-binding my-appoptimize-project \
    --member="user:test-user@example.com" \
    --role="roles/appoptimize.admin"

Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.

Admin Pengoptimalan Aplikasi

Admin Pengoptimalan Aplikasi memberikan kontrol penuh atas resource App Optimize API, dan mencakup izin yang diberikan kepada Pelihat Pengoptimalan Aplikasi.

Nama peran Izin yang disertakan
roles/appoptimize.admin
  • appoptimize.operations.*
  • appoptimize.reports.*

App Optimize Viewer

Pelihat Pengoptimalan Aplikasi memberikan izin untuk membaca laporan App Optimize API, metadata, dan operasinya.

Nama peran Izin yang disertakan
roles/appoptimize.viewer
  • appoptimize.operations.get
  • appoptimize.operations.list
  • appoptimize.reports.get
  • appoptimize.reports.getData
  • appoptimize.reports.list

Izin untuk membuat laporan

Untuk membuat laporan, pengguna, akun layanan, atau akun utama lainnya harus memiliki:

  • Izin appoptimize.reports.create pada project tempat resource laporan akan dibuat. Izin ini disertakan dalam peran Admin Pengoptimalan Aplikasi (roles/appoptimize.admin).

  • Izin billing.resourceCosts.get di semua project yang tercakup dalam laporan. Izin ini diberikan oleh peran seperti Billing Account Viewer (roles/billing.viewer) atau Viewer (roles/viewer) dasar.

  • Izin untuk mengakses sumber data yang tercakup dalam cakupan laporan, dimensi, dan metrik. App Optimize API memeriksa izin ini saat laporan dibuat. Peran yang memberikan akses sumber data ini meliputi:

    • Untuk metrik pemakaian CPU dan memori: Pelihat Monitoring (roles/monitoring.viewer) pada resource yang tercakup.

    • Untuk cakupan dan dimensi aplikasi App Hub: Pelihat Pengelolaan Aplikasi (roles/apphub.appManagementViewer) di project host App Hub aplikasi.

    Jika Anda membuat laporan tentang aplikasi App Hub, yang dapat terdiri dari beberapa project, Anda harus memiliki izin penagihan dan pemantauan yang diperlukan di semua project terkait aplikasi untuk membuat laporan.

Izin untuk membaca data laporan

Setelah laporan berhasil dibuat, pokok hanya memerlukan izin appoptimize.reports.getData untuk membaca data yang dihasilkan. Izin ini dapat diberikan pada project tempat laporan dibuat, atau pada laporan itu sendiri, dan disertakan dalam peran Admin App Optimize dan Pelihat App Optimize.

Langkah berikutnya