Google Cloud Storage

Dokumen ini memberikan panduan tentang cara mengintegrasikan Cloud Storage dengan modul SOAR Google Security Operations.

Versi integrasi: 9.0

Integrasi ini menggunakan satu atau beberapa komponen open source. Anda dapat mendownload salinan kode sumber integrasi ini dari bucket Cloud Storage.

Kasus penggunaan

Di platform SOAR Google SecOps, integrasi Google Cloud Storage memecahkan kasus penggunaan berikut:

  • Penyimpanan bukti insiden: playbook dapat mengumpulkan dan menyimpan bukti terkait insiden seperti log dan sampel malware secara otomatis di bucket Cloud Storage untuk menyediakan repositori yang tahan terhadap gangguan untuk menjaga bukti.

  • Berbagi informasi intelijen ancaman: tim keamanan Anda dapat menggunakan Cloud Storage untuk membagikan feed informasi intelijen ancaman seperti daftar alamat IP dan domain berbahaya dengan aman kepada tim atau organisasi lain. Berbagi feed memungkinkan pertahanan ancaman kolaboratif dan waktu respons yang lebih cepat.

  • Integrasi sandbox analisis malware: playbook dapat secara otomatis mengirimkan file mencurigakan dari insiden ke sandbox analisis malware berbasis cloud. Anda dapat menyimpan hasil analisis di Cloud Storage untuk ditinjau dan tindakan lebih lanjut guna memberikan analisis malware yang efisien dan skalabel.

  • Pencadangan konfigurasi keamanan: gunakan kemampuan SOAR Google SecOps untuk mengotomatiskan pencadangan rutin konfigurasi keamanan penting seperti aturan firewall dan tanda tangan sistem deteksi intrusi ke Cloud Storage. Pencadangan otomatis memberikan kelangsungan bisnis dan pemulihan yang lebih cepat jika terjadi perubahan yang tidak disengaja atau berbahaya.

  • Penyimpanan artefak kampanye phishing: gunakan kemampuan SOAR Google SecOps untuk menyimpan email phishing, lampiran, dan artefak lainnya di Cloud Storage saat menyelidiki kampanye phishing. Penyimpanan artefak memungkinkan analisis dan pengawetan bukti terpusat untuk potensi tindakan hukum.

Sebelum memulai

Untuk menggunakan integrasi, Anda memerlukan akun layanan Google Cloud . Anda dapat menggunakan akun layanan yang ada atau membuat yang baru.

Membuat akun layanan

  1. Untuk mendapatkan panduan tentang cara membuat akun layanan, lihat Membuat akun layanan.

  2. Di bagian Berikan akses project ke akun layanan ini, berikan peran berikut ke akun layanan Anda:

    • Storage Admin
  3. Jika Anda tidak menjalankan beban kerja di Google Cloud, Anda harus membuat kunci akun layanan dalam JSON setelah Anda membuat akun layanan. Jika Anda tidak menggunakan email Workload Identity Federation for GKE, Anda harus memberikan konten file JSON yang didownload saat mengonfigurasi parameter integrasi.

    Untuk alasan keamanan, sebaiknya gunakan alamat email Workload Identity Federation untuk GKE, bukan kunci JSON akun layanan. Untuk mengetahui informasi selengkapnya tentang identitas beban kerja, lihat Identitas untuk beban kerja.

Mengintegrasikan Cloud Storage dengan Google SecOps

Integrasi memerlukan parameter berikut:

Parameter Deskripsi
Service Account Opsional

Konten file JSON kunci akun layanan.

Anda dapat mengonfigurasi parameter ini atau parameter Workload Identity Email.

Untuk mengonfigurasi parameter ini, berikan konten lengkap file JSON akun layanan yang telah Anda download saat membuat akun layanan.

Workload Identity Email Opsional

Alamat email klien akun layanan Anda.

Anda dapat mengonfigurasi parameter ini atau parameter Service Account.

Untuk meniru identitas akun layanan dengan alamat email Workload Identity Federation for GKE, berikan peran Service Account Token Creator ke akun layanan Anda. Untuk mengetahui detail selengkapnya tentang identitas beban kerja dan cara menggunakannya, lihat Identitas untuk beban kerja.

Project ID Opsional

Project ID yang akan digunakan untuk integrasi Cloud Storage. Jika Anda tidak menetapkan nilai untuk parameter ini, ID project akan diambil dari konten file JSON yang diberikan dalam parameter Service Account.

Quota Project ID Opsional

Google Cloud Project ID yang Anda gunakan untuk Google Cloud API dan penagihan. Parameter ini mengharuskan Anda memberikan peran Service Usage Consumer ke akun layanan Anda.

Jika Anda tidak menetapkan nilai untuk parameter ini, ID project akan diambil dari konten file JSON yang diberikan dalam parameter Service Account.

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

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

Tindakan

Untuk tindakan yang berfungsi dengan daftar kontrol akses (ACL), Anda dapat menentukan akses dan menerapkan izin untuk bucket dan objek individual. Untuk mengetahui informasi selengkapnya, lihat Daftar kontrol akses (ACL).

Mendownload Objek dari Bucket

Gunakan tindakan ini untuk mendownload objek (file) tertentu dari bucket Cloud Storage.

Tindakan ini tidak dijalankan di entity.

Input tindakan

Tindakan Download Objek dari Bucket memerlukan parameter berikut:

Parameter Deskripsi
Bucket Name Wajib

Nama bucket Cloud Storage yang berisi objek yang akan didownload.

Object Name Wajib

Nama lengkap objek yang akan didownload.

Jika objek berada di dalam folder di bucket, sertakan jalur folder, seperti folderA/mydocument.pdf.

Download Path Wajib

Jalur absolut untuk objek yang didownload yang mengarah ke direktori yang ada, misalnya, /tmp/downloads/.

Output tindakan

Tindakan Download Objek dari Bucket memberikan output berikut:

Jenis output tindakan Ketersediaan
Lampiran repositori kasus Tidak tersedia
Link repositori kasus Tidak tersedia
Tabel repositori kasus Tidak tersedia
Tabel pengayaan Tidak tersedia
Hasil JSON Tersedia
Pesan output Tersedia
Hasil skrip Tersedia
Hasil JSON

Contoh berikut menjelaskan output hasil JSON yang diterima saat menggunakan tindakan Download Objek dari Bucket:

{
"object_name": "123.txt"
"download_path": "/usr/bin/share/download.txt"
}
Pesan output

Di Repositori Kasus, tindakan Download Objek dari Bucket memberikan pesan output berikut:

Pesan output Deskripsi pesan

OBJECT_NAME successfully downloaded to DESTINATION_PATH.

Action wasn't able to download OBJECT_NAME. Reason: Bucket BUCKET_NAME not found.

Action wasn't able to download OBJECT_NAME. Reason: No such object.

Tindakan berhasil.
Error executing action "Download an Object From a Bucket". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Hasil skrip

Tabel berikut menjelaskan nilai untuk output hasil skrip saat menggunakan tindakan Download Objek dari Bucket:

Nama hasil skrip Nilai
is_success True atau False

Mendapatkan Daftar Kontrol Akses Bucket

Gunakan tindakan Dapatkan Daftar Kontrol Akses Bucket untuk mengambil dan menampilkan ACL untuk bucket Cloud Storage yang ditentukan.

Tindakan ini tidak dijalankan di entity.

Input tindakan

Tindakan Dapatkan Daftar Kontrol Akses Bucket memerlukan parameter berikut:

Parameter Deskripsi
Bucket Name Wajib

Nama bucket Cloud Storage yang ACL-nya ingin Anda ambil. Untuk mengambil ACL beberapa bucket, masukkan nama bucket sebagai string yang dipisahkan koma, seperti bucket1,bucket2,bucket3.

Output tindakan

Tindakan Dapatkan Daftar Kontrol Akses Bucket memberikan output berikut:

Jenis output tindakan Ketersediaan
Lampiran repositori kasus Tidak tersedia
Link repositori kasus Tidak tersedia
Tabel repositori kasus Tidak tersedia
Tabel pengayaan Tidak tersedia
Hasil JSON Tidak tersedia
Pesan output Tersedia
Hasil skrip Tersedia
Hasil JSON
[
  {"BucketName": "ziv",
   "BucketACLs": [
                  {"Entity": "project-owners-ID",
                   "Role": "OWNER"}
                 ]
  }
]
Pesan output

Di Dinding Kasus, tindakan Dapatkan Daftar Kontrol Akses Bucket memberikan pesan output berikut:

Pesan output Deskripsi pesan

Successfully retrieved the access control list (ACL) for the Cloud Storage buckets BUCKET_NAMES

Action wasn't able to return the access control list(ACL) for the Cloud Storage buckets BUCKET_NAMES. Reason: Cannot get legacy ACL for a bucket that has uniform bucket-level access. Read more at https://cloud.google.com/storage/docs/uniform-bucket-level-access

Action wasn't able to return the access control list(ACL) for the Cloud Storage buckets BUCKET_NAMES.

Tindakan berhasil.
Error executing action "Get a Bucket's Access Control List". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Hasil skrip

Tabel berikut menjelaskan nilai untuk output hasil skrip saat menggunakan tindakan Get a Bucket's Access Control List:

Nama hasil skrip Nilai
is_success True atau False

Mencantumkan Objek Bucket

Gunakan tindakan List Bucket Objects untuk mencantumkan objek yang disimpan di bucket Cloud Storage.

Tindakan ini tidak dijalankan di entity.

Input tindakan

Tindakan List Bucket Objects memerlukan parameter berikut:

Parameter Deskripsi
Bucket Name Wajib

Nama bucket tempat mengambil objek.

Max Objects to Return Opsional

Jumlah objek yang akan ditampilkan.

Secara default, tindakan ini menampilkan 50 objek untuk setiap eksekusi tindakan.

Retrieves the Access Control List of an object Opsional

Jika dipilih, tindakan akan mengambil ACL objek.

Tidak dipilih secara default.

Output tindakan

Tindakan List Bucket Objects memberikan output berikut:

Jenis output tindakan Ketersediaan
Lampiran repositori kasus Tidak tersedia
Link repositori kasus Tidak tersedia
Tabel repositori kasus Tidak tersedia
Tabel pengayaan Tidak tersedia
Hasil JSON Tersedia
Pesan output Tersedia
Hasil skrip Tersedia
Hasil JSON

Contoh berikut menjelaskan output hasil JSON yang diterima saat menggunakan tindakan List Bucket Objects:

  • Jika parameter Retrieves the Access Control List of an object tidak dipilih:

    {
        "Objects": [
            {
                "ObjectName": "test.txt",
            "Bucket":
            "ContentType":
                "TimeCreated": " ",
                "TimeUpdated": " ",
                "Size": 18,
                "MD5": "7CjVfQ+Oz/C0pI08IKRdvQ==",
                "Owner": "",
                "CR32c": "RQEqxA==",
                "id": "siemplify-tip/test.txt/1604926667310271"
            }
        ]
    }
    
  • Jika parameter Retrieves the Access Control List of an object dipilih:

    {
        "Objects": [
            {
                "ObjectName": "test.txt",
            "Bucket": "BUCKET_NAME",
            "ContentType": "text/plain"
                "TimeCreated": " ",
                "TimeUpdated": " ",
                "Size": 18,
                "MD5": "7CjVfQ+Oz/C0pI08IKRdvQ==",
                "Owner": "",
                "CR32c": "RQEqxA==",
                "id": "BUCKET_NAME/test.txt/1604926667310271",
                "ObjectACL": [
                    {
                        "entity": "user@example.com",
                        "role": "OWNER"
                    }]
            },
        ]
    }
    
Pesan output

Di Dinding Kasus, tindakan List Bucket Objects memberikan pesan output berikut:

Pesan output Deskripsi pesan

Successfully returned objects of the BUCKET_NAME bucket in Google Cloud Storage.

Action wasn't able to return objects of the BUCKET_NAME bucket in Google Cloud Storage.

Tindakan berhasil.
Error executing action "List Bucket Objects". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Hasil skrip

Tabel berikut menjelaskan nilai untuk output hasil skrip saat menggunakan tindakan List Bucket Objects:

Nama hasil skrip Nilai
is_success True atau False

Mencantumkan Bucket

Gunakan tindakan List Buckets untuk mengambil daftar bucket dari Cloud Storage.

Tindakan ini tidak dijalankan di entity.

Input tindakan

Tindakan List Buckets memerlukan parameter berikut:

Parameter Deskripsi
Max Results Opsional

Jumlah maksimum bucket yang akan ditampilkan.

Secara default, tindakan ini menampilkan 50 bucket.

Output tindakan

Tindakan List Buckets memberikan output berikut:

Jenis output tindakan Ketersediaan
Lampiran repositori kasus Tidak tersedia
Link repositori kasus Tidak tersedia
Tabel repositori kasus Tidak tersedia
Tabel pengayaan Tidak tersedia
Hasil JSON Tersedia
Pesan output Tersedia
Hasil skrip Tersedia
Hasil JSON

Contoh berikut menjelaskan output hasil JSON yang diterima saat menggunakan tindakan List Buckets:

{
    "Buckets": [
        {
            "CreationDate": "2020-11-09T12:57:03.981Z",
            "ModificationDate": "2020-11-09T12:57:03.981Z",
            "Name": "testexample",
            "Owner": "testexample"
        }]
}
Pesan output

Di Dinding Kasus, tindakan List Buckets memberikan pesan output berikut:

Pesan output Deskripsi pesan

Successfully listed available buckets in Google Cloud Storage.

Action wasn't able to list available buckets in Google Cloud Storage.

Tindakan berhasil.
Error executing action "List Buckets". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Hasil skrip

Tabel berikut menjelaskan nilai untuk output hasil skrip saat menggunakan tindakan List Buckets:

Nama hasil skrip Nilai
is_success True atau False

Ping

Gunakan tindakan Ping untuk menguji konektivitas ke Cloud Storage.

Tindakan ini tidak dijalankan di entity.

Input tindakan

Tidak ada.

Output tindakan

Tindakan ini memberikan output berikut:

Jenis output tindakan Ketersediaan
Lampiran repositori kasus Tidak tersedia
Link repositori kasus Tidak tersedia
Tabel repositori kasus Tidak tersedia
Tabel pengayaan Tidak tersedia
Hasil JSON Tidak tersedia
Pesan output Tersedia
Hasil skrip Tersedia
Pesan output

Di Repositori Kasus, tindakan Ping memberikan pesan output berikut:

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

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Hasil skrip

Tabel berikut menjelaskan nilai untuk output hasil skrip saat menggunakan tindakan Ping:

Nama hasil skrip Nilai
is_success True atau False

Menghapus Akses Publik Dari Bucket

Gunakan tindakan Hapus Akses Publik dari Bucket untuk menghapus akses publik dari bucket Cloud Storage.

Tindakan ini mengharuskan Anda memberikan peran Storage Admin ke akun layanan yang Anda gunakan dalam integrasi.

Tindakan ini tidak dijalankan di entity.

Input tindakan

Tindakan Hapus Akses Publik Dari Bucket memerlukan parameter berikut:

Parameter Deskripsi
Resource Name Wajib

Nama resource bucket.

Prevent Public Access From Bucket Wajib

Jika dipilih, tindakan ini akan mengonfigurasi bucket untuk mencegah kemungkinan akses publik.

Output tindakan

Tindakan Hapus Akses Publik Dari Bucket memberikan output berikut:

Jenis output tindakan Ketersediaan
Lampiran repositori kasus Tidak tersedia
Link repositori kasus Tidak tersedia
Tabel repositori kasus Tidak tersedia
Tabel pengayaan Tidak tersedia
Hasil JSON Tidak tersedia
Pesan output Tersedia
Hasil skrip Tersedia
Pesan output

Di Repositori Kasus, tindakan Hapus Akses Publik Dari Bucket memberikan pesan output berikut:

Pesan output Deskripsi pesan
Successfully removed public access from bucket using Google Cloud Storage: RESOURCE_NAME Tindakan berhasil.
Error executing action "Remove Public Access From Bucket". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Hasil skrip

Tabel berikut menjelaskan nilai untuk output hasil skrip saat menggunakan tindakan Hapus Akses Publik Dari Bucket:

Nama hasil skrip Nilai
is_success True atau False

Memperbarui entri ACL di Bucket

Gunakan tindakan Update an ACL entry on Bucket untuk memperbarui entri ACL di bucket Cloud Storage yang ditentukan.

Input tindakan

Tindakan Perbarui entri ACL di Bucket memerlukan parameter berikut:

Parameter Deskripsi
Bucket Name Wajib

Nama bucket yang ACL-nya akan diubah.

Entity Wajib

Entitas yang memiliki izin.

Nilai yang mungkin adalah sebagai berikut:

  • user-userId
  • user-emailAddress
  • group-groupId
  • group-emailAddress
  • allUsers
  • allAuthenticatedUsers

Untuk mengetahui informasi selengkapnya tentang entitas, lihat Representasi resource.

Role Wajib

Izin akses yang diperlukan untuk entitas.

Kemungkinan nilainya adalah sebagai berikut:

  • OWNER
  • READER
  • WRITER

Output tindakan

Tindakan Update an ACL entry on Bucket memberikan output berikut:

Jenis output tindakan Ketersediaan
Lampiran repositori kasus Tidak tersedia
Link repositori kasus Tidak tersedia
Tabel repositori kasus Tidak tersedia
Tabel pengayaan Tidak tersedia
Hasil JSON Tidak tersedia
Pesan output Tersedia
Hasil skrip Tersedia
Pesan output

Di Dinding Kasus, tindakan Perbarui entri ACL di Bucket memberikan pesan output berikut:

Pesan output Deskripsi pesan

Action wasn't able to update the ACL entity: ENTITY to role: ROLE in bucket BUCKET_NAME. Reason: OWNERs are WRITERs.

Action wasn't able to update the ACL entity: ENTITY to role: ROLE in bucket BUCKET_NAME. Reason: OWNERs are WRITERs.

Tindakan berhasil. Peran yang ada tidak cocok dengan nilai parameter Role. Periksa nilai parameter Role.
Successfully updated ACL entity: ENTITY to role: ROLE in bucket BUCKET_NAME. Tindakan berhasil.

Error executing action "Update an ACL entry on Bucket". Reason: Entity ENTITY does not exist in the ACL of bucket BUCKET_NAME.

Action wasn't able to update the ACL entity: ENTITY to role: ROLE in bucket BUCKET_NAME. The entity holding the permission can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

Error executing action "Update an ACL entry on Bucket". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Hasil skrip

Tabel berikut menjelaskan nilai untuk output hasil skrip saat menggunakan tindakan Perbarui entri ACL di Bucket:

Nama hasil skrip Nilai
is_success True atau False

Mengupload Objek ke Bucket

Gunakan tindakan Upload Objek ke Bucket untuk mengupload objek ke bucket Cloud Storage.

Tindakan ini tidak dijalankan di entity.

Input tindakan

Tindakan Upload Objek Ke Bucket memerlukan parameter berikut:

Parameter Deskripsi
Bucket Name Wajib

Nama bucket tempat mengupload objek.

Source File Path Wajib

Jalur absolut ke file yang akan diupload, seperti /local/path/to/filename.

Object Name Wajib

Nama objek yang diupload di bucket.

Output tindakan

Tindakan Upload Objek ke Bucket memberikan output berikut:

Jenis output tindakan Ketersediaan
Lampiran repositori kasus Tidak tersedia
Link repositori kasus Tidak tersedia
Tabel repositori kasus Tidak tersedia
Tabel pengayaan Tidak tersedia
Hasil JSON Tersedia
Pesan output Tersedia
Hasil skrip Tersedia
Hasil JSON
{
   "object_id":"BUCKET_NAME/errorlog.txt/1610616919132517",
   "Object_name":"errorlog.txt",
   "md5_hash":"PTdL8D6pBwIKyMfIXR/H9A==",
   "object_path":"/b/BUCKET_NAME/o/errorlog.txt"
}
Pesan output

Di Dinding Kasus, tindakan Upload Objek Ke Bucket memberikan pesan output berikut:

Pesan output Deskripsi pesan

Successfully uploaded SOURCE_PATH to bucket: BUCKET_NAME.

Action wasn't able to upload SOURCE_PATH to Google Cloud Storage. Reason:No such file or directory: SOURCE_PATH.

Tindakan berhasil.
Error executing action "Upload an Object To a Bucket". Reason: ERROR_REASON

Tindakan gagal.

Periksa koneksi ke server, parameter input, atau kredensial.

Hasil skrip

Tabel berikut menjelaskan nilai untuk output hasil skrip saat menggunakan tindakan Upload Objek Ke Bucket:

Nama hasil skrip Nilai
is_success True atau False

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