Halaman ini menjelaskan cara mengaktifkan notifikasi Security Command Center API.
Notifikasi mengirim temuan dan pembaruan temuan ke topik Pub/Sub dalam hitungan menit. Notifikasi Security Command Center API menyertakan semua informasi temuan yang ditampilkan oleh Security Command Center di konsol Google Cloud.
Anda dapat menghubungkan notifikasi Security Command Center di Pub/Sub langsung ke tindakan fungsi Cloud Run. Misalnya, fungsi yang dapat membantu respons, pengayaan, dan perbaikan, lihat repositori open source Security Command Center untuk kode fungsi Cloud Run. Repositori ini berisi solusi untuk membantu Anda mengambil tindakan otomatis pada penemuan keamanan.
Atau, Anda dapat mengekspor temuan ke BigQuery, atau menyiapkan Ekspor Berkelanjutan untuk Pub/Sub di Google Cloud Console.
Sebelum memulai
-
Untuk mendapatkan izin yang diperlukan guna menyiapkan dan mengonfigurasi notifikasi Security Command Center API, minta administrator untuk memberi Anda peran IAM berikut:
-
Security Center Admin (
roles/securitycenter.admin
) di organisasi atau project tempat Security Command Center diaktifkan -
Project IAM Admin (
roles/resourcemanager.projectIamAdmin
) pada project tempat Anda akan membuat topik Pub/Sub
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
-
Security Center Admin (
-
Aktifkan API Security Command Center:
gcloud services enable securitycenter.googleapis.com
Notifikasi dan residensi data
Jika aset data
diaktifkan untuk Security Command Center, konfigurasi yang menentukan
ekspor berkelanjutan ke
resource Pub/Sub—notificationConfig
—tunduk
pada kontrol aset data dan disimpan di
lokasi Security Command Center Anda.
Untuk mengekspor temuan di lokasi Security Command Center ke Pub/Sub, Anda harus mengonfigurasi ekspor berkelanjutan di lokasi Security Command Center yang sama dengan temuan.
Karena filter yang digunakan dalam ekspor berkelanjutan dapat berisi data yang tunduk pada kontrol tempat tinggal, pastikan Anda menentukan lokasi yang benar sebelum membuatnya. Security Command Center tidak membatasi lokasi tempat Anda membuat ekspor.
Ekspor berkelanjutan hanya disimpan di lokasi tempat ekspor dibuat dan tidak dapat dilihat atau diedit di lokasi lain.
Setelah membuat ekspor berkelanjutan, Anda tidak dapat mengubah lokasinya. Untuk mengubah lokasi, Anda harus menghapus ekspor berkelanjutan dan membuatnya ulang di lokasi baru.
Untuk mengambil ekspor berkelanjutan menggunakan panggilan API,
Anda harus menentukan lokasi dalam nama resource lengkap
notificationConfig
. Contoh:
GET https://securitycenter.googleapis.com/v2/organizations/123/locations/eu/notificationConfigs/my-pubsub-export-01
Demikian pula, untuk mengambil ekspor berkelanjutan menggunakan gcloud CLI, Anda harus menentukan lokasi menggunakan flag --location
. Contoh:
gcloud scc notifications describe myContinuousExport --organization=123 \ --location=us
Menyiapkan topik Pub/Sub
Dalam tugas ini, Anda akan membuat dan berlangganan topik Pub/Sub yang ingin Anda kirimi notifikasi.
Langkah 1: Siapkan Pub/Sub
Untuk menyiapkan dan berlangganan topik Pub/Sub, lakukan hal berikut:
Buka konsol Google Cloud.
Pilih project tempat Anda mengaktifkan Security Command Center API.
Klik Aktifkan Cloud Shell.
Opsional: Untuk membuat topik Pub/Sub baru, jalankan perintah berikut:
gcloud pubsub topics create TOPIC_ID
Ganti
TOPIC_ID
dengan nama topik.Buat langganan ke topik:
gcloud pubsub subscriptions create SUBSCRIPTION_ID --topic=TOPIC_ID
Ganti kode berikut:
SUBSCRIPTION_ID
: ID langgananTOPIC_ID
: ID topik
Untuk mempelajari lebih lanjut cara menyiapkan Pub/Sub, lihat Mengelola topik dan langganan.
Langkah 2: Berikan peran pada topik Pub/Sub
Untuk membuat NotificationConfig
, Anda memerlukan peran Admin Pub/Sub
(roles/pubsub.admin
) di topik Pub/Sub tempat Anda membuat
langganan.
Untuk memberikan peran ini, lakukan hal berikut:
Buka konsol Google Cloud.
Pilih project tempat Anda mengaktifkan Security Command Center API.
Klik Aktifkan Cloud Shell.
Berikan peran yang diperlukan ke Akun Google Anda di topik Pub/Sub:
gcloud pubsub topics add-iam-policy-binding \ projects/PUBSUB_PROJECT/topics/TOPIC_ID \ --member="user:GOOGLE_ACCOUNT" \ --role="roles/pubsub.admin"
Ganti kode berikut:
PUBSUB_PROJECT
: project Google Cloud yang berisi topik Pub/Sub AndaTOPIC_ID
: ID topikGOOGLE_ACCOUNT
: alamat email untuk Akun Google Anda
Membuat NotificationConfig
Sebelum membuat NotificationConfig
, perhatikan bahwa setiap organisasi dapat memiliki
jumlah file NotificationConfig
yang terbatas. Untuk mengetahui informasi selengkapnya, lihat
Kuota dan batas.
NotificationConfig
menyertakan kolom filter
yang membatasi notifikasi ke peristiwa yang berguna. Kolom ini menerima semua filter yang tersedia di
metode findings.list
Security Command Center API.
Saat membuat NotificationConfig
, Anda menentukan induk untuk
NotificationConfig
dari hierarki resource Google Cloud, baik
organisasi, folder, maupun project. Jika perlu mengambil, memperbarui, atau menghapus NotificationConfig
nanti, Anda harus menyertakan ID numerik organisasi, folder, atau project induk saat mereferensikannya.
Di konsol Google Cloud, beberapa resource NotificationConfig
mungkin memiliki label Lama, yang menunjukkan bahwa resource tersebut dibuat dengan Security Command Center API v1. Anda dapat mengelola resource
NotificationConfig
ini dengan konsol Google Cloud; gcloud CLI; Security Command Center API v1; atau library klien v1 untuk Security Command Center.
Untuk mengelola resource NotificationConfig
ini dengan gcloud CLI, Anda tidak boleh menentukan lokasi saat menjalankan perintah gcloud CLI.
Untuk membuat NotificationConfig
menggunakan bahasa atau platform pilihan
Anda:
gcloud
gcloud scc notifications create NOTIFICATION_NAME \ --PARENT=PARENT_ID \ --location=LOCATION --description="NOTIFICATION_DESCRIPTION" \ --pubsub-topic=PUBSUB_TOPIC \ --filter="FILTER"
Ganti kode berikut:
NOTIFICATION_NAME
: nama notifikasi. Harus antara 1 dan 128 karakter dan hanya boleh berisi karakter alfanumerik, garis bawah, atau tanda hubung.PARENT
: cakupan dalam hierarki resource tempat notifikasi berlaku,organization
,folder
, atauproject
.PARENT_ID
: ID organisasi induk, folder, atau project, yang ditentukan dalam formatorganizations/123
,folders/456
, atauprojects/789
.LOCATION
: jika aset data diaktifkan, lokasi Security Command Center tempat data akan disimpan; jika aset data tidak diaktifkan, gunakan nilaiglobal
.NOTIFICATION_DESCRIPTION
: deskripsi notifikasi yang tidak lebih dari 1.024 karakter.PUBSUB_TOPIC
: Topik Pub/Sub yang akan menerima notifikasi. Formatnya adalahprojects/PROJECT_ID/topics/TOPIC
.FILTER
: ekspresi yang Anda tentukan untuk memilih temuan yang dikirim ke Pub/Sub. Contoh,state=\"ACTIVE\"
.
Go
Java
Node.js
Python
Notifikasi kini dipublikasikan ke topik Pub/Sub yang Anda tentukan.
Untuk memublikasikan notifikasi, akun layanan akan dibuat untuk Anda dalam bentuk
service-org-ORGANIZATION_ID@gcp-sa-scc-notification.
.
Akun layanan ini dibuat saat Anda membuat NotificationConfig
pertama dan secara otomatis diberi peran securitycenter.notificationServiceAgent
pada kebijakan IAM untuk PUBSUB_TOPIC saat membuat konfigurasi notifikasi. Peran akun layanan ini diperlukan agar notifikasi dapat berfungsi.
Memberi akses perimeter di Kontrol Layanan VPC
Jika menggunakan Kontrol Layanan VPC dan topik Pub/Sub Anda adalah bagian dari project di dalam perimeter layanan, Anda harus memberikan akses ke project untuk membuat notifikasi.
Untuk memberikan akses ke project, buat aturan masuk dan keluar untuk akun utama dan project yang digunakan untuk membuat notifikasi. Aturan ini mengizinkan akses ke resource yang dilindungi dan memungkinkan Pub/Sub memverifikasi bahwa pengguna memiliki izin setIamPolicy
di topik Pub/Sub.
Sebelum membuat NotificationConfig
Sebelum menyelesaikan langkah-langkah di Membuat NotificationConfig, lakukan hal berikut:
Buka halaman VPC Service Controls di konsol Google Cloud.
Jika perlu, pilih organisasi Anda.
Klik nama perimeter layanan yang ingin diubah.
Untuk menemukan perimeter layanan yang perlu diubah, Anda dapat memeriksa log untuk menemukan entri yang menunjukkan pelanggaran
RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER
. Dalam entri tersebut, periksa kolomservicePerimeterName
:accessPolicies/ACCESS_POLICY_ID/servicePerimeters/SERVICE_PERIMETER_NAME
.Klik Edit Perimeter.
Di menu navigasi, klik Ingress Policy.
Untuk mengonfigurasi aturan masuk bagi pengguna atau akun layanan, gunakan parameter berikut:
- Atribut FROM klien API:
- Di menu drop-down Sumber, pilih Semua Sumber.
- Di menu drop-down Identitas, pilih Identitas yang dipilih.
- Klik Select, lalu masukkan akun utama yang digunakan untuk memanggil Security Command Center API.
- Atribut TO layanan/resource Google Cloud:
- Di menu drop-down Project, pilih Selected projects.
- Klik Select, lalu masukkan project yang berisi topik Pub/Sub.
- Di menu drop-down Services, pilih Selected services, lalu pilih Cloud Pub/Sub API.
- Di menu drop-down Metode, pilih Semua tindakan.
- Atribut FROM klien API:
Klik Simpan.
Di menu navigasi, klik Egress Policy.
Klik Add Rule.
Untuk mengonfigurasi aturan keluar bagi akun pengguna atau akun layanan, masukkan parameter berikut:
- Atribut FROM klien API:
- Di menu drop-down Identitas, pilih Identitas yang dipilih.
- Klik Select, lalu masukkan akun utama yang digunakan untuk memanggil Security Command Center API.
- Atribut TO layanan/resource Google Cloud:
- Di menu drop-down Project, pilih All projects.
- Di menu drop-down Services, pilih Selected services, lalu pilih Cloud Pub/Sub API.
- Di menu drop-down Metode, pilih Semua tindakan.
- Atribut FROM klien API:
Klik Simpan.
Membuat aturan ingress untuk NotificationConfig
Untuk membuat aturan masuk untuk NotificationConfig
, lakukan hal berikut:
- Selesaikan petunjuk di Membuat NotificationConfig.
- Buka kembali perimeter layanan dari bagian sebelumnya.
- Klik Kebijakan Ingress.
- Klik Add Rule.
- Untuk mengonfigurasi aturan ingress untuk akun layanan
NotificationConfig
yang Anda buat, masukkan parameter berikut:- Atribut FROM klien API:
- Di menu drop-down Sumber, pilih Semua Sumber.
- Di menu drop-down Identitas, pilih Identitas yang dipilih.
- Klik Select, lalu masukkan nama akun layanan
NotificationConfig
:service-org-ORGANIZATION_ID@gcp-sa-scc-notification.
- Atribut TO layanan/resource GCP:
- Di menu drop-down Project, pilih Selected projects.
- Klik Select, lalu pilih project yang berisi topik Pub/Sub.
- Di menu drop-down Services, pilih Selected services, lalu pilih Cloud Pub/Sub API.
- Di menu drop-down Metode, pilih Semua tindakan.
- Atribut FROM klien API:
- Di menu navigasi, klik Simpan.
Project, pengguna, dan akun layanan yang dipilih kini dapat mengakses resource yang dilindungi dan membuat notifikasi.
Jika Anda telah mengikuti semua langkah dalam panduan ini, dan notifikasi berfungsi dengan benar, sekarang Anda dapat menghapus hal berikut:
- Aturan masuk untuk akun utama
- Aturan traffic keluar untuk akun utama
Aturan tersebut hanya diperlukan untuk mengonfigurasi NotificationConfig
. Namun, agar
notifikasi terus berfungsi, Anda harus mempertahankan aturan masuk untuk
NotificationConfig
, yang memungkinkannya memublikasikan notifikasi ke
topik Pub/Sub di balik perimeter layanan.
Langkah selanjutnya
- Pelajari cara mengaktifkan notifikasi chat dan email real-time.
- Pelajari cara mengelola API notifikasi.
- Pelajari cara memfilter notifikasi.