Integrasikan Cloud Identity dengan Google SecOps
Dokumen ini menjelaskan cara mengintegrasikan Cloud Identity dengan Google Security Operations.
Kasus penggunaan
Integrasi Cloud Identity menggunakan kemampuan Google SecOps untuk mendukung kasus penggunaan berikut:
- Kelola kontrol akses: Buat dan perbarui konfigurasi IAM langsung dari playbook investigasi.
- Definisi kebijakan audit: Daftar informasi tentang kebijakan yang tersedia untuk melacak perubahan akses.
- Kelola atribut daftar detektor: Tambahkan entitas dan indikator ke daftar URL detektor tertentu untuk pemantauan.
Sebelum memulai
Sebelum Anda mengkonfigurasi integrasi Cloud Identity di platform Google SecOps, pastikan Anda telah mengkonfigurasi lingkungan Anda menggunakan langkah-langkah berikut:
- Membuat akun layanan:
- Delegasikan wewenang di seluruh domain ke akun layanan Anda
- Aktifkan API yang diperlukan untuk project Anda.
- Pilih dan konfigurasi salah satu metode autentikasi berikut:
- Opsi 1: Kunci JSON: Metode ini bergantung pada file kunci rahasia statis yang berumur panjang. Gunakan metode ini hanya jika Workload Identity tidak tersedia di lingkungan Anda.
- Opsi 2: Identitas Beban Kerja (direkomendasikan): Metode ini menggunakan token akses sementara berumur pendek dengan menggunakan peniruan akun layanan, sehingga menghilangkan kebutuhan untuk menyimpan rahasia apa pun.
Membuat akun layanan
Untuk membuat akun layanan bagi integrasi, selesaikan langkah-langkah berikut:
Di konsol Google Cloud , buka IAM & Admin > Service Accounts, lalu pilih project Anda.
Klik Create service account.
Berikan nama dan deskripsi, lalu klik Selesai untuk membuat akun.
Berikan wewenang penuh domain kepada akun layanan Anda.
- Dari konsol Google Admin domain Anda, buka Menu utama > Keamanan > Kontrol data dan akses > Kontrol API.
- Di panel Delegasi tingkat domain, pilih Kelola Delegasi Tingkat Domain.
- Klik Tambahkan baru.
- Di kolom Client ID, masukkan client ID yang diperoleh dari bagian Membuat akun layanan.
Di kolom OAuth Scopes, masukkan daftar cakupan yang dipisahkan koma berikut yang diperlukan untuk aplikasi Anda:
https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/cloud-identity.policies, https://www.googleapis.com/auth/admin.directory.orgunitKlik Otorisasi.
Akun layanan kini diizinkan untuk mengakses data di seluruh domain Anda menggunakan cakupan yang ditentukan.
Aktifkan API yang diperlukan untuk project Anda
Di konsol Google Cloud , buka APIs & Services.
Klik Enable APIs and Services.
Telusuri dan aktifkan API berikut untuk project Anda:
- Admin SDK API (
admin.googleapis.com) - Cloud Identity API (
cloudidentity.googleapis.com)
- Admin SDK API (
Mengonfigurasi kunci JSON
Anda dapat mengautentikasi integrasi menggunakan file kunci JSON statis atau Workload Identity Federation. Untuk memaksimalkan keamanan lingkungan Anda, gunakan metode Workload Identity. Gunakan metode kunci JSON hanya jika Workload Identity tidak didukung di infrastruktur Anda, karena kunci statis memerlukan rotasi manual dan meningkatkan risiko eksposur kredensial.
Untuk membuat file kunci JSON yang diperlukan untuk mengautentikasi integrasi, selesaikan langkah-langkah berikut:
Di konsol Google Cloud , buka IAM & Admin > Service Accounts, lalu pilih akun layanan yang Anda buat.
Buka tab Kunci.
Klik Add key.
Pilih Buat kunci baru.
Untuk jenis kunci, pilih JSON, lalu klik Buat. File JSON akan didownload ke komputer Anda.
Salin seluruh konten file ini dan tempelkan ke
User's Service Account JSONselama konfigurasi integrasi.
Konfigurasi izin Cloud Identity
Gunakan prosedur berikut untuk menentukan hak akses administratif yang dibutuhkan integrasi untuk mengelola sumber daya organisasi:
- Di konsol Admin Google, bukaAkun> Peran Admin.
- Klik Buat peran baru.
- Berikan nama untuk peran kustom baru dan klik Lanjutkan.
- Pada halaman Pilih Hak Akses, masuk ke bagian hak akses Admin API.
- Di bawah Hak akses API Admin, pilih hak akses berikut:
Organization UnitsUsersGroups
- Klik Lanjutkan.
- Untuk membuat peran khusus baru, klik Buat Peran.
Menetapkan peran kustom kepada pengguna
Gunakan prosedur berikut untuk menetapkan peran ke akun pengguna, sehingga integrasi dapat melakukan tindakan atas nama Anda:
- Untuk membuat pengguna baru, bukaDirektori> Pengguna halaman.
- Tambahkan pengguna baru yang terkait dengan akun layanan.
- Buka pengaturan untuk pengguna yang baru dibuat. Tab akun pengguna terbuka.
- Klik Peran dan hak istimewa Admin.
- Klik edit Edit.
- Pilih peran khusus yang telah Anda buat.
- Untuk peran yang dipilih, alihkan sakelar ke Ditugaskan.
Mengonfigurasi kredensial Workload Identity
Pilih metode ini atau metode kunci JSON untuk mengautentikasi integrasi. Workload Identity adalah pendekatan yang direkomendasikan dan lebih aman karena menggunakan token akses sementara berumur pendek dengan memanfaatkan peniruan akun layanan, sehingga meminimalkan risiko paparan kredensial rahasia berumur panjang.
Mengidentifikasi identitas instance yang unik
Untuk menggunakan Workload Identity, Anda harus memberikan izin kepada instance Google SecOps Anda untuk meniru akun layanan Anda. Langkah ini memungkinkan instance untuk mengakses sumber daya Google Cloud secara aman.
- Di Google SecOps, buka Content Hub > Response Integrations.
- Pilih integrasi yang sedang Anda konfigurasi, dan masukkan email akun layanan Anda di kolom
Workload Identity Email. - Masukkan email yang ingin Anda gunakan untuk integrasi di kolom
Delegated Email. - Klik Simpan > Uji. Pengujian diperkirakan akan gagal.
Klik close_small di sebelah kanan Uji dan cari pesan kesalahan untuk email identitas yang diawali dengan
gke-init-python@...atausoar-python@....Salin alamat email unik ini dan tempelkan ke
Workload Identity Emailselama konfigurasi integrasi.
Berikan otorisasi pada identitas instance di Google Cloud.
Setelah Anda mendapatkan identitas unik untuk instance Google SecOps Anda, Anda harus mengotorisasinya untuk mengakses sumber daya Google Cloud Anda. Langkah ini memungkinkan peniruan akun layanan, sehingga platform dapat menghasilkan token berumur pendek dan bertindak atas nama Anda tanpa memerlukan kunci statis.
- Di konsol Google Cloud , buka IAM & Admin > Service Accounts.
- Pilih akun layanan target dan buka Izin > Beri Akses.
- Tempel alamat email unik ke kolom New principals.
- Tetapkan peran Service Account Token Creator
(
roles/iam.serviceAccountTokenCreator).
Parameter integrasi
Integrasi Cloud Identity memerlukan parameter berikut:
| Parameter | Deskripsi |
|---|---|
Service Account JSON File Content |
Opsional. Konten file JSON kunci akun layanan. Anda dapat mengonfigurasi parameter ini atau Email Workload Identity. Untuk menggunakan metode ini, tempelkan seluruh string JSON dari file kunci yang diunduh selama pembuatan akun layanan. |
Workload Identity Email |
Opsional. Alamat email klien akun layanan Anda. Anda dapat mengkonfigurasi parameter ini atau Konten File JSON Akun Layanan. Untuk menggunakan metode ini untuk peniruan akun layanan, Anda harus memberikan peran Pembuat Token Akun Layanan ke akun layanan Google SecOps Anda. |
Delegated Email |
Wajib. Alamat email yang digunakan integrasi untuk melakukan tindakan. Pastikan akun ini memiliki izin delegasi yang sesuai di lingkungan Anda untuk menjalankan tugas integrasi yang diperlukan. |
Verify SSL |
Opsional. Jika dipilih, integrasi ini akan memvalidasi sertifikat SSL saat terhubung ke server Cloud Identity. 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.
Ping
Gunakan tindakan Ping untuk menguji konektivitas ke Cloud Identity.
Tindakan ini tidak dijalankan pada entity Google SecOps.
Input tindakan
Tidak ada parameter input yang diperlukan untuk tindakan ini.
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 |
|---|---|
|
Tindakan berhasil. |
Failed to connect to the Cloud Identity server! Error is ERROR_REASON |
Tindakan gagal. Periksa koneksi ke server, parameter input, atau kredensial. |
Hasil skrip
Tabel berikut mencantumkan nilai untuk output hasil skrip saat menggunakan tindakan Ping:
| Nama hasil skrip | Nilai |
|---|---|
is_success |
true atau false |
Menambahkan Entitas ke Daftar URL Pendeteksi
Gunakan tindakan Tambahkan Entitas ke Daftar URL Pendeteksi untuk menambahkan entitas ke daftar deteksi Kebijakan Cloud Identity.
Tindakan ini berjalan di entity Google SecOps berikut:
- URL
- Domain
Input tindakan
Tindakan Tambahkan Entitas ke Daftar URL Pendeteksi memerlukan parameter berikut:
| Parameter | Deskripsi |
|---|---|
Detector Policy ID |
Wajib. ID unik kebijakan detektor yang akan diperbarui. |
URL |
Opsional. Daftar URL yang dipisahkan koma untuk ditambahkan ke daftar pendeteksi. |
Domain |
Opsional. Daftar domain yang dipisahkan koma untuk ditambahkan ke daftar detektor. |
Output tindakan
Tindakan Tambahkan Entitas ke Daftar URL Detektor 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 menunjukkan output hasil JSON yang diterima saat menggunakan tindakan Tambahkan Entitas ke Daftar URL Detektor:
{
"type": "ADMIN",
"customer": "customers/<CUSTOMER_ID>",
"policyQuery": {
"query": "entity.org_units.exists(org_unit, org_unit.org_unit_id == orgUnitId('<ORG_UNIT_ID>'))",
"orgUnit": "orgUnits/<ORG_UNIT_ID>"
},
"setting": {
"type": "settings/detector.url_list",
"value": {
"displayName": "test_url_list_detector",
"description": "test_url_list_detector desc",
"urlList": {
"urls": [
"[http://example.com](http://example.com)",
"example.org",
"bad_entity.com"
]
}
}
}
}
Pesan output
Tindakan Tambahkan Entitas ke Daftar URL Detektor dapat mengembalikan pesan keluaran berikut:
| Pesan output | Deskripsi pesan |
|---|---|
|
Tindakan berhasil. |
Error executing action "Add Entity To Detector URL List". Reason: ERROR_REASON |
Tindakan gagal. Periksa koneksi ke server, parameter input, atau kredensial. |
Hasil skrip
Tabel berikut mencantumkan nilai untuk output hasil skrip saat menggunakan tindakan Tambahkan Entitas ke Daftar URL Detektor:
| Nama hasil skrip | Nilai |
|---|---|
is_success |
true atau false |
Kebijakan Dibuat
Gunakan tindakan Buat Kebijakan untuk membuat entri kebijakan baru di dalam Cloud Identity.
Tindakan ini tidak dijalankan pada entity Google SecOps.
Input tindakan
Tindakan Buat Kebijakan memerlukan parameter berikut:
| Parameter | Deskripsi |
|---|---|
Policy Entry |
Wajib. Objek JSON yang mewakili konfigurasi entri kebijakan yang akan ditambahkan. |
Contoh konfigurasi kebijakan
Konfigurasi contoh berikut menunjukkan cara menyusun parameter Policy Entry:
Contoh 1: Detektor Daftar URL
{
"type": "ADMIN",
"customer": "customers/<CUSTOMER_ID>",
"policyQuery": {
"orgUnit": "orgUnits/<ORG_UNIT_ID>",
"sortOrder": 1
},
"setting": {
"type": "settings/detector.url_list",
"value": {
"displayName": "BlockUrlDetector",
"description": "Blocked urls for security reasons",
"urlList": {
"urls": [
"www.medium.com",
"medium.com",
"wikipedia.org"
]
}
}
}
}
Contoh 2: Aturan DLP
{
"type": "ADMIN",
"customer": "customers/<CUSTOMER_ID>",
"policyQuery": {
"query": "entity.org_units.exists(org_unit, org_unit.org_unit_id == orgUnitId('<ORG_UNIT_ID>'))",
"orgUnit": "orgUnits/<ORG_UNIT_ID>",
"sortOrder": 1
},
"setting": {
"type": "settings/rule.dlp",
"value": {
"display_name": "TestRule",
"description": "GoogleSecOps URL Blocklist Rule. Keeps state of blocked URLs. Manual modification is not advised",
"triggers": [
"google.workspace.chrome.url.v1.navigation"
],
"condition": {
"contentCondition": "url.matches_url_list('policies/<DETECTOR_POLICY_ID>')"
},
"action": {
"chromeAction": {
"blockContent": {
"actionParams": {
"customEndUserMessage": {
"unsafeHtmlMessageBody": "(EQ)🚫 BlockedAccess denied."
}
}
}
}
},
"state": "ACTIVE"
}
}
}
Output tindakan
Tindakan Buat Kebijakan memberikan keluaran sebagai 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 menunjukkan output hasil JSON yang diterima saat menggunakan tindakan Buat Kebijakan:
{
"type": "ADMIN",
"customer": "customers/<CUSTOMER_ID>",
"policyQuery": {
"query": "entity.org_units.exists(org_unit, org_unit.org_unit_id == orgUnitId('<ORG_UNIT_ID>'))",
"orgUnit": "orgUnits/<ORG_UNIT_ID>"
},
"setting": {
"type": "settings/rule.dlp",
"value": {
"display_name": "test_create_rule",
"triggers": [
"google.workspace.chrome.file.v1.download"
],
"state": "ACTIVE",
"action": {
"chromeAction": {
"warnUser": {}
}
}
}
}
}
Pesan output
Tindakan Buat Kebijakan dapat mengembalikan pesan keluaran berikut:
| Pesan output | Deskripsi pesan |
|---|---|
|
Tindakan berhasil. |
Error executing action "Create Policy". Reason: ERROR_REASON |
Tindakan gagal. Periksa koneksi ke server, parameter input, atau kredensial. |
Hasil skrip
Tabel berikut mencantumkan nilai untuk output hasil skrip saat menggunakan tindakan Buat Kebijakan:
| Nama hasil skrip | Nilai |
|---|---|
is_success |
true atau false |
Mencantumkan Kebijakan
Gunakan tindakan Daftar Kebijakan untuk mengambil daftar kebijakan yang ada dari Cloud Identity.
Tindakan ini tidak dijalankan pada entity Google SecOps.
Input tindakan
Tindakan Daftar Kebijakan memerlukan parameter berikut:
| Parameter | Deskripsi |
|---|---|
Organization Unit Name |
Wajib. Nama unit organisasi tempat kebijakan akan dicantumkan. |
Policy Type Filter |
Opsional. Jenis kebijakan yang digunakan untuk memfilter daftar. Nilai yang mungkin: Nilai defaultnya adalah |
Settings Type Filter |
Opsional. Pola ekspresi reguler yang digunakan untuk memfilter kebijakan berdasarkan jenis pengaturannya. Filter ini diterapkan langsung pada permintaan API. |
Settings Display Name Filter |
Opsional. Daftar nama tampilan yang dipisahkan koma, digunakan untuk memfilter pengaturan kebijakan. |
Max Results To Return |
Opsional. Jumlah maksimum hasil yang akan dikembalikan untuk eksekusi tindakan. Nilai defaultnya adalah |
Output tindakan
Tindakan List Policies memberikan keluaran sebagai 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 menunjukkan output hasil JSON yang diterima saat menggunakan tindakan List Policies:
[
{
"name": "policies/123",
"customer": "customers/123",
"type": "ADMIN",
"policy_query": {
"query": "entity.org_units.exists(org_unit, org_unit.org_unit_id == orgUnitId('12345'))",
"orgUnit": "orgUnits/12345",
"sortOrder": 1
},
"setting": {
"type": "settings/rule.dlp",
"value": {
"display_name": "Test DLP Rule"
}
}
}
]
Pesan output
Tindakan List Policies dapat mengembalikan pesan keluaran berikut:
| Pesan output | Deskripsi pesan |
|---|---|
|
|
Tindakan berhasil. |
Error executing action "List Policies". Reason: ERROR_REASON |
Tindakan gagal. Periksa koneksi ke server, parameter input, atau kredensial. |
Hasil skrip
Tabel berikut mencantumkan nilai untuk output hasil skrip saat menggunakan tindakan List Policies:
| Nama hasil skrip | Nilai |
|---|---|
is_success |
true atau false |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.