Mengaktifkan akses berbasis sertifikat untuk VM

Halaman ini menjelaskan cara mengaktifkan akses berbasis sertifikat (CBA) untuk VM Anda Cloud de Confiance by S3NS . Anda dapat menggunakan CBA untuk mengamankan akses dari perangkat tepercaya ke Cloud de Confiance VM.

Ringkasan

CBA untuk VM menggunakan fitur Akses Kontekstual Cloud de Confiance untuk mengamankan akses menggunakan Mutual TLS (mTLS). Berikut adalah komponen utama yang Anda gunakan untuk mengaktifkan dan menggunakan CBA untuk VM:

  • Access Context Manager: Memungkinkan Anda membuat tingkat akses yang memerlukan sertifikat saat menentukan akses ke aplikasi web.
  • Identity-Aware Proxy (IAP): Penerusan TCP IAP memungkinkan Anda membuat tunnel terenkripsi yang dapat digunakan untuk meneruskan SSH, RDP, dan traffic lainnya ke instance VM. Selain itu, kebijakan IAP memberi Anda kontrol terperinci atas pengguna yang diizinkan untuk membuat tunnel ke instance VM tertentu dan kondisi akses yang harus dipenuhi pengguna untuk menggunakan tunnel tersebut.
  • Kebijakan Chrome Enterprise: Menyediakan autentikasi bersama (mTLS) antara pengguna dan VM saat menggunakan browser Chrome.
  • Google Cloud CLI: Menyediakan autentikasi bersama (mTLS) antara pengguna dan VM saat menggunakan gcloud CLI.

Sebelum memulai

Pastikan Anda telah membuat tingkat akses CBA untuk Cloud de Confiance project Anda.

Memberikan peran untuk mengakses VM melalui penerusan TCP IAP

Anda harus memberikan peran Identity and Access Management (IAM) yang sesuai pada project agar pengguna atau grup pengguna dapat menggunakan penerusan TCP IAP untuk mengakses VM.

Tabel berikut menunjukkan peran yang telah ditetapkan yang perlu Anda berikan kepada administrator tepercaya untuk penerusan TCP dan tugas terkait.

Tugas Peran Informasi selengkapnya
Penerusan TCP Pengguna Tunnel yang Diamankan IAP (roles/iap.tunnelResourceAccessor) Memberikan akses ke semua instance VM dalam project atau Memberikan akses ke VM tertentu
Akses SSH Admin Instance Compute (v1) (roles/compute.instanceAdmin.v1)
Login OS (Direkomendasikan) Bervariasi Mengonfigurasi peran Login OS di akun pengguna
Menggunakan akun layanan Pengguna Akun Layanan (roles/iam.serviceAccountUser) Peran serviceAccountUser

Untuk mengetahui informasi selengkapnya tentang pemberian peran untuk penerusan TCP IAP, lihat Memberikan peran untuk penerusan TCP IAP.

Mengonfigurasi akses berbasis sertifikat ke VM

Meskipun IAP-TCP memungkinkan Anda memberikan akses ke semua instance VM dalam project, Anda harus mengonfigurasi akses berbasis sertifikat untuk setiap instance VM.

Untuk memberikan akses berbasis sertifikat kepada pengguna atau grup pengguna ke VM, berikan peran roles/iap.tunnelResourceAccessor pada instance VM. Peran lainnya dapat diberikan pada project.

Konsol

  1. Buka halaman Admin IAP, lalu pilih tab SSH and TCP Resources.

    Buka halaman IAP.

  2. Pilih instance VM yang ingin Anda konfigurasi. Klik Tampilkan panel info jika panel info tidak terlihat.

  3. Klik Tambahkan akun utama dan konfigurasi setelan berikut:

    • Akun utama baru: Tentukan pengguna atau grup pengguna yang ingin Anda beri akses.
    • Pilih peran: Pilih Cloud IAP > IAP-Secured Tunnel User.
  4. Klik Tambahkan kondisi IAM dan konfigurasi kondisi:

    • Judul: Masukkan nama untuk kondisi.
    • Builder Kondisi: Pilih Tingkat akses dari Jenis Kondisi drop-down, lalu pilih tingkat akses berbasis sertifikat yang dibuat sebelumnya.
  5. Klik Simpan.

API

Untuk mengonfigurasi akses berbasis sertifikat ke VM, ubah file policy.json aplikasi Anda.

Lihat Mengelola akses ke resource yang diamankan IAP untuk mengetahui informasi selengkapnya tentang penggunaan IAM API untuk mengelola kebijakan akses.

  1. Ekspor variabel berikut.

    export IAP_BASE_URL=https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_tunnel
    # Replace POLICY_FILE.JSON with the name of JSON file to use for setIamPolicy
    export JSON_NEW_POLICY=POLICY_FILE.JSON
    
  2. Dapatkan kebijakan IAM untuk instance Compute Engine menggunakan metode getIamPolicy. Bit data kosong di akhir mengubah permintaan curl menjadi POST, bukan GET.

    curl -i -H "Authorization: Bearer $(gcloud auth print-access-token)" \
         ${IAP_BASE_URL}/zones/ZONE_NAME/instances/INSTANCE_ID or INSTANCE_NAME:getIamPolicy \
         -d ''
    
  3. Berikan peran iap.tunnelResourceAccessor dan akses berbasis sertifikat kepada akun utama Anda dengan mengubah file JSON kebijakan IAM.

    Berikut adalah contoh file policy.json yang memberikan peran iap.tunnelResourceAccessor kepada grup admin instance VM, sehingga memberi mereka akses berbasis sertifikat ke resource tunnel yang diamankan IAP.

    Perhatikan bahwa jika akun utama memiliki peran Pemilik, mereka memiliki izin untuk menggunakan IAP untuk penerusan TCP.

    {
      "policy": {
        "bindings": [
          {
            "role": "roles/iap.tunnelResourceAccessor",
            "members": ["group:instance-admins@example.com"],
            "condition": {
              "expression": "\"accessPolicies/POLICY_NAME/accessLevels/CERTIFICATE_BASED_ACCESS_LEVEL_NAME\" in request.auth.access_levels,
              "title": "CERTIFICATE_BASED_CONDITION_NAME"
            }
          }
        ]
      }
    }
    

    Untuk menemukan nama kebijakan, panggil metode accessPolicies.list.

    GET https://accesscontextmanager.googleapis.com/v1/accessPolicies
    
  4. Tetapkan file policy.json baru Anda menggunakan metode setIamPolicy.

    curl -i -H "Content-Type:application/json" \
              -H "Authorization: Bearer $(gcloud auth print-access-token)" \
              ${IAP_BASE_URL}/zones/ZONE_NAME/instances/INSTANCE_ID or INSTANCE_NAME:setIamPolicy \
              -d @${JSON_NEW_POLICY}
    

Mengakses VM menggunakan sertifikat klien

Untuk mengakses VM menggunakan sertifikat klien, gunakan salah satu metode berikut.

Menggunakan sertifikat klien di browser Chrome untuk mengakses VM

  1. Konfigurasikan browser Chrome menggunakan salah satu opsi berikut.
  2. Di browser Chrome, masukkan domain berikut untuk mengakses Cloud de Confiance konsol: console-secure.cloud.google.com.
  3. Akses Cloud de Confiance VM menggunakan tunneling IAP.

Menggunakan sertifikat klien di gcloud CLI untuk mengakses VM

  1. Konfigurasikan gcloud CLI menggunakan salah satu metode berikut.

  2. Akses Cloud de Confiance VM menggunakan tunneling IAP.