Mengintegrasikan Cloud Armor dengan Google SecOps

Dokumen ini menjelaskan cara mengintegrasikan Google Cloud Armor dengan Google Security Operations.

Kasus penggunaan

Integrasi Cloud Armor mendukung kasus penggunaan berikut:

  • Pemblokiran ancaman otomatis: Langsung blokir alamat IP atau rentang yang berbahaya di Google Cloud edge dengan memperbarui aturan kebijakan keamanan selama insiden.

  • Pengelolaan kebijakan keamanan: Buat daftar, ambil, dan perbarui kebijakan dan aturan keamanan di seluruh lingkungan Anda untuk memastikan perlindungan WAF yang konsisten.

  • Mitigasi DDoS dinamis: Merespons serangan volumetrik atau berbasis protokol dengan menyesuaikan setelan kebijakan keamanan secara terprogram.

  • Audit forensik: Ambil detail konfigurasi kebijakan keamanan yang ada untuk mengorelasikan perlindungan edge dengan pemberitahuan keamanan internal.

Sebelum memulai

Sebelum mengonfigurasi integrasi Cloud Armor di Google SecOps, selesaikan langkah-langkah prasyarat berikut:

  1. Buat dan konfigurasi peran Identity and Access Management kustom.

  2. Membuat akun layanan:

  3. Pilih dan konfigurasi salah satu metode autentikasi berikut:

    • Opsi 1: Workload Identity (direkomendasikan): Metode ini menggunakan token berjangka pendek dengan menggunakan peniruan akun layanan.

    • Opsi 2: Kunci JSON akun layanan: Metode ini mengandalkan file kunci rahasia statis yang berlaku lama.

Membuat dan mengonfigurasi peran IAM

Untuk memberikan izin yang diperlukan bagi integrasi, buat peran khusus di project Google Cloud Anda:

  1. Di konsol Google Cloud , buka Roles.

    Buka Peran

  2. Klik tambahkanBuat peran kustom.

  3. Berikan Judul, Deskripsi, dan ID unik.

  4. Tetapkan Role Launch Stage ke General Availability.

  5. Tambahkan izin berikut ke peran:

    • compute.backendBuckets.setSecurityPolicy
    • compute.backendServices.setSecurityPolicy
    • compute.regionBackendServices.setSecurityPolicy
    • compute.regionSecurityPolicies.create
    • compute.regionSecurityPolicies.get
    • compute.regionSecurityPolicies.list
    • compute.regionSecurityPolicies.update
    • compute.securityPolicies.create
    • compute.securityPolicies.get
    • compute.securityPolicies.list
    • compute.securityPolicies.update
  6. Klik Create.

Membuat akun layanan

  1. Di konsol Google Cloud , buka IAM & Admin > Service Accounts.

    Buka Akun Layanan

  2. Klik addBuat akun layanan.

  3. Berikan nama dan deskripsi, lalu klik Buat dan lanjutkan.

  4. Pada langkah Grant this service account access to project, tetapkan peran IAM kustom yang Anda buat.

  5. Klik Done. Catat Alamat email akun layanan.

Mengonfigurasi kredensial Workload Identity

Workload Identity adalah pendekatan yang direkomendasikan karena menggunakan token berumur pendek dengan menggunakan peniruan akun layanan.

Mengidentifikasi identitas instance yang unik

Untuk membuat koneksi, Anda harus memberikan izin kepada instance Google SecOps Anda untuk meniru identitas akun layanan Anda.

  1. Di Google SecOps, buka Content Hub > Response Integrations.

  2. Pilih integrasi Cloud Armor dan masukkan email akun layanan Anda di Workload Identity Email.

  3. Klik Simpan > Uji. Pengujian gagal.

  4. Klik tombol close_small di samping Uji dan temukan email identitas yang diawali dengan gke-init-python@... atau soar-python@....

  5. Salin alamat email unik ini.

Memberikan otorisasi identitas instance di Google Cloud

  1. Di konsol Google Cloud , buka IAM & Admin > Service Accounts.

    Buka Akun Layanan

  2. Pilih akun layanan target, lalu buka Izin > Beri Akses.

  3. Tempelkan alamat email unik ke kolom New principals dan tetapkan peran Service Account Token Creator (roles/iam.serviceAccountTokenCreator).

Mengonfigurasi kunci JSON

File kunci rahasia statis yang dapat digunakan untuk jangka waktu lama memerlukan rotasi manual. Gunakan metode ini hanya jika autentikasi Workload Identity tidak tersedia.

  1. Di konsol Google Cloud , buka IAM & Admin > Service Accounts, lalu pilih akun layanan Anda.

    Buka Akun Layanan

  2. Buka tab Keys, lalu klik Add key > Create new key.

  3. Pilih JSON, lalu klik Create. File kunci akan didownload ke komputer Anda.

Parameter integrasi

Integrasi Cloud Armor memerlukan parameter berikut:

Parameter Deskripsi
API Root

Wajib.

Root API layanan Cloud Armor.

Nilai defaultnya adalah https://compute.googleapis.com/compute/v1/.

Project ID

Opsional.

Project ID yang akan ditargetkan untuk Cloud Armor.

Jika tidak ada nilai yang diberikan, integrasi akan mengambil ID dari kredensial akun layanan.

Workload Identity Email

Opsional.

Alamat email klien akun layanan Anda. Konfigurasi parameter ini untuk autentikasi Workload Identity.

Jika dikonfigurasi, User Service Account akan diabaikan.

User Service Account

Opsional.

Konten lengkap file JSON kunci akun layanan. Konfigurasi parameter ini untuk autentikasi kunci akun layanan.

Jika dikonfigurasi, integrasi akan mengabaikan Workload Identity Email.

Verify SSL

Wajib.

Jika dipilih, integrasi akan memvalidasi sertifikat SSL saat terhubung ke server Google Cloud .

Diaktifkan secara default.

Untuk mengetahui petunjuk tentang cara mengonfigurasi integrasi di Google SecOps, lihat Mengonfigurasi integrasi.

Anda dapat melakukan perubahan di tahap selanjutnya, jika diperlukan. Setelah mengonfigurasi instance integrasi, Anda dapat menggunakannya dalam playbook. Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi dan mendukung beberapa instance, lihat Mendukung beberapa instance.

Tindakan

Untuk mengetahui informasi selengkapnya tentang tindakan, lihat Merespons tindakan tertunda dari Ruang Kerja Anda dan Melakukan tindakan manual.

Menambahkan Aturan ke Kebijakan Keamanan

Tambahkan aturan baru ke kebijakan keamanan di layanan Cloud Armor.

Entity

Tindakan ini tidak dijalankan pada entity.

Input tindakan

Untuk mengonfigurasi tindakan, gunakan parameter berikut:

Parameter
Policy Name Wajib

Nama kebijakan keamanan untuk menambahkan aturan baru.

Region Opsional

Region untuk kebijakan yang akan ditambahkan aturannya.

Jika tidak ada nilai yang diberikan, aturan akan ditambahkan ke kebijakan keamanan tingkat global.

Rule JSON Wajib

Definisi JSON aturan yang akan ditambahkan.

Untuk mengetahui informasi selengkapnya tentang cara menambahkan aturan ke kebijakan, lihat Metode: securityPolicies.addRule.

Output tindakan

Jenis output tindakan
Lampiran repositori kasus T/A
Link repositori kasus T/A
Tabel repositori kasus T/A
Tabel pengayaan T/A
Hasil JSON Tersedia
Hasil skrip Tersedia
Hasil skrip
Nama hasil skrip Nilai
is_success Benar atau Salah
Hasil JSON
{
   "kind": "compute#securityPolicy",
   "id": "ID",
   "creationTimestamp": "2024-04-14T05:39:05.798-07:00",
   "name": "example",
   "description": "Test for integration",
   "rules": [
       {
           "kind": "compute#securityPolicyRule",
           "description": "test",
           "priority": 100,
           "match": {
               "versionedExpr": "SRC_IPS_V1",
               "config": {
                   "srcIpRanges": [
                       "*"
                   ]
               }
           },
           "action": "allow",
           "preview": false
       },
       {
           "kind": "compute#securityPolicyRule",
           "description": "Default rule, higher priority overrides it",
           "priority": 2147483647,
           "match": {
               "versionedExpr": "SRC_IPS_V1",
               "config": {
                   "srcIpRanges": [
                       "*"
                   ]
               }
           },
           "action": "allow",
           "preview": false
       }
   ],
   "fingerprint": "A3hq2ZQYxj8=",
   "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
   "type": "CLOUD_ARMOR",
   "labelFingerprint": "42WmSpB8rSM=",
   "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
Repositori kasus

Tindakan ini memberikan pesan output berikut:

Pesan output Deskripsi pesan
Successfully added a new rule to the security policy! Tindakan berhasil.
Error executing action "Add a Rule to a Security Policy". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, kredensial, nama region, konten file JSON, atau nama kebijakan.

Membuat Kebijakan Keamanan

Buat kebijakan keamanan di layanan Cloud Armor.

Entity

Tindakan ini tidak dijalankan pada entity.

Input tindakan

Untuk mengonfigurasi tindakan, gunakan parameter berikut:

Parameter
Region Opsional

Region tempat kebijakan akan dibuat.

Jika tidak ada nilai yang diberikan, kebijakan keamanan tingkat global akan dibuat.

Policy JSON Wajib

Definisi JSON dari kebijakan yang akan dibuat.

Untuk mengetahui informasi selengkapnya tentang kebijakan, lihat REST Resource: securityPolicies.

Output tindakan

Jenis output tindakan
Lampiran repositori kasus T/A
Link repositori kasus T/A
Tabel repositori kasus T/A
Tabel pengayaan T/A
Hasil JSON Tersedia
Hasil skrip Tersedia
Hasil skrip
Nama hasil skrip Nilai
is_success Benar atau Salah
Hasil JSON
{
   "kind": "compute#securityPolicy",
   "id": "ID",
   "creationTimestamp": "2024-04-14T05:39:05.798-07:00",
   "name": "example",
   "description": "Test for integration",
   "rules": [
       {
           "kind": "compute#securityPolicyRule",
           "description": "test",
           "priority": 100,
           "match": {
               "versionedExpr": "SRC_IPS_V1",
               "config": {
                   "srcIpRanges": [
                       "*"
                   ]
               }
           },
           "action": "allow",
           "preview": false
       },
       {
           "kind": "compute#securityPolicyRule",
           "description": "Default rule, higher priority overrides it",
           "priority": 2147483647,
           "match": {
               "versionedExpr": "SRC_IPS_V1",
               "config": {
                   "srcIpRanges": [
                       "*"
                   ]
               }
           },
           "action": "allow",
           "preview": false
       }
   ],
   "fingerprint": "A3hq2ZQYxj8=",
   "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
   "type": "CLOUD_ARMOR",
   "labelFingerprint": "42WmSpB8rSM=",
   "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
Repositori kasus

Tindakan ini memberikan pesan output berikut:

Pesan output Deskripsi pesan
Successfully created a new security policy! Tindakan berhasil.
Error executing action "Create a Security Policy". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, kredensial, nama region, atau konten file JSON.

Ping

Uji konektivitas ke layanan Cloud Armor dengan parameter yang diberikan di halaman konfigurasi integrasi.

Entity

Tindakan ini tidak dijalankan pada entity.

Input tindakan

T/A

Output tindakan

Jenis output tindakan
Lampiran repositori kasus T/A
Link repositori kasus T/A
Tabel repositori kasus T/A
Tabel pengayaan T/A
Hasil JSON T/A
Hasil skrip Tersedia
Hasil skrip
Nama hasil skrip Nilai
is_success Benar atau Salah
Repositori kasus

Tindakan ini memberikan pesan output berikut:

Pesan output Deskripsi pesan
Successfully connected to the Google Cloud Armor service with the provided connection parameters! Tindakan berhasil.
Failed to connect to the Google Cloud Armor service! Error is ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Memperbarui Kebijakan Keamanan

Perbarui kebijakan keamanan yang ada di layanan Cloud Armor.

Tindakan ini tidak dapat memperbarui aturan dalam kebijakan. Untuk menambahkan aturan ke kebijakan terkait, gunakan tindakan Tambahkan Aturan ke Kebijakan Keamanan.

Entity

Tindakan ini tidak dijalankan pada entity.

Input tindakan

Untuk mengonfigurasi tindakan, gunakan parameter berikut:

Parameter
Policy Name Wajib

Nama kebijakan keamanan untuk menambahkan aturan baru.

Region Opsional

Region untuk kebijakan yang diperbarui.

Jika tidak ada nilai yang diberikan, kebijakan keamanan tingkat global akan dibuat.

Rule JSON Wajib

Definisi JSON kebijakan yang akan diperbarui.

Untuk informasi selengkapnya tentang pembaruan kebijakan, lihat Metode: securityPolicies.patch .

Anda tidak dapat memperbarui aturan dengan tindakan ini. Untuk menambahkan aturan ke kebijakan, gunakan tindakan Tambahkan Aturan ke Kebijakan Keamanan.

Output tindakan

Jenis output tindakan
Lampiran repositori kasus T/A
Link repositori kasus T/A
Tabel repositori kasus T/A
Tabel pengayaan T/A
Hasil JSON Tersedia
Hasil skrip Tersedia
Hasil skrip
Nama hasil skrip Nilai
is_success Benar atau Salah
Hasil JSON
{
   "kind": "compute#securityPolicy",
   "id": "ID",
   "creationTimestamp": "2024-04-14T05:39:05.798-07:00",
   "name": "example",
   "description": "Test for integration",
   "rules": [
       {
           "kind": "compute#securityPolicyRule",
           "description": "test",
           "priority": 100,
           "match": {
               "versionedExpr": "SRC_IPS_V1",
               "config": {
                   "srcIpRanges": [
                       "*"
                   ]
               }
           },
           "action": "allow",
           "preview": false
       },
       {
           "kind": "compute#securityPolicyRule",
           "description": "Default rule, higher priority overrides it",
           "priority": 2147483647,
           "match": {
               "versionedExpr": "SRC_IPS_V1",
               "config": {
                   "srcIpRanges": [
                       "*"
                   ]
               }
           },
           "action": "allow",
           "preview": false
       }
   ],
   "fingerprint": "A3hq2ZQYxj8=",
   "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1/securityPolicies/example",
   "type": "CLOUD_ARMOR",
   "labelFingerprint": "42WmSpB8rSM=",
   "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/northamerica-northeast1"
}
Repositori kasus

Tindakan ini memberikan pesan output berikut:

Pesan output Deskripsi pesan
Successfully added comment to the identity protection detection with ID DETECTION_ID in CrowdStrike Tindakan berhasil.
Error executing action "Update a Security Policy". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.