GitSync

GitSync adalah integrasi yang dibuat untuk Google SecOps yang menyinkronkan aset dan komponen otomatisasi keamanan dengan repositori Git eksternal (seperti GitHub, GitLab, atau Bitbucket). Fitur ini memfasilitasi sinkronisasi konten dua arah, menyediakan kontrol versi otomatis, pencadangan konfigurasi, dan promosi lintas lingkungan di seluruh siklus proses operasi keamanan Anda. Perhatikan bahwa GitSync dirancang untuk mencadangkan dan memigrasikan aset antara lingkungan terkait (seperti pengembangan, staging, dan produksi), bukan untuk mendistribusikan aset di seluruh sistem yang tidak terkait, yang dapat menyebabkan konflik ID database internal.

Kasus penggunaan

Integrasi GitSync mendukung kasus penggunaan utama berikut:

  • Kontrol versi dan kemampuan audit (Security as Code): Lacak modifikasi, tinjau perbedaan, dan pertahankan histori versi lengkap perubahan di seluruh playbook, konektor, integrasi, dan setelan sistem.

  • Promosi multi-lingkungan (pipeline CI/CD): Promosikan playbook, pemetaan ontologi, dan setelan integrasi secara sistematis dari lingkungan pengembangan dan staging ke produksi melalui permintaan pull dan penggabungan cabang.

  • Pencadangan dan disaster recovery: Pulihkan playbook dan konfigurasi platform yang tidak sengaja dihapus, rusak, atau salah dikonfigurasi langsung dari repositori Git Anda.

  • Standardisasi lintas lingkungan: Distribusikan playbook standar, kelompok visual kustom, dan definisi konektor di seluruh lingkungan Google SecOps terkait dari repositori terpusat.

  • Isolasi percabangan dan staging: Uji playbook eksperimental dan cabang fitur di lingkungan khusus tanpa memengaruhi alur kerja atau jadwal produksi.

  • Peninjauan dan kolaborasi offline: Ekspor definisi platform sebagai JSON dan Markdown untuk memungkinkan peninjauan sejawat, validasi otomatis, dan pemeriksaan di alat developer standar.

  • Blok alur kerja yang dapat digunakan kembali: Sinkronkan blok alur kerja modular bersama atau secara terpisah dari playbook lengkap sehingga tim dapat berbagi langkah otomatisasi umum.

Alur kerja penerapan berdasarkan sasaran

Untuk langsung membuka panduan yang sesuai dengan tujuan Anda saat ini, pilih alur kerja Anda:

Sebelum memulai

Sebelum mengonfigurasi dan menjalankan operasi GitSync, verifikasi versi integrasi Anda, dapatkan akses repositori, dan selesaikan tugas penyiapan berikut:

  • Gunakan repositori Git pribadi dengan akses tulis: Pastikan Anda memiliki izin tulis ke repositori Git jarak jauh pribadi yang dihosting di penyedia Git yang didukung (seperti GitHub, GitLab, atau Bitbucket). Meskipun parameter jenis Password dikecualikan secara default kecuali jika Commit Passwords diaktifkan, semua parameter lainnya (seperti ID Aplikasi, Client ID, nama pengguna, dan endpoint) diekspor dalam teks biasa. Jangan pernah menggunakan repositori publik dengan GitSync.

  • Melakukan inisialisasi repositori jarak jauh: Pastikan repositori jarak jauh memiliki setidaknya satu commit awal (seperti file README.md atau .gitignore). GitSync tidak dapat menyinkronkan ke repositori kosong.

  • Menyiapkan kredensial autentikasi Git: Buat kredensial autentikasi dengan izin tulis repositori. GitSync mendukung kunci pribadi SSH berenkode base64 (direkomendasikan), Token Akses Pribadi (PAT), serta kredensial nama pengguna dan sandi dasar.

    Untuk membuat dan mengenkode kunci SSH, lihat Membuat kunci SSH untuk GitSync.

  • Verifikasi konektivitas jaringan dan Kontrol Layanan VPC: Pastikan instance Google SecOps atau remote runner Anda memiliki akses firewall keluar di port TCP 443 (untuk HTTPS) atau port TCP 22 (untuk SSH) ke penyedia Git Anda.

    Jika lingkunganGoogle Cloud Anda menggunakan perimeter layanan Kontrol Layanan VPC, hubungi administrator Google Cloud Anda untuk mengonfigurasi aturan ingress dan egress agar integrasi respons dapat berkomunikasi dengan API Google Cloud dan endpoint eksternal yang diperlukan.

  • Dapatkan sidik jari host Git Anda (direkomendasikan): Untuk melindungi dari serangan person-in-the-middle (PITM), ambil sidik jari kunci publik server Git Anda untuk penyematan sidik jari host.

    Untuk mengetahui langkah-langkah konfigurasi, lihat Mengaktifkan penyematan sidik jari host.

  • Memberikan izin edit playbook: Jika Anda ingin menyinkronkan playbook dengan akses default terbatas (seperti izin default yang ditetapkan ke Dapat Melihat), berikan izin Dapat Mengedit kepada peran SOC Administrator di sistem sumber sebelum menjalankan tugas sinkronisasi.

    Untuk mengetahui petunjuk langkah demi langkah, lihat Mengonfigurasi izin playbook.

Membuat kunci SSH untuk GitSync

Untuk mengonfigurasi autentikasi yang aman dan tanpa sandi menggunakan kunci SSH:

  1. Buat pasangan kunci RSA atau Ed25519 di terminal Anda. Saat dimintai frasa sandi, tekan Enter untuk mengosongkannya:

    ssh-keygen -b 2048 -t rsa -f ./id_rsa
    

    Perintah ini akan membuat dua file: id_rsa (kunci pribadi) dan id_rsa.pub (kunci publik).

  2. Tambahkan kunci publik (id_rsa.pub) ke layanan hosting Git jarak jauh Anda sebagai Kunci Deployment atau Kunci Akses dengan izin tulis.

  3. Konversi kunci pribadi menjadi string berenkode base64 satu baris:

    • Linux / macOS:

      base64 -w 0 ./id_rsa
      
    • Windows (PowerShell):

      [Convert]::ToBase64String([System.IO.File]::ReadAllBytes(".\id_rsa"))
      
  4. Salin string base64 yang dihasilkan dan tempelkan ke parameter Git Password/Token/SSH Key saat mengonfigurasi instance integrasi GitSync.

Mengaktifkan penyematan sidik jari host

Penyematan sidik jari host memverifikasi identitas server Git Anda setelah koneksi untuk melindungi dari serangan person-in-the-middle (PITM). Meskipun parameter Git Server Fingerprint bersifat opsional, mengonfigurasinya akan memastikan GitSync terhubung secara eksklusif ke host Git terverifikasi Anda.

Untuk mengonfigurasi penyematan sidik jari host:

  1. Ambil sidik jari host Anda: Jalankan ssh-keyscan di terminal Anda terhadap nama host server Git Anda:

    ssh-keyscan -t rsa <hostname>
    

    Misalnya, untuk GitHub, jalankan ssh-keyscan -t rsa github.com. Output perintah menghasilkan baris kunci host publik yang mirip dengan berikut ini:

    github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...
    
  2. Simpan sidik jari untuk konfigurasi: Salin baris kunci host publik. Masukkan nilai ini ke dalam parameter Git Server Fingerprint saat mengonfigurasi instance integrasi GitSync (untuk menerapkannya ke semua tugas) atau pada tugas sinkronisasi individual (untuk mengganti setelan untuk host tertentu).

Konfigurasi izin playbook

Saat menyinkronkan playbook dengan izin terbatas (misalnya, izin default ditetapkan ke Can View), tetapkan izin Can Edit ke peran SOC Administrator:

  1. Di Google SecOps, buka Playbooks dan pilih playbook target.
  2. Buka setelan izin playbook.
  3. Tambahkan peran SOC Administrator ke daftar entitas dan tetapkan izinnya ke Dapat Mengedit.

Rollback versi 53.0

GitSync versi 53.0 memperkenalkan perubahan Chronicle API dan skema ekspor JSON yang dimodifikasi yang menyebabkan kegagalan sinkronisasi. Untuk menyelesaikan masalah ini, GitSync versi 54.0 mengembalikan perubahan versi 53.0 dan memulihkan codebase versi 52.0 yang stabil.

Selesaikan langkah-langkah berikut untuk beralih ke versi 52.0 atau versi 54.0 dan memulihkan cabang repositori yang kompatibel:

  1. Jeda tugas sinkronisasi terjadwal: Nonaktifkan tugas GitSync terjadwal yang aktif (seperti Push Content dan Pull Content) agar tugas tidak berjalan saat Anda beralih versi dan cabang.

  2. Beralih ke versi 54.0 atau melakukan roll back ke versi 52.0: Di Content Hub, temukan integrasi GitSync:

    • Jika versi 54.0 tersedia, upgrade integrasi ke versi 54.0.
    • Jika versi 54.0 belum muncul (cache Content Hub disinkronkan kira-kira setiap 8 jam) atau jika Anda lebih suka mendowngrade secara langsung, downgrade versi integrasi ke versi 52.0.
  3. Arahkan GitSync ke cabang repositori Anda sebelumnya: Cabang repositori yang diisi menggunakan versi 53.0 menggunakan skema JSON berbeda yang tidak kompatibel dengan versi 52.0 atau 54.0:

    • Jika Anda membuat cabang terpisah untuk versi 53.0 (misalnya, gitsync-chronicle-api): Buka Settings > Integrations > GitSync, ubah parameter Branch kembali ke cabang asli Anda (misalnya, main), dan jalankan tindakan Ping untuk memverifikasi konektivitas.
    • Jika Anda menimpa cabang yang ada di versi 53.0: Pulihkan cabang dari tag Git backup-legacy-pre-migration (atau commit pra-v53 terakhir), atau hapus direktori yang diekspor versi 53.0 (Playbooks/, Connectors/, Integrations/, Jobs/, Ontology/, SimulatedCases/, dan Settings/) dan jalankan tugas Push Content penuh dari versi 52.0 atau 54.0 untuk mengisi ulang cabang.
  4. Lanjutkan tugas terjadwal: Setelah mengonfirmasi bahwa cabang Anda berisi konfigurasi yang diekspor oleh versi 52.0 atau 54.0, aktifkan kembali tugas GitSync terjadwal Anda.

Mengonfigurasi integrasi

Konfigurasikan integrasi GitSync sebagai Instance Bersama di Google SecOps agar semua komponen platform dan tugas terjadwal dapat mengakses konfigurasi repositori.

Parameter integrasi GitSync

Parameter Deskripsi
Repo URL

Wajib.

URL repositori Git jarak jauh.

Saat menggunakan autentikasi HTTPS, URL harus diawali dengan https:// (misalnya, https://github.com/organization/secops-platform.git).

Saat menggunakan autentikasi SSH, URL harus diawali dengan git@ atau ssh:// (misalnya, git@github.com:organization/secops-platform.git).

Branch

Wajib.

Cabang repositori Git yang akan disinkronkan (misalnya, main).

Git Password/Token/SSH Key

Wajib.

Kredensial autentikasi untuk repositori Git jarak jauh.

Parameter ini menerima sandi akun Git, Personal Access Token (PAT), atau kunci pribadi SSH berenkode base64 (RSA 2048-bit atau Ed25519).

Git Username

Opsional.

Nama pengguna akun Git.

Diperlukan saat menggunakan autentikasi nama pengguna dan sandi melalui HTTPS.

Git Server Fingerprint

Opsional.

Kunci host publik SSH dari server Git jarak jauh Anda (misalnya, github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...).

Mengonfigurasi parameter ini akan mengaktifkan penyematan sidik jari host, memastikan GitSync terhubung secara eksklusif ke host Git terverifikasi dan mengurangi risiko person-in-the-middle (PITM).

Untuk mengambil nilai ini, lihat Mengaktifkan penyematan sidik jari host.

Commit Author

Opsional.

Identitas penulis yang dilampirkan ke commit Git keluar yang dihasilkan oleh GitSync.

Formatnya harus mengikuti kepenulisan Git standar: Name &lt;email@domain.com&gt; (defaultnya adalah GitSync &lt;gitsync@siemplify.co&gt;).

Siemplify Verify SSL

Wajib.

Jika dipilih, integrasi akan memvalidasi sertifikat SSL endpoint API Google SecOps.

Diaktifkan secara default.

Git Verify SSL

Wajib.

Jika dipilih, integrasi akan memvalidasi sertifikat SSL server penyedia Git jarak jauh.

Diaktifkan secara default.

SOAR Username

Opsional.

Nama pengguna Google SecOps dari akun dengan izin edit playbook.

Berikan parameter ini jika kunci API default gagal karena batas izin.

SOAR Password

Opsional.

Sandi yang sesuai dengan SOAR Username yang dikonfigurasi.

Tindakan

Untuk mengetahui informasi selengkapnya tentang tindakan, lihat Merespons tindakan yang tertunda dari meja kerja Anda dan Menjalankan tindakan manual dalam kasus Anda.

Ping

Gunakan tindakan Ping untuk menguji konektivitas jaringan dan memverifikasi kredensial autentikasi terhadap repositori dan cabang Git yang dikonfigurasi.

Input tindakan

Tidak ada.

Output tindakan

Tindakan Ping 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

Tindakan Ping dapat menampilkan pesan output berikut:

Pesan output Deskripsi pesan
Successfully executed action "Ping". Tindakan berhasil dan konektivitas repositori diverifikasi.
Error executing action "Ping". Reason: ERROR_REASON Tindakan gagal. Verifikasi URL repositori, nama cabang, kredensial, atau rute jaringan.
Hasil skrip

Tabel berikut mencantumkan nilai hasil skrip saat menggunakan tindakan Ping:

Nama hasil skrip Nilai
is_success true atau false

Pekerjaan

GitSync menyediakan 16 konfigurasi tugas sinkronisasi (2 tugas instance penuh dan 7 pasangan tugas mandiri) untuk mengelola aset platform. Tugas ini mendukung cakupan sinkronisasi mandiri yang ditargetkan dan tingkat instance penuh.

Cakupan sinkronisasi dan aset yang didukung

Integrasi ini mengatur tugas sinkronisasi ke dalam dua cakupan operasional yang berbeda untuk memenuhi berbagai kebutuhan administratif dan otomatisasi:

  • Sinkronisasi instance penuh (Push Content dan Pull Content): Menyinkronkan seluruh platform Google SecOps Anda dalam satu operasi massal.

    Hal ini mencakup 21 kategori aset platform di tiga area fungsional:

    • Konfigurasi sistem dan lingkungan: Lingkungan, Domain, Parameter Dinamis, Daftar Kustom, Jaringan, Daftar yang Tidak Diizinkan (Daftar Tolak), Setelan Judul Kasus, Template Email, dan Logo.

    • Pengelolaan pemberitahuan dan kasus: Tag Kasus, Tahap Kasus, Alasan Penutupan Kasus, Catatan SLA, dan Kasus Simulasi.

    • Otomatisasi dan integrasi keamanan: Playbook (termasuk Blok alur kerja yang dapat digunakan kembali), Integrasi, Instance Integrasi, Konektor, Tugas Terjadwal, Pemetaan Ontologi, dan Kelompok Visual.

  • Sinkronisasi aset terperinci (tugas push dan pull mandiri):

    Menyediakan pasangan tugas push dan pull khusus untuk tujuh aset tertentu. Gunakan tugas mandiri saat mengembangkan, memperbarui, atau menguji komponen individual tanpa menyinkronkan atau menimpa bagian lain dari lingkungan Anda:

    • Playbook dan blok alur kerja: Push Playbook dan Pull Playbook

    • Konektor: Push Connectors dan Pull Connector

    • Integrasi: Push Integration dan Pull Integration

    • Tugas terjadwal: Push Job dan Pull Jobs

    • Pemetaan ontologi: Push Mappings dan Pull Mappings

    • Kelompok visual kustom: Push Custom Family dan Pull Custom Family

    • Kasus pengujian simulasi: Push Simulated Cases dan Pull Simulated Cases

Struktur direktori repositori

Menjalankan tugas Push Content awal (diperlukan sebelum menjalankan tugas pull apa pun di cabang baru atau yang dimigrasikan) akan membuat struktur direktori yang telah ditetapkan, file konfigurasi JSON, file metadata GitSync.json root, dan dokumentasi README.md yang dihasilkan di repositori Git jarak jauh Anda.

├── Connectors/
│   └── <Integration_Name>/
│       └── <Connector_Name>/
│           ├── <Connector_Name>.json
│           └── README.md
├── Integrations/
│   └── <Integration_Identifier>/
│       ├── Actions/
│       ├── Connectors/
│       ├── Dependencies/
│       ├── Jobs/
│       ├── Managers/
│       ├── Resources/
│       ├── Integration-<Integration_Identifier>.def
│       └── README.md
├── Jobs/
│   ├── <Job_Name>.json
│   └── README.md
├── Ontology/
│   ├── Mappings/
│   │   └── <Source_Name>/
│   │       ├── <Source_Name>_Records.json
│   │       ├── <Source_Name>_Rules.json
│   │       └── README.md
│   └── VisualFamilies/
│       └── <Family_Name>/
│           ├── <Family_Name>.json
│           ├── <Family_Name>.png
│           └── README.md
├── Playbooks/
│   ├── README.md
│   └── <Folder_Name>/
│       └── <Playbook_Or_Block_Name>/
│           ├── <Playbook_Or_Block_Name>.json
│           └── README.md
├── Settings/
│   ├── blacklists.json
│   ├── caseCloseCauses.json
│   ├── caseTitles.json
│   ├── customLists.json
│   ├── domains.json
│   ├── dynamicParameters.json
│   ├── emailTemplates.json
│   ├── environments.json
│   ├── integrationInstances.json
│   ├── logo.json
│   ├── networks.json
│   ├── slaDefinitions.json
│   ├── stages.json
│   └── tags.json
├── SimulatedCases/
│   └── <Case_Name>.case
├── GitSync.json
└── README.md

Tugas sinkronisasi tingkat instance

Tugas tingkat instance menyinkronkan kategori aset yang dipilih di seluruh instance Google SecOps.

Konten Push

Gunakan tugas Push Content untuk mengekspor kategori aset yang dipilih dari instance Google SecOps Anda dan meng-commit-nya ke cabang repositori Git yang dikonfigurasi. Selalu jalankan Push Content terlebih dahulu saat melakukan inisialisasi cabang baru.

Input tugas

Untuk mengonfigurasi tugas Push Content, gunakan parameter berikut:

Parameter Deskripsi
Commit

Wajib.

Pesan commit Git yang menjelaskan perubahan konten yang diekspor.

Commit Passwords

Opsional.

Jika dipilih, tugas akan mengekspor parameter jenis Password teks biasa untuk instance integrasi, konektor, dan tugas yang dikonfigurasi.

Parameter pemilihan aset:
Integrations, Playbooks, Jobs, Connectors, Simulated Cases, Integration Instances, Visual Families, Mappings, Environments, Dynamic Parameters, Logo, Case Tags, Case Stages, Case Title Settings, Case Close Reasons, Networks, Domains, Custom Lists, Email Templates, Blacklists, SLA Records

Opsional (Tombol Boolean).

Pilih setiap kategori aset yang ingin Anda sertakan dalam ekspor.

Repo URL

Opsional.

Mengganti URL repositori yang dikonfigurasi di instance integrasi.

Branch

Opsional.

Mengganti cabang repositori yang dikonfigurasi di instance integrasi.

Commit Author

Opsional.

Mengganti penulis commit yang dikonfigurasi di instance integrasi. Harus menggunakan format Name &lt;email@domain.com&gt;.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH yang dikonfigurasi di instance integrasi.

Output tugas

Tugas ini menulis file konfigurasi JSON dan ringkasan README.md ke cabang Git target di bawah hierarki direktori standar (/Playbooks, /Connectors, /Integrations, /Jobs, /Ontology/Mappings, /Ontology/VisualFamilies, /SimulatedCases, dan /Settings) dan menghasilkan log eksekusi ke konsol runner tugas. Integrasi kustom diekspor sebagai paket lengkap, sedangkan integrasi komersial hanya mengekspor skrip kustom atau modifikasi yang ditambahkan ke integrasi.

Tarik Konten

Gunakan tugas Pull Content untuk mengambil kategori konfigurasi yang dipilih dari cabang repositori Git yang dikonfigurasi dan menerapkannya ke platform Google SecOps.

Input tugas

Untuk mengonfigurasi tugas Pull Content, gunakan parameter berikut:

Parameter Deskripsi
Parameter pemilihan aset:
Integrations, Playbooks, Jobs, Connectors, Simulated Cases, Integration Instances, Visual Families, Mappings, Environments, Dynamic Parameters, Logo, Case Tags, Case Stages, Case Title Settings, Case Close Reasons, Networks, Domains, Custom Lists, Email Templates, Blacklists, SLA Records

Opsional (Tombol Boolean).

Pilih setiap kategori aset yang ingin Anda impor dari repositori ke lingkungan Anda.

Repo URL

Opsional.

Mengganti URL repositori yang dikonfigurasi di instance integrasi.

Branch

Opsional.

Mengganti cabang repositori yang dikonfigurasi di instance integrasi.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH yang dikonfigurasi di instance integrasi.

Output tugas

Tugas ini mengimpor definisi repositori yang dipilih ke dalam platform, membuat atau memperbarui instance integrasi, playbook, konektor, tugas, pemetaan ontologi, dan setelan, serta menghasilkan log eksekusi ke konsol runner tugas.

Tugas sinkronisasi mandiri

Tugas mandiri memungkinkan sinkronisasi terperinci dari aset tertentu tanpa memerlukan sinkronisasi repositori penuh.

Playbook Push

Gunakan tugas Push Playbook untuk mengekspor setiap playbook atau blok alur kerja yang dapat digunakan kembali ke Git.

Input tugas

Untuk mengonfigurasi tugas Push Playbook, gunakan parameter berikut:

Parameter Deskripsi
Commit

Wajib.

Pesan commit Git yang menjelaskan perubahan playbook.

Playbook Whitelist

Opsional.

Daftar playbook atau nama blok yang dipisahkan koma, peka huruf besar/kecil, dan sama persis untuk diekspor. Berikan Playbook Whitelist atau Folders Whitelist.

Folders Whitelist

Opsional.

Daftar nama folder (kategori) playbook yang dipisahkan koma. Semua playbook dan blok yang berada dalam folder ini akan diekspor.

Include Playbook Blocks

Opsional.

Jika dipilih, opsi ini akan mengekspor blok alur kerja yang dapat digunakan kembali bersama playbook yang dipilih, termasuk blok apa pun yang direferensikan sebagai langkah dalam playbook tersebut.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Commit Author

Opsional.

Mengganti penulis commit default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Readme Addon

Opsional.

Konten kustom ditambahkan ke README.md yang dihasilkan untuk semua playbook yang dikirim dalam operasi ini dan disimpan dalam file metadata GitSync.json root.

Mendukung sintaksis Markdown dan template Jinja.

Output tugas

Mengekspor playbook yang dipilih dan blok alur kerja yang disertakan ke /Playbooks/<Folder_Name>/<Playbook_Name>/ dan memperbarui /Playbooks/README.md.

Playbook Pull

Gunakan tugas Pull Playbook untuk mengimpor playbook atau blok tertentu dari Git.

Input tugas

Untuk mengonfigurasi tugas Pull Playbook, gunakan parameter berikut:

Parameter Deskripsi
Playbook Whitelist

Wajib.

Daftar nama playbook atau blok yang dipisahkan koma untuk diimpor dari repositori.

Include Playbook Blocks

Opsional.

Jika dipilih, otomatis mengimpor blok alur kerja yang dapat digunakan kembali yang direferensikan oleh playbook yang dipilih.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Output tugas

Mengimpor playbook dan blok yang ditentukan dari /Playbooks (atau /Blocks) ke platform, dengan menginstal blok yang direferensikan terlebih dahulu sebelum menginstal playbook induk.

Konektor Push

Gunakan tugas Push Connectors untuk mengekspor konfigurasi konektor ke Git.

Input tugas

Untuk mengonfigurasi tugas Push Connectors, gunakan parameter berikut:

Parameter Deskripsi
Connectors

Wajib.

Daftar nama tampilan konektor yang dipisahkan koma untuk diekspor.

Commit

Wajib.

Pesan commit Git.

Include Mappings

Opsional.

Jika dipilih, mengekspor data dan aturan pemetaan ontologi yang terkait dengan integrasi konektor ke /Ontology/Mappings.

Include Visual Families

Opsional.

Jika dipilih, mengekspor kelompok visual kustom yang terkait dengan data ontologi konektor ke /Ontology/VisualFamilies.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Commit Author

Opsional.

Mengganti penulis commit default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Readme Addon

Opsional.

Konten kustom ditambahkan ke README.md yang dihasilkan untuk semua konektor yang dikirim dalam operasi ini dan disimpan di GitSync.json.

Mendukung sintaksis Markdown dan template Jinja.

Output tugas

Mengekspor setelan dan jadwal konektor ke /Connectors/<Integration_Name>/<Connector_Name>/ (bersama dengan pemetaan ontologi dan kelompok visual terkait, jika dipilih).

Konektor Pull

Gunakan tugas Pull Connector untuk mengimpor konfigurasi konektor dari Git. Sebelum menjalankan tugas ini, pastikan integrasi dasar konektor sudah diinstal di lingkungan target.

Input tugas

Untuk mengonfigurasi tugas Pull Connector, gunakan parameter berikut:

Parameter Deskripsi
Connector Name

Wajib.

Nama tampilan konektor yang akan diimpor dari repositori.

Include Mappings

Opsional.

Jika dipilih, akan mengimpor pemetaan ontologi yang terkait dengan integrasi konektor.

Include Visual Families

Opsional.

Jika dipilih, opsi ini akan mengimpor kelompok visual kustom yang terkait dengan integrasi konektor.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Output tugas

Menginstal atau mengupdate konektor di lingkungan target (bersama dengan pemetaan atau keluarga visual terkait, jika dipilih).

Integrasi Push

Gunakan tugas Push Integration untuk mengekspor integrasi kustom atau skrip kustom yang ditambahkan ke integrasi komersial ke Git. Integrasi kustom diekspor sebagai paket integrasi lengkap, sedangkan integrasi komersial hanya mengekspor skrip kustom atau modifikasi yang ditambahkan ke integrasi.

Input tugas

Untuk mengonfigurasi tugas Push Integration, gunakan parameter berikut:

Parameter Deskripsi
Push Whitelist

Wajib.

Daftar ID integrasi yang dipisahkan koma untuk diekspor.

Commit

Wajib.

Pesan commit Git.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Commit Author

Opsional.

Mengganti penulis commit default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Readme Addon

Opsional.

Konten kustom ditambahkan ke README.md yang dihasilkan untuk semua integrasi yang dikirim dalam operasi ini dan disimpan di GitSync.json.

Mendukung sintaksis Markdown dan template Jinja.

Output tugas

Mengekspor definisi integrasi, skrip kustom (Actions/, Connectors/, Jobs/, Managers/), dependensi, dan dokumentasi README.md ke /Integrations/<Integration_Identifier>/.

Integrasi Pull

Gunakan tugas Pull Integration untuk mengimpor integrasi kustom atau skrip kustom untuk integrasi komersial dari Git. Untuk integrasi komersial, GitSync menginstal versi terbaru integrasi dari Content Hub dan menyimpan skrip kustom ke dalamnya.

Input tugas

Untuk mengonfigurasi tugas Pull Integration, gunakan parameter berikut:

Parameter Deskripsi
Install Whitelist

Wajib.

Daftar ID integrasi yang dipisahkan koma untuk diimpor dari repositori.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Output tugas

Menginstal paket integrasi kustom atau menginstal integrasi komersial dari Content Hub dan mengupdate skrip kustomnya di lingkungan target.

Tugas Push

Gunakan tugas Push Job untuk mengekspor konfigurasi tugas platform terjadwal ke Git.

Input tugas

Untuk mengonfigurasi tugas Push Job, gunakan parameter berikut:

Parameter Deskripsi
Job Whitelist

Wajib.

Daftar nama tugas terjadwal yang dipisahkan koma untuk diekspor.

Commit

Wajib.

Pesan commit Git.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Commit Author

Opsional.

Mengganti penulis commit default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Readme Addon

Opsional.

Konten kustom ditambahkan ke README.md yang dihasilkan untuk semua tugas yang dikirim dalam operasi ini dan disimpan di GitSync.json.

Mendukung sintaksis Markdown dan template Jinja.

Output tugas

Mengekspor parameter tugas dan interval jadwal ke /Jobs/<Job_Name>.json dan memperbarui /Jobs/README.md.

Tugas Pull

Gunakan tugas Pull Jobs untuk mengimpor tugas platform terjadwal dari Git.

Input tugas

Untuk mengonfigurasi tugas Pull Jobs, gunakan parameter berikut:

Parameter Deskripsi
Job Whitelist

Wajib.

Daftar nama tugas terjadwal yang dipisahkan koma untuk diimpor dari repositori.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Output tugas

Mengonfigurasi dan mendaftarkan tugas terjadwal yang ditentukan di penjadwal tugas platform.

Pemetaan Push

Gunakan tugas Push Mappings untuk mengekspor data dan aturan pemetaan peristiwa ontologi untuk sumber tertentu ke Git.

Input tugas

Untuk mengonfigurasi tugas Push Mappings, gunakan parameter berikut:

Parameter Deskripsi
Source

Wajib.

Sumber ontologi (nama integrasi) yang data dan aturan pemetaannya ingin Anda ekspor.

Commit

Wajib.

Pesan commit Git.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Commit Author

Opsional.

Mengganti penulis commit default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Readme Addon

Opsional.

Konten kustom ditambahkan ke README.md yang dihasilkan untuk semua pemetaan yang dikirim dalam operasi ini dan disimpan di GitSync.json.

Mendukung sintaksis Markdown dan template Jinja.

Output tugas

Menulis data ontologi (<Source>_Records.json), aturan pemetaan (<Source>_Rules.json), dan README.md ke /Ontology/Mappings/<Source>/.

Pemetaan Pull

Gunakan tugas Pull Mappings untuk mengimpor data dan aturan pemetaan ontologi untuk sumber tertentu dari Git.

Input tugas

Untuk mengonfigurasi tugas Pull Mappings, gunakan parameter berikut:

Parameter Deskripsi
Source

Wajib.

Sumber ontologi (nama integrasi) yang data dan aturan pemetaannya ingin Anda impor.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Output tugas

Mendaftarkan aturan pemetaan ontologi dan penetapan kelompok visual di setelan ontologi platform. Pemetaan akan muncul di tabel Status Ontologi setelah peristiwa yang sesuai diserap.

Mengirim Kelompok Kustom

Gunakan tugas Push Custom Family untuk mengekspor definisi dan ikon kelompok visual kustom ke Git.

Input tugas

Untuk mengonfigurasi tugas Push Custom Family, gunakan parameter berikut:

Parameter Deskripsi
Family Name

Wajib.

Daftar nama kelompok visual kustom yang dipisahkan koma untuk diekspor.

Commit

Wajib.

Pesan commit Git.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Commit Author

Opsional.

Mengganti penulis commit default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Readme Addon

Opsional.

Konten kustom ditambahkan ke README.md yang dihasilkan untuk semua keluarga visual kustom yang dikirim dalam operasi ini dan disimpan di GitSync.json.

Mendukung sintaksis Markdown dan template Jinja.

Output tugas

Mengekspor definisi kelompok visual (<Family_Name>.json), file gambar ikon (<Family_Name>.png), dan README.md ke /Ontology/VisualFamilies/<Family_Name>/.

Kelompok Kustom Pull

Gunakan tugas Pull Custom Family untuk mengimpor definisi dan ikon kelompok visual kustom dari Git.

Input tugas

Untuk mengonfigurasi tugas Pull Custom Family, gunakan parameter berikut:

Parameter Deskripsi
Family Name

Wajib.

Nama persis kelompok visual kustom yang akan diimpor.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Output tugas

Mengimpor definisi dan ikon kelompok visual kustom ke setelan ontologi platform.

Mengirim Kasus Simulasi

Gunakan tugas Push Simulated Cases untuk mengekspor kasus pengujian simulasi ke Git.

Input tugas

Untuk mengonfigurasi tugas Push Simulated Cases, gunakan parameter berikut:

Parameter Deskripsi
Simulated Cases

Wajib.

Daftar nama kasus simulasi yang dipisahkan koma untuk diekspor.

Commit

Wajib.

Pesan commit Git.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Commit Author

Opsional.

Mengganti penulis commit default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Output tugas

Mengekspor kasus yang disimulasikan sebagai file .case ke /SimulatedCases/<Case_Name>.case.

Mengambil Kasus Simulasi

Gunakan tugas Pull Simulated Cases untuk mengimpor kasus pengujian simulasi dari Git.

Input tugas

Untuk mengonfigurasi tugas Pull Simulated Cases, gunakan parameter berikut:

Parameter Deskripsi
Simulated Cases

Wajib.

Daftar nama kasus simulasi yang dipisahkan koma untuk diimpor dari repositori.

Repo URL

Opsional.

Mengganti URL repositori default.

Branch

Opsional.

Mengganti cabang default.

Git Server Fingerprint

Opsional.

Mengganti sidik jari host SSH default.

Output tugas

Mengimpor kasus simulasi yang ditentukan ke dalam katalog kasus simulasi platform.

Pemecahan masalah

Tabel berikut memberikan langkah-langkah perbaikan untuk error sinkronisasi umum:

Pesan error yang ditemui Penyebab operasional Prosedur perbaikan
Kegagalan AttributeError: 'OnePlatformSoarApi' object has no attribute 'update_ide_item' atau sinkronisasi pada GitSync versi 53.0 Menjalankan paket GitSync regresif versi 53.0, yang berisi masalah sinkronisasi umum dengan item IDE kustom dan skema JSON yang dimodifikasi. Kembalikan GitSync ke versi 52.0 atau upgrade ke versi 54.0 di Content Hub, dan pastikan parameter Branch mengarah ke cabang repositori pra-v53 Anda. Untuk mengetahui petunjuk langkah demi langkah, lihat Rollback versi 53.0 dan kompatibilitas versi 52.0/54.0.
Permission denied (publickey) atau Host key verification failed (atau Authentication failed for 'https://...') Kegagalan autentikasi Git yang disebabkan oleh format kredensial yang tidak valid, tidak adanya izin tulis kunci deployment, atau sidik jari host yang tidak cocok.
  • Autentikasi SSH: Pastikan kunci SSH pribadi Anda dikonversi menjadi string base64 satu baris tanpa baris baru atau spasi kosong di akhir. Pastikan kunci publik yang sesuai terdaftar di repositori Git Anda dengan akses tulis.
  • Sidik jari host: Jika penyematan sidik jari host diaktifkan, verifikasi string sidik jari menggunakan ssh-keyscan -t rsa <hostname> dan perbarui parameter Sidik Jari Server Git.
  • Autentikasi HTTPS: Pastikan Personal Access Token (PAT) Anda belum habis masa berlakunya dan memiliki cakupan tulis repositori.
403 Forbidden: Insufficient permissions to modify playbook (atau Failed to push playbook: Access denied) Playbook target memiliki izin akses default yang dibatasi (seperti Dapat Melihat), dan peran SOC Administrator belum diberi izin Dapat Mengedit di sistem sumber. Di Google SecOps, buka Playbooks, pilih playbook yang terpengaruh, buka setelan izinnya, dan tambahkan peran SOC Administrator dengan izin Can Edit (atau konfigurasikan parameter opsional SOAR Username dan SOAR Password pada instance integrasi GitSync). Untuk mengetahui langkah-langkah mendetail, lihat Mengonfigurasi izin playbook.
Tugas Tarik Konten atau Tarik Integrasi akan habis waktu setelah 5 menit Menginstal beberapa integrasi komersial dari Content Hub selama satu operasi pull melebihi waktu tunggu eksekusi tugas 5 menit. Instal integrasi komersial yang diperlukan secara manual dari Hub Konten sebelum menjalankan Tarik Konten, atau jalankan ulang tugas Tarik Konten untuk melanjutkan mengimpor aset yang tersisa.
General error performing Job Pull Content (atau 400 Bad Request / 404 Not Found saat mengambil dari cabang repositori) Mencoba mengambil dari cabang repositori yang tidak diinisialisasi atau cabang yang file JSON-nya diekspor menggunakan skema GitSync versi 53.0 yang tidak kompatibel.
  • Jika cabang diubah menggunakan GitSync versi 53.0, alihkan parameter Branch kembali ke cabang repositori pra-v53 atau pulihkan cadangan cabang pra-v53 Anda (lihat Rollback versi 53.0 dan kompatibilitas versi 52.0/54.0).
  • Jika Anda menyiapkan cabang baru di versi 52.0 atau 54.0, jalankan tugas Push Content penuh terlebih dahulu untuk mengisi cabang sebelum menjalankan tugas pull apa pun.
Playbook '<Playbook_Name>' is assigned to environment(s) that don't exist Playbook atau blok yang diimpor ditetapkan ke lingkungan atau grup lingkungan yang belum dibuat di instance tujuan. Jalankan Pull Content dengan memilih opsi Environments terlebih dahulu, atau buat lingkungan yang tidak ada secara manual di Settings > Environments pada instance tujuan sebelum mengambil playbook.
Commit Author parameter must be in the following format: Name <example@gmail.com> Parameter Commit Author dalam instance integrasi atau konfigurasi tugas tidak memiliki alamat email dalam tanda kurung sudut. Perbarui parameter Commit Author agar sesuai dengan format yang diperlukan: Name <email@domain.com> (misalnya, GitSync <gitsync@example.com>).
400 Bad Request atau 409 Conflict saat mengimpor pemetaan ontologi Aturan pemetaan peristiwa di repositori bertentangan dengan aturan ontologi platform yang ada, atau diekspor menggunakan versi GitSync yang tidak kompatibel. Jalankan tugas Push Mappings baru menggunakan GitSync versi 54.0 atau 52.0 untuk mengekspor ulang definisi pemetaan, atau selesaikan aturan pemetaan peristiwa duplikat di Settings > Ontology > Mapping Rules sebelum menjalankan ulang tugas.

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