Menonaktifkan temuan di Security Command Center

Halaman ini menjelaskan cara mengurangi volume temuan yang Anda terima di Security Command Center dengan membisukan temuan.

Ringkasan

Membisukan temuan akan menyembunyikannya dari tampilan default temuan Anda di Konsol Google Cloud. Anda dapat membisukan temuan secara manual atau terprogram dan membuat filter untuk secara otomatis menyembunyikan temuan yang ada dan yang akan datang berdasarkan kriteria yang Anda tentukan.

Menemukan penyedia di Security Command Center memberikan penilaian keamanan yang luas atas deployment Google Cloud Anda, tetapi Anda mungkin mendapati bahwa temuan tertentu tidak sesuai atau tidak relevan untuk organisasi atau project Anda. Jumlah temuan yang tinggi juga dapat menyulitkan analis keamanan Anda untuk mengidentifikasi dan memulihkan risiko yang paling penting secara efektif. Temuan tanpa audio akan menghemat waktu Anda tidak dapat meninjau atau merespons temuan keamanan untuk aset yang terisolasi atau berada dalam parameter bisnis yang dapat diterima.

Tidak menampilkan temuan versus daftar yang diizinkan

Menonaktifkan temuan akan berbeda dengan solusi pengelolaan volume yang sudah ada. Dengan Security Health Analytics, Anda dapat menggunakan tanda keamanan khusus untuk menambahkan aset ke daftar yang diizinkan, sehingga detektor tidak dapat membuat temuan keamanan untuk aset tertentu. Dengan Security Command Center, Anda juga dapat menonaktifkan detektor.

Namun, membisukan temuan memiliki beberapa keuntungan dibandingkan daftar yang diizinkan dan menonaktifkan detektor:

  • Anda dapat menonaktifkan temuan tanpa menemukan aset dasarnya.
  • Temuan yang tidak dilampirkan ke resource apa pun dapat dibisukan.
  • Anda dapat membuat filter kustom untuk meningkatkan fungsi bisu.
  • Membisukan temuan tidak menghentikan pemindaian aset dasar. Temuan tetap dibuat, tetapi tetap disembunyikan sampai Anda memutuskan untuk melihatnya.

Izin

Untuk menonaktifkan hasil temuan, Anda memerlukan salah satu peran Identity and Access Management (IAM) berikut di tingkat organisasi, folder, atau project:

  • Lihat aturan penonaktifan:
    • Security Center Admin Viewer (roles/securitycenter.adminViewer)
    • Viewer Setelan Pusat Keamanan (roles/securitycenter.settingsViewer)
    • Viewer Konfigurasi Bisukan Pusat Keamanan (roles/securitycenter.muteConfigsViewer)
  • Melihat, membuat, memperbarui, dan menghapus aturan penonaktifan:
    • Admin Pusat Keamanan (roles/securitycenter.admin)
    • Editor Admin Pusat Keamanan (roles/securitycenter.adminEditor)
    • Editor Setelan Pusat Keamanan (roles/securitycenter.settingsEditor)
    • Editor Konfigurasi Bisukan Pusat Keamanan (roles/securitycenter.muteConfigsEditor)
  • Menonaktifkan temuan secara manual:
    • Editor Temuan Pusat Keamanan (roles/securitycenter.findingsEditor)

Anda juga dapat membuat dan memberikan peran khusus dengan beberapa atau semua izin berikut:

  • Menonaktifkan izin baca aturan
    • securitycenter.muteconfigs.get
    • securitycenter.muteconfigs.list
  • Menonaktifkan izin penulisan aturan
    • securitycenter.muteconfigs.create
    • securitycenter.muteconfigs.update
    • securitycenter.muteconfigs.delete
  • Menemukan izin tulis
    • securitycenter.findings.setMute
    • securitycenter.findings.bulkMuteUpdate

Kemampuan Anda untuk menonaktifkan temuan mematuhi peran yang diberikan di tingkat organisasi, folder, atau project. Anda dapat membisukan temuan di folder atau project tertentu, dan membatasi kemampuan orang lain untuk menonaktifkan temuan berdasarkan akses yang diberikan. Misalnya, jika memiliki akses ke satu project, Anda hanya dapat membisukan temuan dalam project tersebut. Jika memiliki akses ke folder, Anda dapat membisukan temuan di subfolder atau project mana pun di dalam folder tersebut.

Untuk mempelajari peran Security Command Center lebih lanjut, lihat Kontrol akses.

Nonaktifkan temuan

Anda dapat menonaktifkan setiap temuan secara manual, menonaktifkan beberapa temuan sekaligus dengan filter penonaktifan massal, atau membuat aturan penonaktifan yang secara otomatis menyembunyikan temuan di masa mendatang berdasarkan filter yang Anda tentukan.

Temuan berisi atribut mute yang dapat ditetapkan ke MUTED atau UNMUTED. Saat Anda membisukan dan mengaktifkan temuan, Anda mengubah nilai atribut. Untuk mengetahui informasi selengkapnya, lihat Menonaktifkan properti temuan.

Menonaktifkan temuan bersifat relevan untuk banyak kasus penggunaan, termasuk hal berikut:

  • Aset dalam lingkungan non-produksi yang beberapa persyaratannya yang lebih ketat mungkin tidak berlaku.
  • Rekomendasi untuk menggunakan kunci enkripsi yang dikelola pelanggan dalam project yang tidak berisi data penting.
  • Saat memberikan akses luas ke datastore, yang dengan sengaja terbuka untuk publik dan menyebarkan informasi publik.
  • Temuan yang tidak relevan dengan organisasi atau project berdasarkan kebijakan perusahaan Anda.

Temuan yang dinonaktifkan akan terus dicatat untuk tujuan audit dan kepatuhan, serta dapat dilihat jika perlu. Namun, secara default, ekstensi tidak muncul di Konsol Google Cloud. Anda juga dapat memfilter temuan yang dibisukan dari notifikasi Pub/Sub dan panggilan Security Command Center API menggunakan atribut mute temuan.

Membisukan temuan satu per satu

Anda dapat membisukan temuan tertentu menggunakan Konsol Google Cloud, gcloud CLI, atau Security Command Center API.

Untuk kode contoh menonaktifkan temuan, lihat Menonaktifkan temuan.

Untuk membisukan masing-masing temuan, klik tab untuk prosedur yang ingin Anda gunakan:

Konsol

  1. Di konsol Google Cloud, buka halaman Findings Security Command Center.

    Buka Temuan

  2. Jika perlu, pilih organisasi atau project Google Cloud Anda. Pemilih project

  3. Jika residensi data diaktifkan untuk Security Command Center, gunakan pemilih lokasi tepat di bawah pemilih project untuk memilih lokasi Security Command Center dari temuan tersebut. Contoh:

    Screenshot pemilih lokasi

  4. Jika Anda tidak melihat temuan yang perlu dinonaktifkan di panel Hasil kueri temuan, pilih kategori temuan di bagian Kategori pada panel Filter cepat.

  5. Pilih kotak centang di samping temuan yang perlu dibisukan. Anda dapat memilih satu atau beberapa temuan.

  6. Di panel tindakan Findings query results, klik Mute options, lalu pilih Mute.

    Atribut mute untuk temuan yang dipilih disetel ke MUTED dan temuan dihapus dari panel Hasil kueri temuan.

Atau, Anda dapat menonaktifkan temuan dari panel detailnya:

  1. Di panel Menemukan hasil kueri di halaman Temuan, di kolom Kategori, klik nama temuan individual. Panel detail temuan akan terbuka.
  2. Klik Ambil tindakan.
  3. Dari menu Ambil tindakan, pilih Bisukan.

    Jika Anda memilih Bisukan temuan seperti ini, halaman Buat aturan bisukan akan terbuka tempat Anda dapat membuat aturan penonaktifan untuk temuan dari jenis yang sama atau yang menyertakan atribut Indicator yang sama.

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Untuk menetapkan status membisukan temuan ke MUTED, gunakan perintah set-mute di gcloud CLI:

    gcloud scc findings set-mute FINDING_ID \
     --PARENT=PARENT_ID \
     --location=LOCATION --source=SOURCE_ID \
     --mute=MUTED
    

    Ganti kode berikut:

    • FINDING_ID: ID untuk temuan yang ingin Anda bisukan

      Untuk mengambil ID temuan, gunakan Security Command Center API untuk mencantumkan temuan. ID temuan adalah bagian terakhir dari atribut canonicalName, misalnya, projects/123456789012/sources/1234567890123456789/findings/5ee30aa342e799e4e1700826de053aa9.

    • PARENT: resource induk (project, folder, atau organization), peka huruf besar/kecil

    • PARENT_ID: ID organisasi, folder, atau project induk

    • LOCATION: Jika residensi data diaktifkan, tentukan lokasi Security Command Center tempat temuan disimpan.

      Jika residensi data tidak diaktifkan, menentukan flag --location akan menonaktifkan temuan menggunakan Security Command Center API v2, dan satu-satunya nilai yang valid untuk flag tersebut adalah global.

    • SOURCE_ID: ID sumber

      Untuk petunjuk tentang cara mengambil ID sumber, lihat Mendapatkan ID sumber.

Go

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv1"
	"cloud.google.com/go/securitycenter/apiv1/securitycenterpb"
)

// setMute mutes an individual finding.
// If a finding is already muted, muting it again has no effect.
// Various mute states are: MUTE_UNSPECIFIED/MUTE/UNMUTE.
func setMute(w io.Writer, findingPath string) error {
	// findingPath: The relative resource name of the finding. See:
	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
	// Use any one of the following formats:
	//  - organizations/{organization_id}/sources/{source_id}/finding/{finding_id}
	//  - folders/{folder_id}/sources/{source_id}/finding/{finding_id}
	//  - projects/{project_id}/sources/{source_id}/finding/{finding_id}
	// findingPath := fmt.Sprintf("projects/%s/sources/%s/finding/%s", "your-google-cloud-project-id", "source", "finding-id")
	ctx := context.Background()
	client, err := securitycenter.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("securitycenter.NewClient: %w", err)
	}
	defer client.Close()

	req := &securitycenterpb.SetMuteRequest{
		Name: findingPath,
		Mute: securitycenterpb.Finding_MUTED}

	finding, err := client.SetMute(ctx, req)
	if err != nil {
		return fmt.Errorf("failed to set the specified mute value: %w", err)
	}
	fmt.Fprintf(w, "Mute value for the finding: %s is %s", finding.Name, finding.Mute)
	return nil
}

Java

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import com.google.cloud.securitycenter.v1.Finding;
import com.google.cloud.securitycenter.v1.Finding.Mute;
import com.google.cloud.securitycenter.v1.SecurityCenterClient;
import com.google.cloud.securitycenter.v1.SetMuteRequest;
import java.io.IOException;

public class SetMuteFinding {

  public static void main(String[] args) throws IOException {
    // TODO: Replace the variables within {}

    // findingPath: The relative resource name of the finding. See:
    // https://cloud.google.com/apis/design/resource_names#relative_resource_name
    // Use any one of the following formats:
    //  - organizations/{organization_id}/sources/{source_id}/finding/{finding_id}
    //  - folders/{folder_id}/sources/{source_id}/finding/{finding_id}
    //  - projects/{project_id}/sources/{source_id}/finding/{finding_id}
    String findingPath = "{path-to-the-finding}";
    setMute(findingPath);
  }

  // Mute an individual finding.
  // If a finding is already muted, muting it again has no effect.
  // Various mute states are: MUTE_UNSPECIFIED/MUTE/UNMUTE.
  public static Finding setMute(String findingPath) throws IOException {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {

      SetMuteRequest setMuteRequest =
          SetMuteRequest.newBuilder().setName(findingPath).setMute(Mute.MUTED).build();

      Finding finding = client.setMute(setMuteRequest);
      System.out.println(
          "Mute value for the finding " + finding.getName() + " is: " + finding.getMute());
      return finding;
    }
  }
}

Python

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

def set_mute_finding(finding_path: str) -> None:
    """
      Mute an individual finding.
      If a finding is already muted, muting it again has no effect.
      Various mute states are: MUTE_UNSPECIFIED/MUTE/UNMUTE.
    Args:
        finding_path: The relative resource name of the finding. See:
        https://cloud.google.com/apis/design/resource_names#relative_resource_name
        Use any one of the following formats:
        - organizations/{organization_id}/sources/{source_id}/finding/{finding_id},
        - folders/{folder_id}/sources/{source_id}/finding/{finding_id},
        - projects/{project_id}/sources/{source_id}/finding/{finding_id}.
    """
    from google.cloud import securitycenter

    client = securitycenter.SecurityCenterClient()

    request = securitycenter.SetMuteRequest()
    request.name = finding_path
    request.mute = securitycenter.Finding.Mute.MUTED

    finding = client.set_mute(request)
    print(f"Mute value for the finding: {finding.mute.name}")

REST API

Di Security Command Center API, gunakan metode setMute untuk menonaktifkan temuan. Isi permintaan adalah enum yang menunjukkan status bisukan yang dihasilkan.

Kecuali residensi data diaktifkan, Anda dapat menggunakan Security Command Center API v1 atau v2. API v2 tersedia sebagai rilis Pratinjau. Jika residensi data diaktifkan, API v2 adalah satu-satunya API yang tersedia.

Jika Anda menggunakan Security Command Center API v1, panggil setMute menggunakan endpoint v1:


POST https://securitycenter.googleapis.com/v1/PARENT/PARENT_ID/sources/SOURCE_ID/findings/FINDING_ID:setMute

{
  "mute": "MUTED"
}

Jika Anda menggunakan Security Command Center API v2, panggil setMute menggunakan endpoint v2:

POST https://securitycenter.googleapis.com/v2/PARENT/PARENT_ID/sources/SOURCE_ID/locations/LOCATION/findings/FINDING_ID:setMute

{
  "mute": "MUTED"
}

Ganti kode berikut:

  • PARENT: resource induk (organizations, folders, atau projects).
  • PARENT_ID: ID organisasi, folder, atau project induk.
  • LOCATION: Khusus untuk v2, menentukan lokasi Security Command Center tempat temuan disimpan. Jika kolom lokasi dihilangkan, nilai defaultnya adalah global.
  • SOURCE_ID: ID numerik untuk sumber.

    Untuk petunjuk tentang cara mengambil ID sumber, lihat Mendapatkan ID sumber.

  • FINDING_ID: ID untuk temuan yang ingin dibisukan.

    Untuk mengambil ID temuan, gunakan Security Command Center API untuk mencantumkan temuan. ID temuan adalah bagian terakhir dari atribut canonicalName, misalnya, projects/123456789012/sources/1234567890123456789/findings/5ee30aa342e799e4e1700826de053aa9.

Setelah Anda menonaktifkan temuan, atribut mute miliknya ditetapkan ke MUTED.

Membisukan temuan tidak memengaruhi apakah temuan aktif atau tidak. Jika temuan aktif dibisukan, atribut state tetap tidak berubah: state="ACTIVE". Temuan ini disembunyikan, tetapi tetap aktif hingga kerentanan, kesalahan konfigurasi, atau ancaman yang mendasarinya diselesaikan.

Untuk mengetahui informasi selengkapnya tentang aturan penonaktifan, lihat Membuat aturan penonaktifan.

Melihat temuan yang dinonaktifkan di konsol Google Cloud

Anda dapat melihat temuan yang dinonaktifkan di konsol Google Cloud dengan mengedit kueri temuan untuk memilih temuan yang menyertakan nilai properti mute="MUTED".

Misalnya, kueri temuan berikut hanya menampilkan temuan aktif yang dibisukan:

state="ACTIVE"
AND mute="MUTED"

Untuk menampilkan semua temuan aktif, baik yang dibisukan maupun yang dibunyikan, hapus atribut mute dari kueri sepenuhnya:

state="ACTIVE"

Secara default, kueri temuan di Konsol Google Cloud hanya menampilkan temuan yang tidak dibisukan.

Untuk informasi selengkapnya tentang mengedit kueri temuan, lihat Membuat atau mengedit kueri temuan di dasbor.

Tampilkan lagi setiap temuan

Anda dapat membunyikan setiap temuan dengan menggunakan Konsol Google Cloud, gcloud CLI, atau Security Command Center API.

Untuk kode contoh membunyikan temuan, lihat Mengaktifkan temuan.

Untuk membunyikan temuan tertentu, klik tab untuk prosedur yang ingin Anda gunakan:

Konsol

  1. Di konsol Google Cloud, buka halaman Findings Security Command Center.

    Buka Temuan

  2. Jika perlu, pilih organisasi atau project Google Cloud Anda. Pemilih project

    Halaman Findings akan terbuka dengan kueri default yang ditampilkan di bagian Query preview. Kueri default memfilter temuan yang dibisukan, sehingga Anda perlu mengedit kueri sebelum temuan yang dibisukan muncul di panel Hasil kueri temuan.

  3. Jika residensi data diaktifkan untuk Security Command Center, gunakan pemilih lokasi tepat di bawah pemilih project, untuk memilih lokasi temuan Security Command Center. Contoh:

    Screenshot pemilih lokasi

  4. Di sebelah kanan bagian Query preview, klik Edit query untuk membuka Query editor.

  5. Di kolom Query editor, ganti pernyataan mute yang ada dengan berikut ini:

    mute="MUTED"
  6. Klik Terapkan. Temuan di panel Findings query results diperbarui untuk menyertakan hanya temuan yang dinonaktifkan.

  7. Jika perlu, filter temuan lain yang dibisukan. Misalnya, di panel Quick filters di bagian Category, pilih nama temuan yang perlu Anda bunyikan untuk memfilter semua kategori temuan lainnya.

  8. Centang kotak di samping temuan yang ingin Anda bunyikan. Anda dapat memilih satu atau beberapa temuan.

  9. Di panel tindakan Findings query results, klik Mute Options, lalu pilih Aktifkan.

    Atribut mute untuk temuan yang dipilih disetel ke UNMUTED dan temuan dihapus dari panel Hasil kueri temuan.

Atau, Anda dapat membunyikan temuan dari panel detailnya:

  1. Di panel Menemukan hasil kueri di halaman Temuan, di kolom Kategori, klik nama temuan individual. Panel detail temuan akan terbuka.
  2. Klik Ambil tindakan.
  3. Dari menu Ambil tindakan, pilih Tampilkan lagi.

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Untuk menetapkan status membisukan temuan ke UNMUTED, gunakan perintah set-mute di gcloud CLI:

    gcloud scc findings set-mute FINDING_ID \
     --PARENT=PARENT_ID \
     --location=LOCATION --source=SOURCE_ID \
     --mute=UNMUTED
    

    Ganti kode berikut:

    • FINDING_ID: ID untuk temuan yang ingin Anda bisukan

      Untuk mengambil ID temuan, gunakan Security Command Center API untuk mencantumkan temuan. ID temuan adalah bagian terakhir dari atribut canonicalName, misalnya, projects/123456789012/sources/1234567890123456789/findings/5ee30aa342e799e4e1700826de053aa9.

    • PARENT: resource induk (project, folder, atau organization ), peka huruf besar/kecil

    • PARENT_ID: ID organisasi, folder, atau project induk

    • LOCATION: Jika residensi data diaktifkan, tentukan lokasi Security Command Center tempat temuan disimpan.

      Jika residensi data tidak diaktifkan, menentukan flag --location akan membunyikan temuan menggunakan Security Command Center API v2, dan satu-satunya nilai yang valid untuk tanda tersebut adalah global.

    • SOURCE_ID: ID sumber

      Untuk petunjuk tentang cara mengambil ID sumber, lihat Mendapatkan ID sumber

Go

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv1"
	"cloud.google.com/go/securitycenter/apiv1/securitycenterpb"
)

// setUnmute unmutes an individual finding.
// Unmuting a finding that isn't muted has no effect.
// Various mute states are: MUTE_UNSPECIFIED/MUTE/UNMUTE.
func setUnmute(w io.Writer, findingPath string) error {
	// findingPath: The relative resource name of the finding. See:
	// https://cloud.google.com/apis/design/resource_names#relative_resource_name
	// Use any one of the following formats:
	//  - organizations/{organization_id}/sources/{source_id}/finding/{finding_id}
	//  - folders/{folder_id}/sources/{source_id}/finding/{finding_id}
	//  - projects/{project_id}/sources/{source_id}/finding/{finding_id}
	// findingPath := fmt.Sprintf("projects/%s/sources/%s/finding/%s", "your-google-cloud-project-id", "source", "finding-id")
	ctx := context.Background()
	client, err := securitycenter.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("securitycenter.NewClient: %w", err)
	}
	defer client.Close()

	req := &securitycenterpb.SetMuteRequest{
		Name: findingPath,
		Mute: securitycenterpb.Finding_UNMUTED}

	finding, err := client.SetMute(ctx, req)
	if err != nil {
		return fmt.Errorf("failed to set the specified mute value: %w", err)
	}
	fmt.Fprintf(w, "Mute value for the finding: %s is %s", finding.Name, finding.Mute)
	return nil
}

Java

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import com.google.cloud.securitycenter.v1.Finding;
import com.google.cloud.securitycenter.v1.Finding.Mute;
import com.google.cloud.securitycenter.v1.SecurityCenterClient;
import com.google.cloud.securitycenter.v1.SetMuteRequest;
import java.io.IOException;

public class SetUnmuteFinding {

  public static void main(String[] args) throws IOException {
    // TODO: Replace the variables within {}

    // findingPath: The relative resource name of the finding. See:
    // https://cloud.google.com/apis/design/resource_names#relative_resource_name
    // Use any one of the following formats:
    //  - organizations/{organization_id}/sources/{source_id}/finding/{finding_id}
    //  - folders/{folder_id}/sources/{source_id}/finding/{finding_id}
    //  - projects/{project_id}/sources/{source_id}/finding/{finding_id}
    String findingPath = "{path-to-the-finding}";
    setUnmute(findingPath);
  }

  // Unmute an individual finding.
  // Unmuting a finding that isn't muted has no effect.
  // Various mute states are: MUTE_UNSPECIFIED/MUTE/UNMUTE.
  public static Finding setUnmute(String findingPath) throws IOException {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {

      SetMuteRequest setMuteRequest =
          SetMuteRequest.newBuilder().setName(findingPath).setMute(Mute.UNMUTED).build();

      Finding finding = client.setMute(setMuteRequest);
      System.out.println(
          "Mute value for the finding " + finding.getName() + " is: " + finding.getMute());
      return finding;
    }
  }
}

Python

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

def set_unmute_finding(finding_path: str) -> None:
    """
      Unmute an individual finding.
      Unmuting a finding that isn't muted has no effect.
      Various mute states are: MUTE_UNSPECIFIED/MUTE/UNMUTE.
    Args:
        finding_path: The relative resource name of the finding. See:
        https://cloud.google.com/apis/design/resource_names#relative_resource_name
        Use any one of the following formats:
        - organizations/{organization_id}/sources/{source_id}/finding/{finding_id},
        - folders/{folder_id}/sources/{source_id}/finding/{finding_id},
        - projects/{project_id}/sources/{source_id}/finding/{finding_id}.
    """
    from google.cloud import securitycenter

    client = securitycenter.SecurityCenterClient()

    request = securitycenter.SetMuteRequest()
    request.name = finding_path
    request.mute = securitycenter.Finding.Mute.UNMUTED

    finding = client.set_mute(request)
    print(f"Mute value for the finding: {finding.mute.name}")

REST API

Di Security Command Center API, gunakan metode setMute untuk mengaktifkan temuan. Isi permintaan adalah enum yang menunjukkan status bisukan yang dihasilkan.

Kecuali residensi data diaktifkan, Anda dapat menggunakan Security Command Center API v1 atau v2. API v2 tersedia sebagai rilis Pratinjau. Jika residensi data diaktifkan, API v2 adalah satu-satunya API yang tersedia.

Jika Anda menggunakan Security Command Center API v1, panggil setMute menggunakan endpoint v1:

POST https://securitycenter.googleapis.com/v1/PARENT/PARENT_ID/sources/SOURCE_ID/findings/FINDING_ID:setMute

{
  "mute": "UNMUTED"
}

Jika Anda menggunakan Security Command Center API v2, panggil setMute menggunakan endpoint v2:

POST https://securitycenter.googleapis.com/v2/PARENT/PARENT_ID/sources/SOURCE_ID/locations/LOCATION/findings/FINDING_ID:setMute

{
  "mute": "UNMUTED"
}

Ganti kode berikut:

  • PARENT: resource induk (organizations, folders, atau projects)
  • PARENT_ID: ID organisasi, folder, atau project induk
  • LOCATION: Khusus untuk v2, menentukan lokasi Security Command Center tempat temuan disimpan. Jika kolom lokasi dihilangkan, nilai defaultnya adalah global.
  • SOURCE_ID: ID numerik untuk sumber

    Untuk petunjuk tentang cara mengambil ID sumber, lihat Mendapatkan ID sumber

  • FINDING_ID: ID untuk temuan yang ingin dibisukan.

    Untuk mengambil ID temuan, gunakan Security Command Center API untuk mencantumkan temuan. ID temuan adalah bagian terakhir dari atribut canonicalName, misalnya, projects/123456789012/sources/1234567890123456789/findings/5ee30aa342e799e4e1700826de053aa9.

Temuan yang dipilih tidak lagi disembunyikan, dan atribut mute untuk temuan disetel ke UNMUTED.

Temuan yang diaktifkan menggantikan aturan penonaktifan

Jika pengguna membunyikan temuan, temuan tersebut akan tetap dibunyikan meskipun aturan penonaktifan yang ada masih cocok dengan temuan. Akibatnya, bunyikan tindakan oleh pengguna akan mengganti aturan penonaktifan.

Temuan yang diaktifkan akan dibisukan lagi hanya jika pengguna membisukan temuan secara manual atau membuat aturan penonaktifan baru yang cocok di Konsol Google Cloud. Aturan bisukan yang dibuat dengan gcloud CLI atau Security Command Center API tidak akan memengaruhi temuan yang dibunyikan oleh pengguna.

Menonaktifkan beberapa temuan yang ada

Anda dapat menonaktifkan beberapa temuan yang sudah ada secara massal dengan menggunakan perintah gcloud CLI gcloud scc findings bulk-mute, atau metode bulkMute dari Security Command Center API. Jika Anda perlu menonaktifkan temuan mendatang yang serupa, buat aturan penonaktifan.

Tentukan kumpulan temuan yang perlu dinonaktifkan dengan menentukan filter temuan. Filter bisukan massal tidak mendukung semua properti penemuan. Untuk mengetahui daftar properti yang tidak didukung, lihat Menemukan properti yang tidak didukung untuk aturan penonaktifan.

Jika residensi data diaktifkan untuk Security Command Center, operasi bisukan massal dalam cakupan dibatasi di lokasi Security Command Center tempat operasi tersebut dijalankan.

Untuk kode contoh yang menonaktifkan temuan secara massal, lihat Menonaktifkan temuan secara massal.

Untuk menonaktifkan temuan secara massal, klik tab untuk prosedur yang ingin Anda gunakan:

Konsol

Di konsol Google Cloud, Anda hanya dapat membisukan temuan secara massal dengan membuat aturan penonaktifan. Di Konsol Google Cloud, membuat aturan bisukan akan menyembunyikan temuan yang ada dan yang akan datang.

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Untuk menonaktifkan beberapa temuan secara massal, jalankan perintah gcloud scc findings bulk-mute:

    gcloud scc findings bulk-mute --PARENT=PARENT_ID \
    --location=LOCATION --filter="FILTER" \
    

    Ganti kode berikut:

    • PARENT: cakupan dalam hierarki resource tempat aturan bisukan diterapkan, organization, folder, atau project.
    • PARENT_ID: ID organisasi, folder, atau project induk, yang ditentukan dalam format organizations/123, folders/456, atau projects/789.
    • LOCATION: Jika residensi data diaktifkan, tentukan lokasi Security Command Center untuk menonaktifkan temuan secara massal. Hanya temuan di lokasi ini yang dibisukan.

      Jika residensi data tidak diaktifkan, penetapan flag --location akan menonaktifkan temuan dengan menggunakan Security Command Center API v2 dan satu-satunya nilai yang valid untuk tanda tersebut adalah global.

    • FILTER: ekspresi yang Anda tentukan untuk memfilter temuan

    Misalnya, untuk menonaktifkan semua temuan OPEN_FIREWALL dan PUBLIC_IP_ADDRESS dengan tingkat keparahan rendah yang ada dalam project internal-test, filter Anda dapat berupa "category=\"OPEN_FIREWALL\" OR category=\"PUBLIC_IP_ADDRESS\" AND severity=\"LOW\" AND resource.project_display_name=\"internal-test\"".

Go

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv1"
	"cloud.google.com/go/securitycenter/apiv1/securitycenterpb"
)

// bulkMute kicks off a long-running operation (LRO) to bulk mute findings for a parent based on a filter.
// The parent can be either an organization, folder, or project. The findings
// matched by the filter will be muted after the LRO is done.
func bulkMute(w io.Writer, parent string, muteRule string) error {
	// parent: Use any one of the following options:
	//             - organizations/{organization_id}
	//             - folders/{folder_id}
	//             - projects/{project_id}
	// parent := fmt.Sprintf("projects/%s", "your-google-cloud-project-id")
	// muteRule: Expression that identifies findings that should be muted.
	// To create mute rules, see:
	// https://cloud.google.com/security-command-center/docs/how-to-mute-findings#create_mute_rules
	// muteRule := "filter-condition"
	ctx := context.Background()
	client, err := securitycenter.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("securitycenter.NewClient: %w", err)
	}
	defer client.Close()

	req := &securitycenterpb.BulkMuteFindingsRequest{
		Parent: parent,
		Filter: muteRule,
	}

	op, err := client.BulkMuteFindings(ctx, req)
	if err != nil {
		return fmt.Errorf("failed to bulk mute findings: %w", err)
	}
	response, err := op.Wait(ctx)
	if err != nil {
		return fmt.Errorf("failed to bulk mute findings: %w", err)
	}
	fmt.Fprintf(w, "Bulk mute findings completed successfully! %s", response)
	return nil
}

Java

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import com.google.cloud.securitycenter.v1.BulkMuteFindingsRequest;
import com.google.cloud.securitycenter.v1.BulkMuteFindingsResponse;
import com.google.cloud.securitycenter.v1.SecurityCenterClient;
import java.io.IOException;
import java.util.concurrent.ExecutionException;

public class BulkMuteFindings {

  public static void main(String[] args) {
    // TODO: Replace the variables within {}

    // parentPath: Use any one of the following options:
    //             - organizations/{organization_id}
    //             - folders/{folder_id}
    //             - projects/{project_id}
    String parentPath = String.format("projects/%s", "your-google-cloud-project-id");

    // muteRule: Expression that identifies findings that should be muted.
    // eg: "resource.project_display_name=\"PROJECT_ID\""
    String muteRule = "{filter-condition}";

    bulkMute(parentPath, muteRule);
  }

  // Kicks off a long-running operation (LRO) to bulk mute findings for a parent based on a filter.
  // The parent can be either an organization, folder, or project. The findings
  // matched by the filter will be muted after the LRO is done.
  public static void bulkMute(String parentPath, String muteRule) {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {

      BulkMuteFindingsRequest bulkMuteFindingsRequest =
          BulkMuteFindingsRequest.newBuilder()
              .setParent(parentPath)
              // To create mute rules, see:
              // https://cloud.google.com/security-command-center/docs/how-to-mute-findings#create_mute_rules
              .setFilter(muteRule)
              .build();

      // ExecutionException is thrown if the below call fails.
      BulkMuteFindingsResponse response =
          client.bulkMuteFindingsAsync(bulkMuteFindingsRequest).get();
      System.out.println("Bulk mute findings completed successfully! " + response);
    } catch (IOException | InterruptedException | ExecutionException e) {
      System.out.println("Bulk mute findings failed! \n Exception: " + e);
    }
  }
}

Python

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

def bulk_mute_findings(parent_path: str, mute_rule: str) -> None:
    """
      Kicks off a long-running operation (LRO) to bulk mute findings for a parent based on a filter.
      The parent can be either an organization, folder, or project. The findings
      matched by the filter will be muted after the LRO is done.
    Args:
        parent_path: use any one of the following options:
                     - organizations/{organization}
                     - folders/{folder}
                     - projects/{project}
        mute_rule: Expression that identifies findings that should be updated.
    """
    from google.cloud import securitycenter

    client = securitycenter.SecurityCenterClient()

    request = securitycenter.BulkMuteFindingsRequest()
    request.parent = parent_path
    # To create mute rules, see:
    # https://cloud.google.com/security-command-center/docs/how-to-mute-findings#create_mute_rules
    request.filter = mute_rule

    response = client.bulk_mute_findings(request)
    print(f"Bulk mute findings completed successfully! : {response}")

REST API

Di Security Command Center API, gunakan metode bulkMute untuk menonaktifkan beberapa temuan yang ada. Isi permintaan berisi ekspresi yang digunakan untuk memfilter temuan.

Kecuali residensi data diaktifkan, Anda dapat menggunakan Security Command Center API v1 atau v2. API v2 tersedia sebagai rilis Pratinjau. Jika residensi data diaktifkan, API v2 adalah satu-satunya API yang tersedia.

Jika Anda menggunakan Security Command Center API v1, panggil bulkMute menggunakan endpoint v1:

POST https://securitycenter.googleapis.com/v1/PARENT/PARENT_ID/findings:bulkMute -d

{
  "filter": "FILTER"
}

Jika Anda menggunakan Security Command Center API v2, panggil bulkMute menggunakan endpoint v2:

POST https://securitycenter.googleapis.com/v2/PARENT/PARENT_ID/locations/LOCATION/findings:bulkMute -d

{
  "filter": "FILTER"
}

Ganti kode berikut:

  • PARENT: resource induk (organizations, folders, atau projects).
  • PARENT_ID: ID organisasi, folder, atau project induk.
  • LOCATION: Khusus untuk v2, menentukan lokasi Security Command Center tempat temuan disimpan. Jika kolom lokasi dihilangkan, nilai defaultnya adalah global.
  • FILTER: ekspresi yang Anda tentukan untuk memfilter temuan.

    Misalnya, untuk menonaktifkan semua temuan OPEN_FIREWALL dan PUBLIC_IP_ADDRESS dengan tingkat keparahan rendah yang ada dalam project internal-test, filter Anda dapat berupa "category=\"OPEN_FIREWALL\" OR category=\"PUBLIC_IP_ADDRESS\" AND severity=\"LOW\" AND resource.project_display_name=\"internal-test\"".

Semua temuan yang ada dalam resource yang Anda pilih, dan yang sama persis dengan filter, akan disembunyikan. Atribut mute untuk temuan ditetapkan ke MUTED.

Menonaktifkan temuan tidak akan mengubah statusnya. Jika temuan aktif dibisukan, temuan tersebut akan disembunyikan, tetapi tetap aktif hingga kerentanan, kesalahan konfigurasi, atau ancaman yang mendasarinya diselesaikan.

Membuat aturan penonaktifan

Aturan penonaktifan adalah konfigurasi Security Command Center yang menggunakan filter yang Anda buat untuk secara otomatis menonaktifkan temuan mendatang berdasarkan kriteria yang Anda tentukan. Temuan baru yang mencocokkan filter bisukan otomatis dibisukan secara berkelanjutan. Jika Anda juga ingin menonaktifkan temuan yang sudah ada yang serupa, gunakan filter yang sama untuk menonaktifkan temuan secara massal.

Cakupan aturan penonaktifan

Pertimbangkan cakupan aturan penonaktifan saat membuat filter.

Misalnya, jika filter ditulis untuk menonaktifkan temuan di Project A, tetapi filter itu sendiri dibuat di Project B, filter mungkin tidak cocok dengan temuan apa pun.

Demikian pula, jika residensi data diaktifkan, cakupan aturan penonaktifan dibatasi pada lokasi Security Command Center tempat aturan penonaktifan dibuat. Misalnya, jika Anda membuat aturan penonaktifan di lokasi Amerika Serikat (us), aturan penonaktifan tidak akan menonaktifkan temuan yang disimpan di lokasi Uni Eropa (eu) atau Global (global). Untuk mengetahui informasi selengkapnya tentang residensi data dan aturan bisukan, lihat Aturan penonaktifan, ekspor berkelanjutan, dan residensi data.

Untuk informasi selengkapnya tentang cara membuat filter, lihat Memfilter notifikasi.

Nonaktifkan pembatasan aturan

Aturan penonaktifan tidak mendukung semua properti penemuan. Untuk daftar properti yang tidak didukung oleh aturan penonaktifan, lihat Menemukan properti yang tidak didukung untuk aturan penonaktifan.

Organisasi Anda dapat membuat maksimum 1.000 aturan penonaktifan.

Residensi data dan aturan penonaktifan

Jika residensi data diaktifkan, konfigurasi yang menentukan aturan pembisuan—resource muteConfig—tunduk pada kontrol residensi data dan disimpan di lokasi Security Command Center yang Anda pilih.

Untuk menerapkan aturan penonaktifan pada temuan di lokasi Security Command Center, Anda harus membuat aturan penonaktifan di lokasi yang sama dengan temuan tempat aturan tersebut diterapkan.

Karena filter yang digunakan dalam aturan penonaktifan dapat berisi data yang tunduk pada kontrol residensi, pastikan Anda menentukan lokasi yang benar sebelum membuatnya. Security Command Center tidak membatasi lokasi tempat Anda membuat aturan penonaktifan atau mengekspor ekspor streaming.

Aturan penonaktifan hanya disimpan di lokasi tempat aturan tersebut dibuat dan tidak dapat dilihat atau diedit di lokasi lain.

Setelah membuat aturan bisu, Anda tidak dapat mengubah lokasinya. Untuk mengubah lokasi, Anda harus menghapus aturan penonaktifan dan membuatnya kembali di lokasi baru.

Untuk melihat aturan penonaktifan di Konsol Google Cloud, Anda harus terlebih dahulu menyetel tampilan Konsol Google Cloud ke lokasi pembuatan aturan tersebut.

Aturan yang sama berlaku untuk representasi API dari aturan penonaktifan, MuteConfig.

Untuk mengambil MuteConfig dengan menggunakan panggilan API, Anda harus menetapkan lokasi dalam nama resource lengkap MuteConfig. Contoh:

GET https://securitycenter.googleapis.com/v2/{name=organizations/123/locations/eu/muteConfigs/my-mute-rule-01}

Demikian pula, untuk mengambil muteConfig menggunakan gcloud CLI, Anda dapat menentukan lokasi menggunakan flag --locations. Contoh:

gcloud scc muteconfigs list --organizations=123
--location=us

Membuat aturan penonaktifan

Anda dapat membuat aturan penonaktifan menggunakan Konsol Google Cloud, gcloud CLI, atau Security Command Center API.

Untuk kode contoh yang membuat aturan penonaktifan, lihat Membuat aturan penonaktifan.

Untuk membuat aturan bisukan, klik tab prosedur yang ingin Anda gunakan:

Konsol

  1. Di konsol Google Cloud, buka halaman Findings Security Command Center.

    Buka Temuan

  2. Jika perlu, pilih organisasi atau project Google Cloud Anda.

    Pemilih project

  3. Jika residensi data diaktifkan untuk Security Command Center, gunakan pemilih lokasi tepat di bawah pemilih project untuk memilih lokasi Security Command Center tempat membuat aturan penonaktifan. Contoh:

    Screenshot pemilih lokasi

  4. Klik Opsi penonaktifan, lalu pilih Buat aturan penonaktifan.

  5. Masukkan ID aturan bisukan. Nilai ini wajib diisi.

  6. Masukkan Nonaktifkan deskripsi aturan yang memberikan konteks terkait alasan temuan dibisukan. Nilai ini bersifat opsional, tetapi direkomendasikan.

  7. Resource induk menunjukkan cakupan tempat aturan penonaktifan akan dibuat dan diterapkan.

  8. Di kolom Findings query, buat pernyataan kueri dengan mengklik Add filter. Atau, Anda dapat mengetik pernyataan kueri secara manual.

    Dialog Select filter memungkinkan Anda memilih atribut dan nilai temuan yang didukung. Dialog filter kueri

    1. Pilih atribut temuan atau ketik namanya di kotak Telusuri atribut temuan. Daftar sub-atribut yang tersedia akan ditampilkan.
    2. Pilih sub-atribut. Kolom pilihan untuk opsi evaluasi Anda ditampilkan di atas daftar nilai sub-atribut yang ditemukan dalam temuan di panel Hasil kueri temuan.
    3. Pilih opsi evaluasi untuk nilai sub-atribut yang dipilih. Untuk mengetahui informasi selengkapnya tentang opsi evaluasi serta operator dan fungsi yang digunakannya, lihat Operator kueri di menu Tambahkan filter.
    4. Pilih Apply.

      Dialog akan ditutup dan kueri Anda akan diperbarui.

    5. Ulangi sampai kueri temuan berisi semua atribut yang Anda inginkan.
  9. Tinjau akurasi filter. Untuk membuat perubahan, hapus atau tambahkan properti dan filter nilai sesuai kebutuhan.

  10. Klik Lihat pratinjau temuan yang cocok.

    Tabel akan menampilkan temuan yang cocok dengan kueri Anda.

  11. Klik Save.

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Untuk membuat aturan penonaktifan, jalankan perintah gcloud scc muteconfigs create:

    gcloud scc muteconfigs create CONFIG_ID \
    --PARENT=PARENT_ID \
    --location=LOCATION
    --description="RULE_DESCRIPTION" \
    --filter="FILTER"
    

    Ganti kode berikut:

    • CONFIG_ID: nama aturan penonaktifan. ID harus menggunakan karakter alfanumerik dan tanda hubung, dengan panjang antara 1 dan 63 karakter.
    • PARENT: cakupan dalam hierarki resource tempat aturan bisukan diterapkan, organization, folder, atau project.
    • PARENT_ID: ID organisasi, folder, atau project induk, yang ditentukan dalam format organizations/123, folders/456, atau projects/789.
    • LOCATION: Jika residensi data diaktifkan, tentukan lokasi Security Command Center untuk membuat aturan penonaktifan. Konfigurasi aturan penonaktifan disimpan dan hanya berlaku untuk temuan di lokasi ini.

      Jika residensi data tidak diaktifkan, menentukan flag --location akan membuat aturan penonaktifan menggunakan Security Command Center API v2 dan satu-satunya nilai yang valid untuk tanda tersebut adalah global.

    • RULE_DESCRIPTION: deskripsi aturan bisukan yang tidak lebih dari 1.024 karakter.

    • FILTER: ekspresi yang Anda tentukan untuk memfilter temuan. Misalnya, untuk menonaktifkan temuan OPEN_FIREWALL, filter Anda dapat berupa FILTER="category=\"OPEN_FIREWALL\"".

    Responsnya mencakup ID aturan penonaktifan, yang dapat Anda gunakan untuk melihat, memperbarui, dan menghapus aturan penonaktifan, seperti yang dijelaskan dalam Mengelola aturan penonaktifan.

Go

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv1"
	"cloud.google.com/go/securitycenter/apiv1/securitycenterpb"
)

// createMuteRule: Creates a mute configuration under a given scope that will mute
// all new findings that match a given filter.
// Existing findings will not be muted.
func createMuteRule(w io.Writer, parent string, muteConfigId string) error {
	// parent: Use any one of the following options:
	//             - organizations/{organization_id}
	//             - folders/{folder_id}
	//             - projects/{project_id}
	// parent := fmt.Sprintf("projects/%s", "your-google-cloud-project-id")
	// muteConfigId: Set a random id; max of 63 chars.
	// muteConfigId := "random-mute-id-" + uuid.New().String()
	ctx := context.Background()
	client, err := securitycenter.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("securitycenter.NewClient: %w", err)
	}
	defer client.Close()

	muteConfig := &securitycenterpb.MuteConfig{
		Description: "Mute low-medium IAM grants excluding 'compute' ",
		// Set mute rule(s).
		// To construct mute rules and for supported properties, see:
		// https://cloud.google.com/security-command-center/docs/how-to-mute-findings#create_mute_rules
		Filter: "severity=\"LOW\" OR severity=\"MEDIUM\" AND " +
			"category=\"Persistence: IAM Anomalous Grant\" AND " +
			"-resource.type:\"compute\"",
	}

	req := &securitycenterpb.CreateMuteConfigRequest{
		Parent:       parent,
		MuteConfigId: muteConfigId,
		MuteConfig:   muteConfig,
	}

	response, err := client.CreateMuteConfig(ctx, req)
	if err != nil {
		return fmt.Errorf("failed to create mute rule: %w", err)
	}
	fmt.Fprintf(w, "Mute rule created successfully: %s", response.Name)
	return nil
}

Java

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import com.google.cloud.securitycenter.v1.CreateMuteConfigRequest;
import com.google.cloud.securitycenter.v1.MuteConfig;
import com.google.cloud.securitycenter.v1.SecurityCenterClient;
import java.io.IOException;
import java.util.UUID;

public class CreateMuteRule {

  public static void main(String[] args) {
    // TODO: Replace the variables within {}

    // parentPath: Use any one of the following options:
    //             - organizations/{organization_id}
    //             - folders/{folder_id}
    //             - projects/{project_id}
    String parentPath = String.format("projects/%s", "your-google-cloud-project-id");

    // muteConfigId: Set a random id; max of 63 chars.
    String muteConfigId = "random-mute-id-" + UUID.randomUUID();
    createMuteRule(parentPath, muteConfigId);
  }

  // Creates a mute configuration under a given scope that will mute
  // all new findings that match a given filter.
  // Existing findings will not be muted.
  public static void createMuteRule(String parentPath, String muteConfigId) {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {

      MuteConfig muteConfig =
          MuteConfig.newBuilder()
              .setDescription("Mute low-medium IAM grants excluding 'compute' ")
              // Set mute rule(s).
              // To construct mute rules and for supported properties, see:
              // https://cloud.google.com/security-command-center/docs/how-to-mute-findings#create_mute_rules
              .setFilter(
                  "severity=\"LOW\" OR severity=\"MEDIUM\" AND "
                      + "category=\"Persistence: IAM Anomalous Grant\" AND "
                      + "-resource.type:\"compute\"")
              .build();

      CreateMuteConfigRequest request =
          CreateMuteConfigRequest.newBuilder()
              .setParent(parentPath)
              .setMuteConfigId(muteConfigId)
              .setMuteConfig(muteConfig)
              .build();

      // ExecutionException is thrown if the below call fails.
      MuteConfig response = client.createMuteConfig(request);
      System.out.println("Mute rule created successfully: " + response.getName());
    } catch (IOException e) {
      System.out.println("Mute rule creation failed! \n Exception: " + e);
    }
  }
}

Python

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.



def create_mute_rule(parent_path: str, mute_config_id: str) -> None:
    """
    Creates a mute configuration under a given scope that will mute
    all new findings that match a given filter.
    Existing findings will NOT BE muted.
    Args:
        parent_path: use any one of the following options:
                     - organizations/{organization_id}
                     - folders/{folder_id}
                     - projects/{project_id}
        mute_config_id: Set a unique id; max of 63 chars.
    """

    from google.cloud import securitycenter

    client = securitycenter.SecurityCenterClient()

    mute_config = securitycenter.MuteConfig()
    mute_config.description = "Mute low-medium IAM grants excluding 'compute' "
    # Set mute rule(s).
    # To construct mute rules and for supported properties, see:
    # https://cloud.google.com/security-command-center/docs/how-to-mute-findings#create_mute_rules
    mute_config.filter = (
        'severity="LOW" OR severity="MEDIUM" AND '
        'category="Persistence: IAM Anomalous Grant" AND '
        '-resource.type:"compute"'
    )

    request = securitycenter.CreateMuteConfigRequest()
    request.parent = parent_path
    request.mute_config_id = mute_config_id
    request.mute_config = mute_config

    mute_config = client.create_mute_config(request=request)
    print(f"Mute rule created successfully: {mute_config.name}")

REST API

Di Security Command Center API, gunakan metode muteConfigs create untuk membuat aturan penonaktifan. Isi permintaan adalah instance MuteConfig.

Kecuali residensi data diaktifkan, Anda dapat menggunakan Security Command Center API v1 atau v2. API v2 tersedia sebagai rilis Pratinjau. Jika residensi data diaktifkan, API v2 adalah satu-satunya API yang tersedia.

Jika Anda menggunakan Security Command Center API v1, gunakan endpoint versi 1 untuk memanggil muteConfigs create. Dalam isi permintaan, gunakan definisi MuteConfig versi 1:

POST https://securitycenter.googleapis.com/v1/PARENT/PARENT_ID/muteConfigs?muteConfigId=MUTE_CONFIG_ID -d

  {
    "description": "RULE_DESCRIPTION",
    "filter": FILTER
  }

Jika Anda menggunakan Security Command Center API v2, gunakan endpoint versi 2 untuk memanggil muteConfigs create. Dalam isi permintaan, gunakan definisi MuteConfig versi 2:

POST https://securitycenter.googleapis.com/v2/PARENT/PARENT_ID/locations/LOCATION/muteConfigs?muteConfigId=MUTE_CONFIG_ID -d

  {
    "description": "RULE_DESCRIPTION",
    "filter": FILTER
    "type": "STATIC"
  }

Ganti kode berikut:

  • PARENT: resource induk untuk aturan penonaktifan (organizations, folders, atau projects)
  • PARENT_ID: ID organisasi, folder, atau project induk
  • LOCATION: Khusus untuk v2, menentukan lokasi Security Command Center tempat aturan penonaktifan diterapkan. Jika kolom lokasi dihilangkan, nilai defaultnya adalah global.
  • MUTE_CONFIG_ID: nama aturan penonaktifan (antara 1 dan 63 karakter)
  • RULE_DESCRIPTION: deskripsi aturan penonaktifan (maks. 1.024 karakter)
  • FILTER: ekspresi yang Anda tentukan untuk memfilter temuan

    Misalnya, untuk menonaktifkan temuan OPEN_FIREWALL, filter Anda dapat berupa "category=\"OPEN_FIREWALL\"".

Responsnya mencakup ID konfigurasi penonaktifan, yang dapat Anda gunakan untuk melihat, memperbarui, dan menghapus aturan penonaktifan, seperti yang dijelaskan dalam Mengelola aturan penonaktifan.

Temuan baru yang sama persis dengan filter akan disembunyikan, dan atribut mute untuk temuan tersebut ditetapkan ke MUTED.

Properti penemuan yang tidak didukung untuk aturan penonaktifan

Aturan penonaktifan tidak mendukung semua properti penemuan dalam filter. Properti berikut tidak didukung dalam filter aturan bisukan.

  • createTime
  • eventTime
  • mute
  • mute_initiator
  • mute_update_time
  • name
  • parent
  • security_marks
  • source_properties
  • state

Nonaktifkan properti temuan

Bagian ini mencantumkan properti temuan yang dibisukan, dan menjelaskan pengaruhnya oleh operasi bisu:

  • mute: ditetapkan ke UNDEFINED saat temuan dibuat dan perubahan dalam skenario berikut:
    • MUTED: temuan dibisukan secara manual atau dengan aturan bisu.
    • UNMUTED: pengguna membunyikan temuan.
  • mute_update_time: waktu temuan dibisukan atau dibunyikan
  • mute_initiator: ID untuk aturan utama atau aturan mute yang menonaktifkan temuan

Hentikan notifikasi untuk temuan yang dibisukan

Jika Anda mengaktifkan notifikasi penemuan, temuan yang dinonaktifkan dan cocok dengan filter notifikasi akan tetap memicu notifikasi di Pub/Sub.

Guna menghentikan notifikasi untuk temuan yang dinonaktifkan, gunakan atribut mute untuk mengecualikan temuan yang dinonaktifkan dalam filter NotificationConfig. Misalnya, filter berikut hanya mengirimkan notifikasi untuk temuan aktif yang tidak dibisukan atau saat atribut mute belum ditetapkan:

FILTER="state=\"ACTIVE\" AND -mute=\"MUTED\""

Mengelola aturan penonaktifan

Anda dapat melihat, memperbarui, dan menghapus aturan penonaktifan berdasarkan cakupan peran IAM Anda. Dengan peran tingkat organisasi, Anda akan melihat aturan penonaktifan untuk semua folder dan project dalam organisasi. Jika memiliki peran level folder, Anda dapat mengakses dan mengelola aturan penonaktifan untuk folder tertentu dan semua subfolder dan project dalam folder tersebut. Dengan peran level project, Anda dapat mengelola aturan penonaktifan dalam project tertentu.

Security Command Center Premium mendukung pemberian peran di level organisasi, folder, dan project. Security Command Center Standard hanya mendukung pemberian peran di tingkat organisasi. Untuk mengetahui informasi selengkapnya, lihat Kontrol akses.

Mencantumkan aturan penonaktifan

Anda dapat membuat daftar aturan penonaktifan dalam organisasi, folder, atau project menggunakan Konsol Google Cloud, gcloud CLI, atau Security Command Center API.

Kemampuan Anda dalam membuat daftar aturan penonaktifan untuk cakupan tertentu, bergantung pada izin yang diberikan ke peran IAM Anda.

Jika residensi data diaktifkan untuk Security Command Center, cakupan perintah daftar juga dibatasi ke lokasi Security Command Center yang dipilih.

Untuk mengetahui kode contoh yang mencantumkan aturan penonaktifan, lihat Mencantumkan aturan penonaktifan.

Untuk mencantumkan aturan penonaktifan bagi organisasi, folder, atau project, klik tab untuk prosedur yang ingin Anda gunakan:

Konsol

  1. Di Konsol Google Cloud, buka tab Mute rules di halaman Settings Security Command Center.

    Buka aturan Bisukan audio

  2. Jika perlu, pilih organisasi atau project Google Cloud Anda.

    Pemilih project

  3. Jika residensi data diaktifkan untuk Security Command Center, gunakan pemilih lokasi tepat di bawah pemilih project, untuk memilih lokasi Security Command Center tempat aturan penonaktifan disimpan. Contoh:

    Screenshot pemilih lokasi

  4. Di bagian Aturan penonaktifan, Anda akan melihat detail untuk aturan penonaktifan aktif, termasuk yang berikut:

    • Nama: ID aturan penonaktifan
    • Resource induk: resource tempat aturan mute berada
    • Deskripsi: deskripsi aturan bisukan, jika ada
    • Terakhir diperbarui oleh: akun utama yang terakhir memperbarui aturan
    • Terakhir diperbarui: tanggal dan waktu aturan terakhir diperbarui

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Untuk mencantumkan aturan penonaktifan, jalankan perintah gcloud scc muteconfigs list:

    gcloud scc muteconfigs list --PARENT=PARENT_ID --location=LOCATION
    

    Ganti kode berikut:

    • PARENT: organization, folder, atau project induk yang akan mencantumkan aturan penonaktifan
    • PARENT_ID: ID organisasi, folder, atau project induk
    • LOCATION: Jika residensi data diaktifkan, tentukan lokasi Security Command Center untuk mencantumkan aturan penonaktifan.

      Jika residensi data tidak diaktifkan, penetapan flag --location akan mencantumkan aturan penonaktifan menggunakan Security Command Center API v2, dan satu-satunya nilai yang valid untuk tanda tersebut adalah global.

Go

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv1"
	"cloud.google.com/go/securitycenter/apiv1/securitycenterpb"
	"google.golang.org/api/iterator"
)

// listMuteRules lists mute configs at the organization level will return all the configs
// at the org, folder, and project levels.
// Similarly, listing configs at folder level will list all the configs
// at the folder and project levels.
func listMuteRules(w io.Writer, parent string) error {
	// Use any one of the following resource paths to list mute configurations:
	//         - organizations/{organization_id}
	//         - folders/{folder_id}
	//         - projects/{project_id}
	// parent := fmt.Sprintf("projects/%s", "your-google-cloud-project-id")
	ctx := context.Background()
	client, err := securitycenter.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("securitycenter.NewClient: %w", err)
	}
	defer client.Close()

	req := &securitycenterpb.ListMuteConfigsRequest{Parent: parent}

	// List all mute configs present in the resource.
	it := client.ListMuteConfigs(ctx, req)
	for {
		muteconfig, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return fmt.Errorf("it.Next: %w", err)
		}
		fmt.Fprintf(w, "Muteconfig Name: %s, ", muteconfig.Name)
	}
	return nil
}

Java

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import com.google.cloud.securitycenter.v1.ListMuteConfigsRequest;
import com.google.cloud.securitycenter.v1.MuteConfig;
import com.google.cloud.securitycenter.v1.SecurityCenterClient;
import java.io.IOException;

public class ListMuteRules {

  public static void main(String[] args) {
    // TODO: Replace variables enclosed within {}

    // parent: Use any one of the following resource paths to list mute configurations:
    //         - organizations/{organization_id}
    //         - folders/{folder_id}
    //         - projects/{project_id}
    String parentPath = String.format("projects/%s", "your-google-cloud-project-id");
    listMuteRules(parentPath);
  }

  // Listing mute configs at the organization level will return all the configs
  // at the org, folder, and project levels.
  // Similarly, listing configs at folder level will list all the configs
  // at the folder and project levels.
  public static void listMuteRules(String parent) {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {

      ListMuteConfigsRequest listMuteConfigsRequest =
          ListMuteConfigsRequest.newBuilder().setParent(parent).build();

      // List all mute configs present in the resource.
      for (MuteConfig muteConfig : client.listMuteConfigs(listMuteConfigsRequest).iterateAll()) {
        System.out.println(muteConfig.getName());
      }
    } catch (IOException e) {
      System.out.println("Listing Mute rule failed! \n Exception: " + e);
    }
  }
}

Python

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

def list_mute_rules(parent: str) -> None:
    """
    Listing mute configs at organization level will return all the configs
    at the org, folder and project levels.
    Similarly, listing configs at folder level will list all the configs
    at the folder and project levels.
    Args:
        parent: Use any one of the following resource paths to list mute configurations:
                - organizations/{organization_id}
                - folders/{folder_id}
                - projects/{project_id}
    """
    from google.cloud import securitycenter

    client = securitycenter.SecurityCenterClient()

    request = securitycenter.ListMuteConfigsRequest()
    request.parent = parent

    # List all Mute Configs present in the resource.
    for mute_config in client.list_mute_configs(request):
        print(mute_config.name)

REST API

Di Security Command Center API, gunakan metode muteConfigs list untuk menampilkan aturan penonaktifan. Isi permintaan kosong.

Kecuali residensi data diaktifkan, Anda dapat menggunakan Security Command Center API v1 atau v2. API v2 tersedia sebagai rilis Pratinjau. Jika residensi data diaktifkan, API v2 adalah satu-satunya API yang tersedia.

Jika Anda menggunakan Security Command Center API v1, gunakan endpoint v1 untuk memanggil muteConfigs list:

GET https://securitycenter.googleapis.com/v1/PARENT/PARENT_ID/muteConfigs

Jika Anda menggunakan Security Command Center API v2, gunakan endpoint v2 untuk memanggil muteConfigs list:

GET https://securitycenter.googleapis.com/v2/PARENT/PARENT_ID/locations/LOCATION/muteConfigs

Ganti kode berikut:

  • PARENT: resource induk untuk aturan penonaktifan (organizations, folders, atau projects)
  • PARENT_ID: ID organisasi, folder, atau project induk
  • LOCATION: Khusus untuk v2, menentukan lokasi Security Command Center yang akan mencantumkan aturan penonaktifan. Jika kolom lokasi dihilangkan, nilai defaultnya adalah global.

Responsnya mencakup nama, deskripsi, dan ID konfigurasi penonaktifan untuk aturan penonaktifan.

Melihat konfigurasi aturan penonaktifan

Anda dapat melihat konfigurasi aturan penonaktifan dengan menggunakan Konsol Google Cloud, gcloud CLI, atau Security Command Center API.

Untuk kode contoh yang mengambil konfigurasi aturan penonaktifan, lihat Melihat aturan penonaktifan.

Untuk melihat konfigurasi aturan mute, klik tab untuk prosedur yang ingin Anda gunakan:

Konsol

  1. Di Konsol Google Cloud, buka tab Mute rules di halaman Settings Security Command Center.

    Buka aturan Bisukan audio

  2. Jika perlu, pilih organisasi atau project Google Cloud Anda.

    Pemilih project

  3. Jika residensi data diaktifkan untuk Security Command Center, gunakan pemilih lokasi tepat di bawah pemilih project untuk memilih lokasi Security Command Center dari aturan penonaktifan. Contoh:

    Screenshot pemilih lokasi

  4. Di bagian Aturan penonaktifan, Anda akan melihat daftar aturan penonaktifan.

  5. Klik nama aturan yang ingin Anda lihat.

    Halaman akan terbuka dengan konfigurasi aturan bisukan audio.

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Untuk melihat konfigurasi aturan mute, jalankan perintah gcloud scc muteconfigs get:

    gcloud scc muteconfigs get MUTE_CONFIG_ID \
     --PARENT=PARENT_ID --location=LOCATION
    

    Ganti kode berikut:

    • MUTE_CONFIG_ID: ID untuk aturan penonaktifan
    • PARENT: resource induk untuk aturan penonaktifan (organization, folder, atau project)
    • PARENT_ID: ID organisasi, folder, atau project
    • LOCATION: Jika residensi data diaktifkan, tentukan lokasi Security Command Center tempat aturan bisukan disimpan. Nilai defaultnya adalah global.

      Jika residensi data tidak diaktifkan, penetapan tanda --location akan mendapatkan aturan penonaktifan menggunakan Security Command Center API v2, dan satu-satunya nilai yang valid untuk tanda tersebut adalah global.

Go

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv1"
	"cloud.google.com/go/securitycenter/apiv1/securitycenterpb"
)

// getMuteRule retrieves a mute configuration given its resource name.
func getMuteRule(w io.Writer, parent string, muteConfigId string) error {
	// Use any one of the following resource paths to get mute configuration:
	//         - organizations/{organization_id}
	//         - folders/{folder_id}
	//         - projects/{project_id}
	// parent := fmt.Sprintf("projects/%s", "your-google-cloud-project-id")
	//
	// Name of the mute config to retrieve.
	// muteConfigId := "mute-config-id"
	ctx := context.Background()
	client, err := securitycenter.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("securitycenter.NewClient: %w", err)
	}
	defer client.Close()

	req := &securitycenterpb.GetMuteConfigRequest{
		Name: fmt.Sprintf("%s/muteConfigs/%s", parent, muteConfigId),
	}

	muteconfig, err := client.GetMuteConfig(ctx, req)
	if err != nil {
		return fmt.Errorf("Failed to retrieve Muteconfig: %w", err)
	}
	fmt.Fprintf(w, "Muteconfig Name: %s ", muteconfig.Name)
	return nil
}

Java

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import com.google.cloud.securitycenter.v1.MuteConfig;
import com.google.cloud.securitycenter.v1.MuteConfigName;
import com.google.cloud.securitycenter.v1.SecurityCenterClient;
import java.io.IOException;

public class GetMuteRule {

  public static void main(String[] args) {
    // TODO(Developer): Replace the following variables

    // parentPath: Use any one of the following options:
    //             - organizations/{organization_id}
    //             - folders/{folder_id}
    //             - projects/{project_id}
    String parentPath = String.format("projects/%s", "your-google-cloud-project-id");

    // muteConfigId: Name of the mute config to retrieve.
    String muteConfigId = "mute-config-id";

    getMuteRule(parentPath, muteConfigId);
  }

  // Retrieves a mute configuration given its resource name.
  public static void getMuteRule(String projectId, String muteConfigId) {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {
      // Use appropriate MuteConfigName methods depending on the type of parent.
      // (org -> MuteConfigName.ofOrganizationMuteConfigName()
      // folder -> MuteConfigName.ofFolderMuteConfigName()
      // project -> MuteConfigName.ofProjectMuteConfigName)
      MuteConfig muteConfig =
          client.getMuteConfig(MuteConfigName.ofProjectMuteConfigName(projectId, muteConfigId));

      System.out.println("Retrieved the mute config: " + muteConfig);
    } catch (IOException e) {
      System.out.println("Mute rule retrieval failed! \n Exception: " + e);
    }
  }
}

Python

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

def get_mute_rule(mute_config_name: str) -> None:
    """
    Retrieves a mute configuration given its resource name.
    Args:
        mute_config_name: Name of the mute config to retrieve.
                          Use any one of the following formats:
                          - organizations/{organization}/muteConfigs/{config_id}
                          - folders/{folder}/muteConfigs/{config_id}
                          - projects/{project}/muteConfigs/{config_id}
    """
    from google.cloud import securitycenter

    client = securitycenter.SecurityCenterClient()

    request = securitycenter.GetMuteConfigRequest()
    request.name = mute_config_name

    mute_config = client.get_mute_config(request)
    print(f"Retrieved the mute rule: {mute_config.name}")

REST API

Di Security Command Center API, gunakan metode muteConfigs get untuk menampilkan konfigurasi aturan penonaktifan. Isi permintaan kosong.

Guna mendapatkan CONFIG_ID untuk aturan penonaktifan, pertama-tama jalankan panggilan API ke Mencantumkan aturan penonaktifan. Responsnya mencakup ID konfigurasi untuk aturan penonaktifan yang ditampilkan.

Kecuali residensi data diaktifkan, Anda dapat menggunakan Security Command Center API v1 atau v2. API v2 tersedia sebagai rilis Pratinjau. Jika residensi data diaktifkan, API v2 adalah satu-satunya API yang tersedia.

Jika Anda menggunakan Security Command Center API v1, gunakan endpoint v1 untuk memanggil muteConfigs get:

GET https://securitycenter.googleapis.com/v1/PARENT/PARENT_ID/muteConfigs/CONFIG_ID

Jika Anda menggunakan Security Command Center API v2, gunakan endpoint v2 untuk memanggil muteConfigs get:

GET https://securitycenter.googleapis.com/v2/PARENT/PARENT_ID/locations/LOCATION/muteConfigs/CONFIG_ID

Ganti kode berikut:

  • PARENT: resource induk untuk aturan penonaktifan (organizations, folders, atau projects)
  • PARENT_ID: ID untuk organisasi, folder, atau project
  • LOCATION: Khusus untuk v2, menentukan lokasi Security Command Center tempat aturan penonaktifan disimpan. Jika kolom lokasi dihilangkan, nilai defaultnya adalah global.
  • CONFIG_ID: ID numerik aturan bisu

Memperbarui aturan penonaktifan

Anda dapat memperbarui deskripsi atau menemukan filter aturan bisukan dengan menggunakan Konsol Google Cloud, gcloud CLI, atau Security Command Center API.

Anda tidak dapat mengubah ID, organisasi induk, folder, atau project, atau lokasi aturan penonaktifan. Untuk mengubah salah satu nilai ini, Anda harus membuat aturan penonaktifan baru.

Jika sebelumnya Anda membunyikan temuan, temuan tersebut akan dibisukan lagi jika cocok dengan aturan bisukan yang diperbarui di Konsol Google Cloud. Untuk mengetahui informasi selengkapnya, lihat Temuan yang dibunyikan menggantikan aturan penonaktifan.

Untuk kode contoh yang memperbarui aturan penonaktifan, lihat Memperbarui aturan penonaktifan.

Untuk memperbarui aturan penonaktifan, klik tab untuk prosedur yang ingin Anda gunakan:

Konsol

  1. Di Konsol Google Cloud, buka tab Mute rules di halaman Settings Security Command Center.

    Buka aturan Bisukan audio

  2. Pilih organisasi atau project Google Cloud yang merupakan resource induk untuk aturan penonaktifan yang ingin diubah. Pemilih project

  3. Jika residensi data diaktifkan untuk Security Command Center, gunakan pemilih lokasi tepat di bawah pemilih project, untuk memilih lokasi Security Command Center dari aturan penonaktifan. Contoh:

    Screenshot pemilih lokasi

  4. Klik nama aturan bisu yang ingin Anda ubah.

    Jika tidak memilih project atau organisasi yang sesuai, Anda mungkin akan melihat catatan yang memberi tahu bahwa Anda tidak memiliki izin untuk mengubah aturan pembisuan.

  5. Masukkan deskripsi baru, lalu klik Simpan.

  6. Perbarui atau ubah filter.

    Untuk mengetahui petunjuknya, lihat Membuat aturan penonaktifan.

  7. Untuk melihat temuan yang cocok dengan filter yang diperbarui, klik Preview Matching Findings.

    Sebuah tabel akan memuat temuan yang cocok dengan kueri baru.

  8. Klik Save.

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Untuk memperbarui aturan penonaktifan, jalankan perintah gcloud scc muteconfigs update:

      gcloud scc muteconfigs update MUTE_CONFIG_ID \
        --PARENT=PARENT_ID \
        --location=LOCATION
        --description=RULE_DESCRIPTION \
        --filter=FILTER
    

    Ganti kode berikut:

    • MUTE_CONFIG_ID: ID untuk aturan penonaktifan.
    • PARENT: resource induk untuk aturan penonaktifan (organization, folder, atau project).
    • PARENT_ID: ID untuk organisasi, folder, atau project.
    • LOCATION: Jika residensi data diaktifkan, tentukan lokasi Security Command Center tempat aturan bisukan disimpan. Nilai defaultnya adalah global.

      Jika residensi data tidak diaktifkan, menentukan flag --location akan memperbarui konfigurasi aturan penonaktifan menggunakan Security Command Center API v2, dan satu-satunya nilai yang valid untuk tanda tersebut adalah global.

    • RULE_DESCRIPTION: deskripsi aturan pembisuan (maks: 1.024 karakter).

    • FILTER: ekspresi yang Anda tentukan untuk memfilter temuan.

      Misalnya, untuk menonaktifkan temuan OPEN_FIREWALL, filter Anda dapat menjadi FILTER="category=\"OPEN_FIREWALL\"".

Go

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv1"
	"cloud.google.com/go/securitycenter/apiv1/securitycenterpb"
	"google.golang.org/protobuf/types/known/fieldmaskpb"
)

// updateMuteRule Updates an existing mute configuration.
// The following can be updated in a mute config: description and filter.
func updateMuteRule(w io.Writer, muteConfigName string) error {
	// Specify the name of the mute config to delete.
	// muteConfigName: Use any one of the following formats:
	//                 - organizations/{organization}/muteConfigs/{config_id}
	//                 - folders/{folder}/muteConfigs/{config_id}
	//                 - projects/{project}/muteConfigs/{config_id}
	// muteConfigName := fmt.Sprintf("projects/%s/muteConfigs/%s", "project-id", "mute-config")
	ctx := context.Background()
	client, err := securitycenter.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("securitycenter.NewClient: %w", err)
	}
	defer client.Close()

	updateMuteConfig := &securitycenterpb.MuteConfig{
		Name:        muteConfigName,
		Description: "Updated mute config description",
	}

	req := &securitycenterpb.UpdateMuteConfigRequest{
		MuteConfig: updateMuteConfig,
		// Set the update mask to specify which properties of the mute config should be
		// updated.
		// If empty, all mutable fields will be updated.
		// Make sure that the mask fields match the properties changed in 'updateMuteConfig'.
		// For more info on constructing update mask path, see the proto or:
		// https://cloud.google.com/security-command-center/docs/reference/rest/v1/folders.muteConfigs/patch?hl=en#query-parameters
		UpdateMask: &fieldmaskpb.FieldMask{
			Paths: []string{
				"description",
			},
		},
	}

	response, err := client.UpdateMuteConfig(ctx, req)
	if err != nil {
		return fmt.Errorf("mute rule update failed! %v", err)
	}
	fmt.Fprintf(w, "Mute rule updated %s", response.Name)
	return nil
}

Java

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import com.google.cloud.securitycenter.v1.MuteConfig;
import com.google.cloud.securitycenter.v1.SecurityCenterClient;
import com.google.cloud.securitycenter.v1.UpdateMuteConfigRequest;
import com.google.protobuf.FieldMask;
import java.io.IOException;

public class UpdateMuteRule {

  public static void main(String[] args) {
    // TODO: Replace the variables within {}

    // Specify the name of the mute config to delete.
    // muteConfigName: Use any one of the following formats:
    //                 - organizations/{organization}/muteConfigs/{config_id}
    //                 - folders/{folder}/muteConfigs/{config_id}
    //                 - projects/{project}/muteConfigs/{config_id}
    String muteConfigName = "{any-one-of-the-above-formats}";
    updateMuteRule(muteConfigName);
  }

  // Updates an existing mute configuration.
  // The following can be updated in a mute config: description and filter.
  public static void updateMuteRule(String muteConfigName) {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {

      MuteConfig updateMuteConfig =
          MuteConfig.newBuilder()
              .setName(muteConfigName)
              .setDescription("Updated mute config description")
              .build();

      UpdateMuteConfigRequest updateMuteConfigRequest =
          UpdateMuteConfigRequest.newBuilder()
              .setMuteConfig(updateMuteConfig)
              // Set the update mask to specify which properties of the mute config should be
              // updated.
              // If empty, all mutable fields will be updated.
              // Make sure that the mask fields match the properties changed in 'updateMuteConfig'.
              // For more info on constructing update mask path, see the proto or:
              // https://cloud.google.com/security-command-center/docs/reference/rest/v1/folders.muteConfigs/patch?hl=en#query-parameters
              .setUpdateMask(FieldMask.newBuilder().addPaths("description").build())
              .build();

      MuteConfig response = securityCenterClient.updateMuteConfig(updateMuteConfigRequest);
      System.out.println(response);
    } catch (IOException e) {
      System.out.println("Mute rule update failed! \n Exception: " + e);
    }
  }
}

Python

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

def update_mute_rule(mute_config_name: str) -> None:
    """
    Updates an existing mute configuration.
    The following can be updated in a mute config: description, and filter/ mute rule.
    Args:
        mute_config_name: Specify the name of the mute config to delete.
                          Use any one of the following formats:
                          - organizations/{organization}/muteConfigs/{config_id}
                          - folders/{folder}/muteConfigs/{config_id}
                          - projects/{project}/muteConfigs/{config_id}
    """
    from google.cloud import securitycenter
    from google.protobuf import field_mask_pb2

    client = securitycenter.SecurityCenterClient()

    update_mute_config = securitycenter.MuteConfig()
    update_mute_config.name = mute_config_name
    update_mute_config.description = "Updated mute config description"

    field_mask = field_mask_pb2.FieldMask(paths=["description"])

    request = securitycenter.UpdateMuteConfigRequest()
    request.mute_config = update_mute_config
    # Set the update mask to specify which properties of the Mute Config should be updated.
    # If empty, all mutable fields will be updated.
    # Make sure that the mask fields match the properties changed in 'update_mute_config'.
    # For more info on constructing update mask path, see the proto or:
    # https://cloud.google.com/security-command-center/docs/reference/rest/v1/folders.muteConfigs/patch?hl=en#query-parameters
    request.update_mask = field_mask

    mute_config = client.update_mute_config(request)
    print(f"Updated mute rule : {mute_config}")

REST API

Di Security Command Center API, gunakan metode muteConfigs patch untuk memperbarui aturan penonaktifan. Isi permintaan adalah instance MuteConfig.

Guna mendapatkan CONFIG_ID untuk aturan penonaktifan, jalankan panggilan API untuk mencantumkan aturan penonaktifan. Responsnya mencakup ID konfigurasi untuk aturan penonaktifan yang ditampilkan.

Kecuali residensi data diaktifkan, Anda dapat menggunakan Security Command Center API v1 atau v2. API v2 tersedia sebagai rilis Pratinjau. Jika residensi data diaktifkan, API v2 adalah satu-satunya API yang tersedia.

Jika Anda menggunakan Security Command Center API v1, gunakan endpoint v1 untuk memanggil muteConfigs patch:

PATCH https://securitycenter.googleapis.com/v1/PARENT/PARENT_ID/muteConfigs/CONFIG_ID

  {
    "description": "RULE_DESCRIPTION",
    "filter": "FILTER",
    "type": "STATIC"
  }

Jika Anda menggunakan Security Command Center API v2, gunakan endpoint v2 untuk memanggil muteConfigs patch:

PATCH https://securitycenter.googleapis.com/v2/PARENT/PARENT_ID/locations/LOCATION/muteConfigs/CONFIG_ID

  {
    "description": "RULE_DESCRIPTION",
    "filter": "FILTER",
  }

Ganti kode berikut:

  • PARENT: resource induk untuk aturan penonaktifan (organizations, folders, atau projects)
  • PARENT_ID: ID untuk organisasi, folder, atau project
  • LOCATION: Khusus untuk v2, menentukan lokasi Security Command Center tempat aturan penonaktifan disimpan. Jika kolom lokasi dihilangkan, nilai defaultnya adalah global.
  • CONFIG_ID: ID numerik aturan bisu
  • RULE_DESCRIPTION: deskripsi aturan penonaktifan (maks. 1.024 karakter)
  • FILTER: ekspresi yang Anda tentukan untuk memfilter temuan

    Misalnya, untuk menonaktifkan temuan OPEN_FIREWALL, filter Anda dapat berupa "category=\"OPEN_FIREWALL\"".

Temuan baru yang sama persis dengan filter akan disembunyikan, dan atribut mute untuk temuan tersebut ditetapkan ke MUTED.

Memperbarui aturan penonaktifan tidak otomatis mengaktifkan temuan apa pun yang dibisukan oleh aturan sebelumnya. Anda harus mengaktifkan hasil temuan secara manual.

Hapus aturan penonaktifan

Anda dapat menghapus aturan penonaktifan menggunakan Google Cloud Console, gcloud CLI, atau Security Command Center API.

Sebelum menghapus aturan penonaktifan, pahami hal-hal berikut:

  • Anda tidak dapat memulihkan aturan penonaktifan yang dihapus.
  • Menghapus aturan penonaktifan tidak otomatis mengaktifkan temuan apa pun yang dibisukan. Anda harus membunyikan temuan secara manual atau terprogram.
  • Temuan mendatang yang cocok dengan filter dalam aturan penonaktifan yang dihapus tidak akan dinonaktifkan.

Untuk kode contoh yang menghapus aturan penonaktifan, lihat Menghapus aturan penonaktifan.

Untuk menghapus aturan penonaktifan, klik tab untuk prosedur yang ingin Anda gunakan:

Konsol

  1. Di Konsol Google Cloud, buka tab Mute rules di halaman Settings Security Command Center.

    Buka aturan Bisukan audio

  2. Jika perlu, pilih organisasi atau project Google Cloud Anda.

    Pemilih project

  3. Jika residensi data diaktifkan untuk Security Command Center, gunakan pemilih lokasi tepat di bawah pemilih project, untuk memilih lokasi Security Command Center tempat aturan penonaktifan disimpan. Contoh:

    Screenshot pemilih lokasi

  4. Klik nama aturan bisukan yang ingin Anda hapus.

  5. Klik Delete.

  6. Baca dialognya dan, jika sudah puas, klik Delete.

gcloud

  1. Di konsol Google Cloud, aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.

  2. Untuk menghapus aturan penonaktifan, jalankan perintah gcloud scc muteconfigs delete:

    gcloud scc muteconfigs delete MUTE_CONFIG_ID \
     --PARENT=PARENT_ID --location=LOCATION
    

    Ganti kode berikut:

    • MUTE_CONFIG_ID: ID untuk konfigurasi bisu
    • PARENT: resource induk untuk aturan penonaktifan (organization, folder, atau project)
    • PARENT_ID: ID untuk organisasi, folder, atau project
    • LOCATION: Jika residensi data diaktifkan, tentukan lokasi Security Command Center tempat konfigurasi aturan penonaktifan disimpan. Nilai defaultnya adalah global.

      Jika residensi data tidak diaktifkan, menentukan flag --location akan menghapus aturan penonaktifan menggunakan Security Command Center API v2, dan satu-satunya nilai yang valid untuk tanda tersebut adalah global.

  3. Konfirmasi permintaan Anda untuk menghapus aturan penonaktifan.

Go

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv1"
	"cloud.google.com/go/securitycenter/apiv1/securitycenterpb"
)

// deleteMuteRule deletes a mute configuration given its resource name.
// Note: Previously muted findings are not affected when a mute config is deleted.
func deleteMuteRule(w io.Writer, parent string, muteConfigId string) error {
	// parent: Use any one of the following options:
	//             - organizations/{organization_id}
	//             - folders/{folder_id}
	//             - projects/{project_id}
	// parent := fmt.Sprintf("projects/%s", "your-google-cloud-project-id")
	//
	// muteConfigId: Specify the name of the mute config to delete.
	// muteConfigId := "mute-config-id"
	ctx := context.Background()
	client, err := securitycenter.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("securitycenter.NewClient: %w", err)
	}
	defer client.Close()

	req := &securitycenterpb.DeleteMuteConfigRequest{
		Name: fmt.Sprintf("%s/muteConfigs/%s", parent, muteConfigId),
	}

	if err := client.DeleteMuteConfig(ctx, req); err != nil {
		return fmt.Errorf("failed to delete Muteconfig: %w", err)
	}
	fmt.Fprintf(w, "Mute rule deleted successfully: %s", muteConfigId)
	return nil
}

Java

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.


import com.google.cloud.securitycenter.v1.MuteConfigName;
import com.google.cloud.securitycenter.v1.SecurityCenterClient;
import java.io.IOException;

public class DeleteMuteRule {

  public static void main(String[] args) {
    // TODO(Developer): Replace the following variables
    // parentPath: Use any one of the following options:
    //             - organizations/{organization_id}
    //             - folders/{folder_id}
    //             - projects/{project_id}
    String parentPath = String.format("projects/%s", "your-google-cloud-project-id");

    // muteConfigId: Specify the name of the mute config to delete.
    String muteConfigId = "mute-config-id";

    deleteMuteRule(parentPath, muteConfigId);
  }

  // Deletes a mute configuration given its resource name.
  // Note: Previously muted findings are not affected when a mute config is deleted.
  public static void deleteMuteRule(String projectId, String muteConfigId) {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {
      // Use appropriate MuteConfigName methods depending on the type of parent.
      // org -> MuteConfigName.ofOrganizationMuteConfigName()
      // folder -> MuteConfigName.ofFolderMuteConfigName()
      // project -> MuteConfigName.ofProjectMuteConfigName)
      client.deleteMuteConfig(MuteConfigName.ofProjectMuteConfigName(projectId, muteConfigId));

      System.out.println("Mute rule deleted successfully: " + muteConfigId);
    } catch (IOException e) {
      System.out.println("Mute rule deletion failed! \n Exception: " + e);
    }
  }
}

Python

Contoh berikut menggunakan API v1. Guna memodifikasi contoh untuk v2, ganti v1 dengan v2 dan tambahkan /locations/LOCATION ke nama resource.

Untuk sebagian besar resource, tambahkan /locations/LOCATION ke nama resource setelah /PARENT/PARENT_ID, dengan PARENT adalah organizations, folders, atau projects.

Untuk temuan, tambahkan /locations/LOCATION ke nama resource setelah /sources/SOURCE_ID, dengan SOURCE_ID adalah ID layanan Security Command Center yang mengeluarkan temuan tersebut.

def delete_mute_rule(mute_config_name: str) -> None:
    """
    Deletes a mute configuration given its resource name.
    Note: Previously muted findings are not affected when a mute config is deleted.
    Args:
        mute_config_name: Specify the name of the mute config to delete.
                          Use any one of the following formats:
                          - organizations/{organization}/muteConfigs/{config_id}
                          - folders/{folder}/muteConfigs/{config_id} or
                          - projects/{project}/muteConfigs/{config_id}
    """
    from google.cloud import securitycenter

    client = securitycenter.SecurityCenterClient()

    request = securitycenter.DeleteMuteConfigRequest()
    request.name = mute_config_name

    client.delete_mute_config(request)
    print(f"Mute rule deleted successfully: {mute_config_name}")

REST API

Di Security Command Center API, gunakan metode muteConfigs delete untuk menghapus aturan penonaktifan. Isi permintaan kosong.

Guna mendapatkan CONFIG_ID untuk aturan penonaktifan, jalankan panggilan API ke Mencantumkan aturan penonaktifan. Responsnya mencakup ID konfigurasi untuk aturan penonaktifan yang ditampilkan.

Kecuali residensi data diaktifkan, Anda dapat menggunakan Security Command Center API v1 atau v2. API v2 tersedia sebagai rilis Pratinjau. Jika residensi data diaktifkan, API v2 adalah satu-satunya API yang tersedia.

Jika Anda menggunakan Security Command Center API v1, gunakan endpoint v1 untuk memanggil muteConfigs delete:

DELETE https://securitycenter.googleapis.com/v1/PARENT/PARENT_ID/muteConfigs/CONFIG_ID

Jika Anda menggunakan Security Command Center API v2, gunakan endpoint v2 untuk memanggil muteConfigs delete:

DELETE https://securitycenter.googleapis.com/v2/PARENT/PARENT_ID/locations/LOCATION/muteConfigs/CONFIG_ID

Ganti kode berikut:

  • PARENT: resource induk untuk aturan penonaktifan (organizations, folders, atau projects)
  • PARENT_ID: ID untuk organisasi, folder, atau project
  • LOCATION: Khusus untuk v2, menentukan lokasi Security Command Center tempat aturan penonaktifan disimpan. Jika kolom lokasi dihilangkan, nilai defaultnya adalah global.
  • CONFIG_ID: ID numerik aturan bisu

Langkah selanjutnya

Pelajari lebih lanjut cara memfilter notifikasi temuan.

Pelajari contoh filter lainnya yang dapat Anda gunakan.