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 akun utama agar hanya dapat membuat boot disk dari image yang berisi software yang disetujui dan memenuhi persyaratan kebijakan atau keamanan Anda.

Gunakan fitur Trusted image untuk menentukan kebijakan organisasi yang memungkinkan akun utama membuat persistent disk hanya dari image dalam project tertentu.

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

Sebelum memulai

  • Baca halaman Menggunakan batasan untuk mempelajari cara mengelola kebijakan di tingkat organisasi.
  • Baca halaman Memahami evaluasi hierarki untuk mempelajari cara kebijakan organisasi diterapkan.
  • Siapkan autentikasi jika Anda belum melakukannya. Autentikasi memverifikasi identitas Anda untuk mengakses layanan Google Cloud 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 konsol Google Cloud untuk mengakses layanan Google Cloud dan API, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI. Setelah penginstalan, lakukan 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 gambar berikut:

    • Image kustom di project lokal Anda.

    • File gambar di bucket Cloud Storage.

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

Menetapkan batasan akses gambar

Terapkan kebijakan akses gambar 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 cara 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 Akses VPC Serverless, beri project Anda izin untuk menggunakan image VM Compute Engine dari project serverless-vpc-access-images.

Gunakan konsol Google Cloud 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 gambar tepercaya. Halaman Policy details akan ditampilkan.

  3. Di halaman Policy details, klik Manage Policy. Halaman Edit policy akan ditampilkan.

  4. Di halaman Edit policy, pilih Customize.

  5. Untuk Penerapan kebijakan, pilih opsi penerapan. Untuk mengetahui informasi tentang pewarisan dan hierarki resource, 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 gambar, menolak akses ke semua project gambar, atau Anda dapat menentukan serangkaian project kustom untuk mengizinkan atau menolak akses.

    Untuk menetapkan aturan kebijakan, selesaikan salah satu opsi berikut:

    • Untuk mengizinkan pengguna membuat disk boot dari semua image publik, pilih Izinkan Semua.
    • Untuk membatasi pengguna agar tidak membuat boot disk dari semua image publik, pilih Deny All.
    • Untuk menentukan kumpulan image publik tertentu yang dapat digunakan pengguna untuk membuat boot disk, pilih Custom. 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 batasan.

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

  8. Untuk menyimpan aturan, klik Selesai.

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

Untuk mengetahui informasi selengkapnya tentang cara 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 diperlukan. 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 dalam project Anda.

    Jika ingin, Anda dapat menolak akses ke semua image di luar image kustom dalam 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 sudah 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 bahwa batasan tersebut membuat batasan yang Anda butuhkan.

Langkah berikutnya