Menyiapkan kebijakan image tepercaya

Secara default, pengguna di project Anda dapat membuat persistent disk atau menyalin image menggunakan salah satu image publik dan image apa pun yang dapat diakses oleh principal melalui peran IAM. Namun, dalam beberapa situasi, Anda mungkin ingin membatasi principal agar mereka hanya dapat membuat boot disk dari image yang berisi software yang disetujui dan memenuhi persyaratan kebijakan atau keamanan Anda.

Gunakan fitur Image tepercaya untuk menentukan kebijakan organisasi yang memungkinkan principal membuat persistent disk hanya dari image di project tertentu.

Untuk membatasi lokasi tempat image Anda dapat digunakan, baca membatasi penggunaan image, disk, dan snapshot bersama.

Sebelum memulai

  • Baca halaman Menggunakan batasan untuk mempelajari cara mengelola kebijakan di tingkat organisasi.
  • Baca halaman Memahami evaluasi hierarki untuk mempelajari cara kebijakan organisasi disebarkan.
  • Siapkan autentikasi jika Anda belum melakukannya. Autentikasi memverifikasi identitas Anda untuk mengakses Google Cloud layanan dan API. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan Google Cloud konsol untuk mengakses Google Cloud layanan dan API, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:

      gcloud init

      Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu .

  • Tetapkan region dan zona default.
  • REST

    Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

      Instal Google Cloud CLI.

      Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu .

    Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi. Google Cloud

Batasan

  • Kebijakan image tepercaya tidak membatasi akses ke image berikut:

    • Image kustom di project lokal Anda.

    • File image di bucket Cloud Storage.

  • Kebijakan image tepercaya tidak mencegah pengguna membuat resource image di project lokal mereka.

Menetapkan batasan akses image

Terapkan kebijakan akses image dengan menetapkan batasan compute.trustedImageProjects pada project, folder, atau organisasi Anda. Anda harus memiliki izin untuk mengubah kebijakan organisasi guna menetapkan batasan ini. Misalnya, roles/orgpolicy.policyAdmin memiliki izin untuk menetapkan batasan ini. Untuk mengetahui informasi selengkapnya tentang mengelola kebijakan di tingkat project, folder, atau organisasi, lihat Menggunakan batasan.

Anda dapat menetapkan batasan pada semua image publik yang tersedia di Compute Engine. Untuk mengetahui daftar nama project image, lihat Detail sistem operasi. Anda juga dapat membatasi image Machine Learning (ML) yang tersedia di Compute Engine menggunakan project ml-images. Jika Anda menggunakan Serverless VPC Access, beri project Anda izin untuk menggunakan image VM Compute Engine dari serverless-vpc-access-images project.

Gunakan Google Cloud konsol atau Google Cloud CLI untuk menetapkan batasan pada akses image.

Konsol

Misalnya, untuk menetapkan batasan di tingkat project, lakukan hal berikut:

  1. Buka halaman Kebijakan organisasi.

    Buka Organization policies

  2. Dari daftar kebijakan, klik Tentukan project image tepercaya. Halaman Detail kebijakan akan ditampilkan.

  3. Di halaman Detail kebijakan, klik Kelola Kebijakan. Halaman Edit kebijakan akan ditampilkan.

  4. Di halaman Edit kebijakan, pilih Sesuaikan.

  5. Untuk Penerapan kebijakan, pilih opsi penerapan. Untuk mengetahui informasi tentang hierarki resource dan pewarisan, lihat Memahami Evaluasi Hierarki.

  6. Klik Tambahkan Aturan.

  7. Dalam daftar Nilai kebijakan, Anda dapat memilih apakah kebijakan organisasi ini harus mengizinkan akses ke semua project image, menolak akses ke semua project image, atau Anda dapat menentukan kumpulan project kustom untuk mengizinkan atau menolak akses.

    Untuk menetapkan aturan kebijakan, selesaikan salah satu opsi berikut:

    • Untuk mengizinkan pengguna membuat boot disk dari semua image publik, pilih Izinkan Semua.
    • Untuk membatasi pengguna membuat boot disk dari semua image publik, pilih Tolak Semua.
    • Untuk menentukan kumpulan image publik yang dapat digunakan pengguna untuk membuat boot disk, pilih Kustom. Kolom Jenis kebijakan dan Nilai kustom akan ditampilkan.

      1. Dalam daftar Jenis kebijakan, pilih Izinkan atau Tolak.
      2. Di kolom Nilai kustom, masukkan nama project image menggunakan format projects/IMAGE_PROJECT.

        Ganti IMAGE_PROJECT dengan project image yang ingin Anda tetapkan batasannya.

        Anda dapat menambahkan beberapa project image. Untuk setiap project image yang ingin Anda tambahkan, klik Tambahkan dan masukkan nama project image.

  8. Untuk menyimpan aturan, klik Selesai.

  9. Untuk menyimpan dan menerapkan kebijakan organisasi, klik Simpan.

Untuk mengetahui informasi selengkapnya tentang membuat kebijakan organisasi, lihat Membuat dan mengelola kebijakan organisasi.

gcloud

Misalnya, untuk menetapkan batasan di tingkat project, lakukan hal berikut:

  1. Dapatkan setelan kebijakan yang ada untuk project Anda menggunakan perintah resource-manager org-policies describe.

    gcloud resource-manager org-policies describe \
       compute.trustedImageProjects --project=PROJECT_ID \
       --effective > policy.yaml
    

    Ganti PROJECT_ID dengan project ID Anda.

  2. Buka file policy.yaml di editor teks dan ubah batasan compute.trustedImageProjects. Tambahkan batasan yang Anda perlukan dan hapus batasan yang tidak lagi Anda perlukan. Setelah selesai mengedit file, simpan perubahan Anda. Misalnya, Anda dapat menetapkan entri batasan berikut dalam file kebijakan Anda:

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allowedValues:
        - projects/debian-cloud
        - projects/cos-cloud
     deniedValues:
        - projects/IMAGE_PROJECT
    

    Ganti IMAGE_PROJECT dengan nama project image yang ingin Anda batasi di project Anda.

    Jika ingin, Anda dapat menolak akses ke semua image di luar image kustom di project Anda. Untuk situasi tersebut, gunakan contoh berikut:

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allValues: DENY
    

  3. Terapkan file policy.yaml ke project Anda. Jika organisasi atau folder Anda memiliki batasan yang ada, batasan tersebut mungkin bertentangan dengan batasan tingkat project yang Anda tetapkan. Untuk menerapkan batasan, gunakan perintah resource-manager org-policies set-policy.

    gcloud resource-manager org-policies set-policy \
       policy.yaml --project=PROJECT_ID
    

    Ganti PROJECT_ID dengan project ID Anda.

Setelah selesai mengonfigurasi batasan, uji batasan tersebut untuk memastikan batasan tersebut membuat batasan yang Anda perlukan.

Langkah berikutnya