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 prinsipal melalui peran IAM. Namun, dalam beberapa situasi, Anda mungkin ingin membatasi akun utama agar mereka hanya dapat membuat disk booting dari image yang berisi software yang disetujui dan memenuhi kebijakan atau persyaratan keamanan Anda.

Gunakan fitur Gambar tepercaya 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.

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.
  • Jika Anda belum melakukannya, siapkan autentikasi. Autentikasi adalah proses verifikasi identitas Anda untuk mengakses layanan dan API Google Cloud. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

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

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Untuk 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 image tepercaya. Halaman Policy details akan ditampilkan.

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

  4. Di halaman Edit policy, pilih Customize.

  5. Untuk Penerapan kebijakan, pilih opsi penerapan. Untuk 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 kumpulan project kustom untuk mengizinkan atau menolak akses.

    Untuk menetapkan aturan kebijakan, selesaikan salah satu opsi berikut:

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

      1. Di daftar Jenis kebijakan, pilih Izinkan atau Tolak.
      2. Di kolom Nilai kustom, masukkan nama project gambar 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 ditambahkan, 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 butuhkan dan hapus batasan yang tidak lagi Anda perlukan. Setelah selesai mengedit file, simpan perubahan. Misalnya, Anda dapat menetapkan entri batasan berikut dalam file kebijakan:

    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.

    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 butuhkan.

Langkah selanjutnya