Disattivazione dei risultati in Security Command Center

Questa pagina spiega come ridurre il volume dei risultati che ricevi in Security Command Center disattivando i risultati.

Se disattivi l'audio di un risultato, questo viene nascosto nella visualizzazione predefinita dei risultati nella console Google Cloud. Puoi disattivare manualmente o tramite programmazione i risultati e creare filtri per disattivare automaticamente i risultati esistenti e futuri in base ai criteri specificati.

I servizi di rilevamento di Security Command Center forniscono valutazioni di sicurezza ampie del tuo deployment Google Cloud, ma potresti scoprire che alcuni risultati non sono appropriati o pertinenti per la tua organizzazione o i tuoi progetti. Un volume elevato di risultati può anche complicare la capacità degli analisti della sicurezza di identificare e correggere efficacemente i rischi più critici. La disattivazione dei risultati ti consente di risparmiare tempo per esaminare o rispondere ai risultati relativi alla sicurezza per gli asset isolati o che rientrano nei parametri aziendali accettabili.

L'oscuramento dei risultati presenta diversi vantaggi rispetto alla disattivazione dei rilevatori:

  • Puoi creare filtri personalizzati per perfezionare i risultati che vengono disattivati.
  • Puoi utilizzare le regole di disattivazione per disattivare temporaneamente o indefinitamente i risultati.
  • La disattivazione dei risultati non impedisce la scansione degli asset sottostanti. I risultati vengono comunque generati, ma rimangono nascosti finché non decidi di visualizzarli.

Autorizzazioni

Per disattivare i risultati, devi disporre di uno dei seguenti ruoli IAM (Identity and Access Management) a livello di organizzazione, cartella o progetto:

  • Visualizza le regole di disattivazione:
    • Visualizzatore amministratore Centro sicurezza (roles/securitycenter.adminViewer)
    • Visualizzatore impostazioni Centro sicurezza (roles/securitycenter.settingsViewer)
    • Security Center Mute Configurations Viewer (roles/securitycenter.muteConfigsViewer)
  • Visualizza, crea, aggiorna ed elimina le regole di disattivazione:
    • Amministratore di Security Center (roles/securitycenter.admin)
    • Editor amministratore Centro sicurezza (roles/securitycenter.adminEditor)
    • Security Center Settings Editor (roles/securitycenter.settingsEditor)
    • Security Center Mute Configurations Editor (roles/securitycenter.muteConfigsEditor)
  • Disattivare manualmente i risultati:
    • Editor risultati Centro sicurezza (roles/securitycenter.findingsEditor)

Puoi anche creare e concedere ruoli personalizzati con alcune o tutte le seguenti autorizzazioni:

  • Autorizzazioni di lettura delle regole di disattivazione
    • securitycenter.muteconfigs.get
    • securitycenter.muteconfigs.list
  • Autorizzazioni di scrittura per le regole di disattivazione
    • securitycenter.muteconfigs.create
    • securitycenter.muteconfigs.update
    • securitycenter.muteconfigs.delete
  • Trovare le autorizzazioni di scrittura
    • securitycenter.findings.setMute
    • securitycenter.findings.bulkMuteUpdate

La tua capacità di disattivare i risultati è conforme ai ruoli concessi a livello di organizzazione, cartella o progetto. Puoi disattivare i risultati in cartelle o progetti specifici e limitare la possibilità di altri utenti di disattivare i risultati in base all'accesso che viene loro concesso. Ad esempio, se hai accesso a un singolo progetto, puoi disattivare i risultati solo in quel progetto. Se hai accesso a una cartella, puoi disattivare i risultati in qualsiasi sottocartella o progetto al suo interno.

Per scoprire di più sui ruoli di Security Command Center, consulta Controllo degli accessi.

Creare e gestire le regole di disattivazione

Le regole di disattivazione sono configurazioni di Security Command Center che utilizzano i filtri che crei per disattivare automaticamente i risultati futuri ed esistenti in base ai criteri specificati. Puoi creare filtri con regole di disattivazione statiche o dinamiche.

Le regole di disattivazione statica disattivano i risultati futuri a tempo indeterminato. Le regole di disattivazione dinamica disattivano temporaneamente i risultati futuri ed esistenti fino a una data specificata o indefinitamente finché un risultato non corrisponde più alla configurazione.

Tipi di regole di disattivazione

Security Command Center supporta le configurazioni di regole di disattivazione statiche e dinamiche. Sebbene sia possibile utilizzare contemporaneamente regole di disattivazione statiche e dinamiche, non è consigliabile. Le regole di disattivazione statiche sostituiscono le regole di disattivazione dinamiche quando vengono applicate allo stesso risultato. Di conseguenza, le regole di disattivazione dinamica non funzioneranno come previsto, il che può creare confusione durante la gestione dei risultati. Pertanto, ti consigliamo di utilizzare esclusivamente un tipo di regola di disattivazione audio.

A meno che tu non stia già utilizzando regole di disattivazione audio statiche, ti consigliamo di utilizzare esclusivamente quelle dinamiche, in quanto offrono maggiore flessibilità.

La tabella seguente fornisce un confronto generale dei due tipi di regole di disattivazione audio. Per maggiori dettagli, vedi Regole di disattivazione statiche e Regole di disattivazione dinamiche.

Regole di disattivazione statiche Regole di disattivazione dinamica
Intervenire indefinitamente in base ai risultati. Può intervenire su un risultato temporaneamente con un'ora di scadenza o indefinitamente se non è impostata un'ora di scadenza.
Non si applica ai risultati esistenti. Applicare ai risultati nuovi ed esistenti.
Hanno la precedenza sulle regole di disattivazione dinamica. Hanno una priorità inferiore e vengono sostituite dalle regole di disattivazione statica quando entrambi i tipi si applicano a un rilevamento.

Regole di disattivazione statiche

  • Le regole di disattivazione statiche vengono applicate a tempo indeterminato. Quando un risultato corrisponde alla tua configurazione di disattivazione audio statica, Security Command Center imposta automaticamente la proprietà mute del risultato su MUTED finché non la modifichi manualmente.
  • Le regole di disattivazione statiche non hanno alcun effetto sui risultati esistenti. Si applicano solo ai risultati appena creati o aggiornati dopo la definizione della regola. Se vuoi anche disattivare i risultati esistenti simili, utilizza gli stessi filtri per disattivare collettivamente i risultati.
  • Le regole di disattivazione statiche hanno la precedenza sulle regole di disattivazione dinamiche. Pertanto, tutti i nuovi risultati che corrispondono a una regola di disattivazione statica definita sono considerati disattivati anche se corrispondono anche a una regola di disattivazione dinamica definita.

Regole di disattivazione dinamica

  • Le regole di disattivazione dinamica possono agire su un risultato temporaneamente con un'ora di scadenza o a tempo indeterminato se non è impostata un'ora di scadenza. Quando un risultato esistente o appena creato corrisponde alla tua configurazione di disattivazione dinamica, Security Command Center imposta automaticamente la proprietà mute del risultato su MUTED fino alla data di scadenza specificata o fino a quando non vengono apportate modifiche al risultato o alla configurazione stessa. Quando una regola di disattivazione dinamica scade, Security Command Centerrimuove la regola dal risultato. Se il risultato non corrisponde ad altre regole di disattivazione dinamica, la proprietà mute viene reimpostata automaticamente su UNDEFINED.
  • Le regole di disattivazione dinamica vengono applicate automaticamente ai risultati esistenti che corrispondono alla tua configurazione, nonché ai risultati appena creati o aggiornati.
  • Le regole di disattivazione dinamica hanno una priorità inferiore e vengono sostituite dalle regole di disattivazione statica quando entrambi i tipi si applicano a un rilevamento.

Ti consigliamo di utilizzare esclusivamente regole di disattivazione audio dinamiche. La possibilità di disattivare temporaneamente i risultati e riattivarli automaticamente rende le regole di disattivazione dinamica un'opzione più flessibile rispetto alle regole di disattivazione statica.

Se utilizzi le regole di disattivazione statiche per ridurre il numero di risultati esaminati manualmente e vuoi eseguire la migrazione alle regole di disattivazione dinamiche, consulta Eseguire la migrazione dalle regole di disattivazione statiche a quelle dinamiche.

Ambito delle regole di disattivazione

Tieni conto dell'ambito di una regola di disattivazione quando crei i filtri.

Ad esempio, se un filtro viene scritto per disattivare i risultati in Project A, ma il filtro stesso viene creato in Project B, il filtro potrebbe non corrispondere a nessun risultato.

Analogamente, se la residenza dei dati è attivata, l'ambito di una regola di disattivazione è limitato alla località di Security Command Center in cui è stata creata. Ad esempio, se crei una regola di disattivazione nella località Stati Uniti (us), la regola di disattivazione non disattiva i risultati archiviati nelle località Unione Europea (eu) o Globale (global). Per ulteriori informazioni sulla residenza dei dati e sulle regole di disattivazione, consulta Regole di disattivazione, esportazioni continue e residenza dei dati.

Per scoprire di più sulla creazione dei filtri, consulta Filtrare le notifiche.

Limitazioni delle regole di disattivazione

Le regole di disattivazione non supportano tutte le proprietà dei risultati. Per un elenco delle proprietà non supportate dalle regole di disattivazione, consulta Proprietà di ricerca non supportate per le regole di disattivazione.

Puoi creare, visualizzare, aggiornare ed eliminare le regole di disattivazione in base all'ambito dei tuoi ruoli IAM. Con i ruoli a livello di organizzazione, vengono visualizzate le regole di disattivazione per tutte le cartelle e tutti i progetti all'interno dell'organizzazione. Se disponi di ruoli a livello di cartella, puoi accedere e gestire le regole di disattivazione audio per cartelle specifiche e per tutte le sottocartelle e i progetti al loro interno. I ruoli a livello di progetto ti consentono di gestire le regole di disattivazione in progetti specifici.

Security Command Center Premium supporta la concessione di ruoli a livello di organizzazione, cartella e progetto. Security Command Center Standard supporta la concessione di ruoli solo a livello di organizzazione. Per ulteriori informazioni, consulta Controllo dell'accesso.

Localizzazione dei dati e regole di disattivazione

Se la residenza dei dati è abilitata, le configurazioni che definiscono le regole di disattivazione, ovvero le risorse muteConfig, sono soggette al controllo della residenza dei dati e vengono archiviate in una posizione di Security Command Center selezionata.

Per applicare una regola di disattivazione ai risultati in una località di Security Command Center, devi creare la regola di disattivazione nella stessa località dei risultati a cui si applica.

Poiché i filtri utilizzati nelle regole di disattivazione possono contenere dati soggetti a controlli della residenza, assicurati di specificare la posizione corretta prima di crearli. Security Command Center non limita la località in cui crei le regole di disattivazione o le esportazioni in streaming.

Le regole di disattivazione vengono archiviate solo nella posizione in cui vengono create e non possono essere visualizzate o modificate in altre posizioni.

Una volta creata una regola di disattivazione audio, non puoi modificarne la posizione. Per modificare la posizione, devi eliminare la regola di disattivazione audio e ricrearla nella nuova posizione.

Per visualizzare le regole di disattivazione nella console Google Cloud, devi prima impostare la visualizzazione della console Google Cloud sulla posizione in cui sono state create.

Le stesse regole si applicano alla rappresentazione dell'API di una regola di disattivazione, MuteConfig.

Per recuperare un MuteConfig utilizzando le chiamate API, devi specificare la posizione nel nome completo della risorsa delMuteConfig. Ad esempio:

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

Analogamente, per recuperare un muteConfig utilizzando gcloud CLI, puoi specificare la posizione utilizzando il flag --location. Ad esempio:

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

Crea regola di disattivazione

La tua organizzazione può creare un massimo di 1000 regole di disattivazione audio.

Puoi creare regole di disattivazione audio statiche o dinamiche utilizzando la console Google Cloud, la gcloud CLI o l'API Security Command Center. Ti consigliamo di utilizzare le regole di disattivazione dinamica esclusivamente nelle configurazioni delle regole di disattivazione, in quanto sono più flessibili di quelle statiche. Per un confronto dei tipi di regole di disattivazione, vedi Tipi di regole di disattivazione.

Per codice campione che crea una regola di disattivazione, consulta Creare una regola di disattivazione.

Per creare una regola di disattivazione, fai clic sulla scheda della procedura che vuoi utilizzare:

Console

  1. Nella console Google Cloud, vai alla pagina Risultati di Security Command Center.

    Vai a Risultati

  2. Se necessario, seleziona il tuo progetto o la tua organizzazione Google Cloud.

  3. (Facoltativo) Se la residenza dei dati è abilitata per Security Command Center, modifica la posizione dei dati in base alle esigenze.

    Per modificare la posizione dei dati, fai clic sul selettore della posizione nella barra delle azioni.

    Viene visualizzato un elenco di località. Seleziona la nuova posizione.

  4. Fai clic su Opzioni di disattivazione audio e poi seleziona Gestisci le regole di disattivazione audio.

  5. Fai clic su Crea regola di disattivazione e poi seleziona Regola di disattivazione dinamica o Regola di disattivazione statica. Per ulteriori informazioni sui tipi di regole di disattivazione, consulta Tipi di regole di disattivazione.

  6. Inserisci un ID regola di disattivazione. Questo valore è obbligatorio.

  7. Inserisci una descrizione della regola di disattivazione che fornisca il contesto del motivo per cui i risultati sono disattivati. Questo valore è facoltativo, ma consigliato.

    Risorsa principale indica l'ambito in cui verrà creata e applicata la regola di disattivazione dell'audio.

  8. Se stai creando una regola di disattivazione statica o una regola di disattivazione dinamica senza scadenza, vai al passaggio successivo. Se stai creando una regola di disattivazione dinamica per disattivare temporaneamente i risultati, completa i seguenti passaggi:

    1. Seleziona la casella di controllo Disattiva temporaneamente i risultati corrispondenti.
    2. Seleziona o inserisci la data di scadenza della regola di disattivazione audio dinamica. Questo valore indica per quanto tempo la regola disattiva i risultati corrispondenti.
  9. Nel campo Query sui risultati, crea le istruzioni di query facendo clic su Aggiungi filtro. In alternativa, puoi digitare le istruzioni di query manualmente.

    La finestra di dialogo Seleziona filtro ti consente di scegliere gli attributi e i valori di ricerca supportati.

    1. Seleziona un attributo del rilevamento o digita il relativo nome nella casella Ricerca attributi del rilevamento. Viene visualizzato un elenco degli attributi secondari disponibili.
    2. Seleziona un attributo secondario. Viene visualizzato un campo di selezione in cui puoi creare l'istruzione di query utilizzando il sottoattributo selezionato, un operatore di query e uno o più valori per il sottoattributo.
    3. Seleziona l'operatore e uno o più valori per il sottoattributo dal riquadro. Per ulteriori informazioni sugli operatori di query e sulle funzioni che utilizzano, consulta Operatori di query nel menu Aggiungi filtri.
    4. Fai clic su Applica.

      La finestra di dialogo si chiude e la query viene aggiornata.

    5. Ripeti fino a quando la query sui risultati non contiene tutti gli attributi che ti interessano.
  10. Controlla l'accuratezza del filtro. Per apportare modifiche, elimina o aggiungi proprietà e filtra i valori in base alle esigenze.

  11. Fai clic su Anteprima dei risultati corrispondenti.

    Viene visualizzata una tabella con i risultati che corrispondono alla tua query.

  12. Fai clic su Salva.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per creare regole di disattivazione, esegui il comando gcloud scc muteconfigs create:

    gcloud scc muteconfigs create CONFIG_ID \
      --PARENT=PARENT_ID \
      --location=LOCATION
      --description="RULE_DESCRIPTION" \
      --filter="FILTER" \
      --type=MUTE_TYPE \
      --expiry-time=TIMESTAMP

    Sostituisci quanto segue:

    • CONFIG_ID: il nome della regola di disattivazione. L'ID deve utilizzare caratteri alfanumerici e trattini e deve avere una lunghezza compresa tra 1 e 63 caratteri.
    • PARENT: l'ambito nella gerarchia delle risorse a cui si applica la regola di disattivazione, organization, folder o project.
    • PARENT_ID: l'ID numerico dell'organizzazione, della cartella o del progetto principale oppure l'ID alfanumerico del progetto principale.
    • LOCATION: se la residenza dei dati è abilitata, la località di Security Command Center in cui creare una regola di disattivazione. Se la residenza dei dati non è abilitata, utilizza il valore global.
    • RULE_DESCRIPTION: una descrizione della regola di disattivazione audio di massimo 1024 caratteri.
    • FILTER: l'espressione che definisci per filtrare i risultati. Ad esempio, per disattivare i risultati OPEN_FIREWALL, il filtro può essere FILTER="category=\"OPEN_FIREWALL\"".
    • MUTE_TYPE: il tipo di regola di disattivazione che vuoi creare. I tipi di regole di disattivazione audio validi sono DYNAMIC e STATIC. Il tipo di regola di disattivazione audio è impostato su STATIC per impostazione predefinita. Non puoi modificare il tipo di una regola di disattivazione audio dopo averla creata.
    • TIMESTAMP: si applica solo se stai creando una regola di disattivazione dinamica. La stringa data/ora che indica quando scade la regola di disattivazione dinamica. Il valore deve essere impostato su almeno un giorno nel futuro, altrimenti la richiesta verrà rifiutata. Per informazioni sui formati di tempo, consulta gcloud topic datetimes. Quando una regola di disattivazione dinamica scade, viene rimossa da tutti i risultati corrispondenti. Se vuoi che la regola di disattivazione dinamica agisca indefinitamente sui risultati corrispondenti, ometti questo campo.

    La risposta include l'ID regola di disattivazione, che puoi utilizzare per visualizzare, aggiornare ed eliminare le regole di disattivazione, come descritto in Gestire le regole di disattivazione.

Vai


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv2"
	"cloud.google.com/go/securitycenter/apiv2/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\"",
		Type: securitycenterpb.MuteConfig_STATIC,
	}

	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


import com.google.cloud.securitycenter.v2.LocationName;
import com.google.cloud.securitycenter.v2.MuteConfig;
import com.google.cloud.securitycenter.v2.MuteConfig.MuteConfigType;
import com.google.cloud.securitycenter.v2.SecurityCenterClient;
import java.io.IOException;
import java.util.UUID;

public class CreateMuteRule {

  public static void main(String[] args) throws IOException {
    // TODO: Replace the following variables.
    // projectId: Google Cloud Project id.
    String projectId = "google-cloud-project-id";

    // Specify the location of the mute config.
    String location = "global";

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

    createMuteRule(projectId, location, muteConfigId);
  }

  // Creates a mute configuration in a project under a given location.
  public static void createMuteRule(String projectId, String location, String muteConfigId)
      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.
    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\"")
              .setType(MuteConfigType.STATIC)
              .build();

      // You can also create mute rules in an organization/ folder.
      // Construct the parameters according to the parent resource.
      //  * Organization -> client.createMuteConfig(OrganizationLocationName.of(...
      //  * Folder -> client.createMuteConfig(FolderLocationName.of(...
      MuteConfig response = client.createMuteConfig(
          LocationName.of(projectId, location), muteConfig, muteConfigId);
      System.out.println("Mute rule created successfully: " + response.getName());
    }
  }
}

Python

def create_mute_rule(parent_path: str, location_id: str, mute_config_id: str) -> Dict:
    """
    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}
        location_id: Gcp location id; example: 'global'
        mute_config_id: Set a unique id; max of 63 chars.
    Returns:
        Dict: returns the mute rule details
    """

    from google.cloud import securitycenter_v2

    client = securitycenter_v2.SecurityCenterClient()

    mute_config = securitycenter_v2.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"'
    )
    mute_config.type = "STATIC"

    request = securitycenter_v2.CreateMuteConfigRequest()
    request.parent = parent_path + "/locations/" + location_id
    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}")
    return mute_config

REST

Nell'API Security Command Center, utilizza il metodo muteConfigs.create per creare una regola di disattivazione. Il corpo della richiesta è un'istanza di MuteConfig:

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

  {
    "description": "RULE_DESCRIPTION",
    "filter": "FILTER",
    "type": "MUTE_TYPE",
    "expiryTime": "TIMESTAMP"
  }

Sostituisci quanto segue:

  • PARENT: la risorsa principale per la regola di disattivazione (organizations, folders o projects)
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale
  • LOCATION: se la residenza dei dati è abilitata, la località di Security Command Center in cui creare una regola di disattivazione. Se la residenza dei dati non è abilitata, utilizza il valore global.
  • MUTE_CONFIG_ID: il nome della regola di disattivazione (tra 1 e 63 caratteri)
  • RULE_DESCRIPTION: una descrizione della regola di disattivazione audio (massimo 1024 caratteri)
  • FILTER: l'espressione che definisci per filtrare i risultati

    Ad esempio, per disattivare i risultati OPEN_FIREWALL, il filtro può essere "category=\"OPEN_FIREWALL\"".

  • MUTE_TYPE: il tipo di regola di disattivazione che vuoi creare. I tipi di regole di disattivazione audio validi sono DYNAMIC e STATIC. Non puoi modificare il tipo di una regola di disattivazione audio dopo averla creata.

  • TIMESTAMP: si applica solo se stai creando una regola di disattivazione dinamica. La stringa data/ora che indica quando scade la regola di disattivazione dinamica. Il valore deve essere impostato su almeno un giorno nel futuro, altrimenti la richiesta verrà rifiutata. Per informazioni sui formati di tempo, consulta gcloud topic datetimes. Quando una regola di disattivazione dinamica scade, viene rimossa da tutti i risultati corrispondenti. Se vuoi che la regola di disattivazione dinamica agisca indefinitamente sui risultati corrispondenti, ometti questo campo.

La risposta include l'ID configurazione della disattivazione audio, che puoi utilizzare per visualizzare, aggiornare e eliminare le regole di disattivazione audio, come descritto in Gestire le regole di disattivazione audio.

I nuovi risultati che corrispondono esattamente al filtro vengono nascosti e l'attributo mute per i risultati viene impostato su MUTED.

Proprietà di ricerca non supportate per le regole di disattivazione

Le regole di disattivazione non supportano tutte le proprietà dei risultati nei filtri. Le seguenti proprietà non sono supportate nei filtri delle regole di disattivazione.

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

Elenca regole di disattivazione

Puoi elencare le regole di disattivazione audio in un'organizzazione, una cartella o un progetto utilizzando la console Google Cloud, la CLI gcloud o l'API Security Command Center.

La possibilità di elencare le regole di disattivazione per un determinato ambito dipende dalle autorizzazioni concesse ai tuoi ruoli IAM.

Se la residenza dei dati è abilitata per Security Command Center, l'ambito del comando list è limitato anche alla località di Security Command Center selezionata.

Per codice campione che elenca le regole di disattivazione, consulta Elenca le regole di disattivazione.

Per elencare le regole di disattivazione audio per un'organizzazione, una cartella o un progetto, fai clic sulla scheda della procedura che vuoi utilizzare:

Console

  1. Nella console Google Cloud, vai alla scheda Disattiva regole nella pagina Impostazioni di Security Command Center.

    Vai a Regole di disattivazione

  2. Se necessario, seleziona il tuo progetto o la tua organizzazione Google Cloud.

  3. (Facoltativo) Se la residenza dei dati è abilitata per Security Command Center, modifica la posizione dei dati in base alle esigenze.

    Per modificare la posizione dei dati, fai clic sul selettore della posizione nella barra delle azioni.

    Viene visualizzato un elenco di località. Seleziona la nuova posizione.

  4. Nella sezione Regole di disattivazione, vengono visualizzati i dettagli delle regole di disattivazione attive, tra cui:

    • Nome: ID regola di disattivazione
    • Risorsa padre: la risorsa in cui si trova la regola di disattivazione
    • Descrizione: la descrizione della regola di disattivazione, se disponibile
    • Ultimo aggiornamento da: il principale che ha aggiornato per ultimo la regola
    • Ultimo aggiornamento: la data e l'ora dell'ultimo aggiornamento della regola

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per elencare le regole di disattivazione audio, esegui il comando gcloud scc muteconfigs list:

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

    Sostituisci quanto segue:

    • PARENT: l'organization, folder o project principale per cui elencare le regole di disattivazione
    • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale
    • LOCATION: se la residenza dei dati è abilitata, la località di Security Command Center in cui elencare le regole di disattivazione. Se la residenza dei dati non è abilitata, utilizza il valore global

Vai

import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv2"
	"cloud.google.com/go/securitycenter/apiv2/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


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

public class ListMuteRules {

  public static void main(String[] args) throws IOException {
    // TODO: Replace variables enclosed within {}
    // projectId: Google Cloud Project id.
    String projectId = "google-cloud-project-id";

    // Specify the location to list mute configs.
    String location = "global";

    listMuteRules(projectId, location);
  }

  // Lists all mute rules present under the resource type in the given location.
  public static void listMuteRules(String projectId, String location) 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.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {

      // Parent can also be one of:
      //  * "organizations/{org_id}/locations/{location}"
      //  * "folders/{folder_id}/locations/{location}"
      ListMuteConfigsRequest listMuteConfigsRequest = ListMuteConfigsRequest.newBuilder()
          .setParent(String.format("projects/%s/locations/%s", projectId, location))
          .build();

      // List all mute configs present in the resource.
      for (MuteConfig muteConfig : client.listMuteConfigs(listMuteConfigsRequest).iterateAll()) {
        System.out.println(muteConfig.getName());
      }
    }
  }
}

Python

def list_mute_rules(parent: str, location_id: str) -> Dict:
    """
    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}
        location_id: Gcp location id; example: 'global'
    Returns:
         Dict: returns the mute rule details
    """
    from google.cloud import securitycenter_v2

    client = securitycenter_v2.SecurityCenterClient()

    request = securitycenter_v2.ListMuteConfigsRequest()
    request.parent = parent + "/locations/" + location_id
    response = client.list_mute_configs(request)
    # List all Mute Configs present in the resource.
    for mute_config in response:
        print(mute_config.name)
    return response

REST

Nell'API Security Command Center, utilizza il metodo muteConfigs.list per elencare le regole di disattivazione:

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

Sostituisci quanto segue:

  • PARENT: la risorsa principale per la regola di disattivazione (organizations, folders o projects)
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale
  • LOCATION: se la residenza dei dati è abilitata, la località di Security Command Center in cui elencare le regole di disattivazione. Se la residenza dei dati non è abilitata, utilizza il valore global

La risposta include i nomi, le descrizioni e gli ID di configurazione della disattivazione per le tue regole di disattivazione.

Visualizzare la configurazione di una regola di disattivazione

Puoi visualizzare una configurazione della regola di disattivazione utilizzando la console Google Cloud, la gcloud CLI o l'API Security Command Center.

Per codice campione che recupera una configurazione della regola di disattivazione, consulta Visualizzare una regola di disattivazione.

Per visualizzare una configurazione della regola di disattivazione, fai clic sulla scheda della procedura che vuoi utilizzare:

Console

  1. Nella console Google Cloud, vai alla scheda Disattiva regole nella pagina Impostazioni di Security Command Center.

    Vai a Regole di disattivazione

  2. Se necessario, seleziona il tuo progetto o la tua organizzazione Google Cloud.

  3. (Facoltativo) Se la residenza dei dati è abilitata per Security Command Center, modifica la posizione dei dati in base alle esigenze.

    Per modificare la posizione dei dati, fai clic sul selettore della posizione nella barra delle azioni.

    Viene visualizzato un elenco di località. Seleziona la nuova posizione.

  4. Nella sezione Regole di disattivazione viene visualizzato un elenco di regole di disattivazione.

  5. Fai clic sul nome della regola che vuoi visualizzare.

    Si apre una pagina con la configurazione della regola di disattivazione dell'audio.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per visualizzare la configurazione di una regola di disattivazione, esegui il comando gcloud scc muteconfigs get:

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

    Sostituisci quanto segue:

    • MUTE_CONFIG_ID: l'ID della regola di disattivazione
    • PARENT: la risorsa principale per la regola di disattivazione (organization, folder o project)
    • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto
    • LOCATION: se la residenza dei dati è attivata, la posizione di Security Command Center in cui visualizzare la configurazione della regola di disattivazione. Se la residenza dei dati non è attivata, utilizza il valore global

Vai

import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv2"
	"cloud.google.com/go/securitycenter/apiv2/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


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

public class GetMuteRule {

  public static void main(String[] args) throws IOException {
    // TODO(Developer): Replace the following variables
    // projectId: Google Cloud Project id.
    String projectId = "google-cloud-project-id";

    // Specify the location of the mute config. If the mute config was
    // created with v1 API, it can be accessed with "global".
    String location = "global";

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

    getMuteRule(projectId, location, muteConfigId);
  }

  // Retrieves a mute configuration given its resource name.
  public static MuteConfig getMuteRule(String projectId, String location, String muteConfigId)
      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.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {
      // Use appropriate `MuteConfigName` methods depending on the parent type.
      //  * organization -> MuteConfigName.ofOrganizationLocationMuteConfigName()
      //  * folder -> MuteConfigName.ofFolderLocationMuteConfigName()

      MuteConfigName muteConfigName = MuteConfigName.ofProjectLocationMuteConfigName(projectId,
          location, muteConfigId);
      return client.getMuteConfig(muteConfigName);
    }
  }
}

Python

def get_mute_rule(parent_path: str, location_id: str, mute_config_id: str) -> Dict:
    """
    Retrieves a mute configuration given its resource name.
    Args:
        parent_path: use any one of the following options:
                     - organizations/{organization_id}
                     - folders/{folder_id}
                     - projects/{project_id}
        location_id: Gcp location id; example: 'global'
        mute_config_id: Set a unique id; max of 63 chars.
    Returns:
         Dict: returns the mute rule details
    """
    from google.cloud import securitycenter_v2

    client = securitycenter_v2.SecurityCenterClient()

    request = securitycenter_v2.GetMuteConfigRequest()
    request.name = (
        parent_path + "/locations/" + location_id + "/muteConfigs/" + mute_config_id
    )

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

REST

Nell'API Security Command Center, utilizza il metodo muteConfigs.get per restituire la configurazione di una regola di disattivazione audio:

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

Sostituisci quanto segue:

  • PARENT: la risorsa principale per la regola di disattivazione (organizations, folders o projects)
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto
  • LOCATION: se la residenza dei dati è attivata, la posizione di Security Command Center in cui visualizzare la configurazione della regola di disattivazione. Se la residenza dei dati non è attivata, utilizza il valore global
  • CONFIG_ID: l'ID numerico della regola di disattivazione

Aggiornare le regole di disattivazione

Puoi aggiornare la descrizione o il filtro dei risultati di una regola di disattivazione utilizzando la console Google Cloud, la CLI gcloud o l'API Security Command Center.

Non puoi modificare l'ID, l'organizzazione, la cartella o il progetto principale o la posizione di una regola di disattivazione. Per modificare uno di questi valori, devi creare una nuova regola di disattivazione.

Se in precedenza hai riattivato i risultati, questi verranno nuovamente disattivati se corrispondono a una regola di disattivazione aggiornata nella console Google Cloud. Per ulteriori informazioni, consulta Riattivare i singoli risultati.

Per il codice campione che aggiorna una regola di disattivazione, consulta Aggiornare una regola di disattivazione.

Per aggiornare una regola di disattivazione audio, fai clic sulla scheda della procedura che vuoi utilizzare:

Console

  1. Nella console Google Cloud, vai alla scheda Disattiva regole nella pagina Impostazioni di Security Command Center.

    Vai a Regole di disattivazione

  2. Seleziona il progetto o l'organizzazione Google Cloud che è la risorsa principale per la regola di disattivazione audio che vuoi modificare.

  3. (Facoltativo) Se la residenza dei dati è abilitata per Security Command Center, modifica la posizione dei dati in base alle esigenze.

    Per modificare la posizione dei dati, fai clic sul selettore della posizione nella barra delle azioni.

    Viene visualizzato un elenco di località. Seleziona la nuova posizione.

  4. Fai clic sul nome della regola di disattivazione audio che vuoi modificare.

    Se non hai selezionato il progetto o l'organizzazione appropriati, potresti vedere una nota che ti informa che non disponi dell'autorizzazione per modificare la regola di disattivazione dell'audio.

  5. Inserisci una nuova descrizione e fai clic su Salva.

  6. Per le regole di disattivazione audio dinamiche, aggiorna o modifica la data e l'ora di scadenza della regola.

  7. Aggiorna o modifica il filtro.

    Per le istruzioni, vedi Creare regole di disattivazione.

  8. Per visualizzare i risultati corrispondenti al filtro aggiornato, fai clic su Anteprima dei risultati corrispondenti.

    Viene caricata una tabella con i risultati corrispondenti alla nuova query.

  9. Fai clic su Salva.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per aggiornare le regole di disattivazione dell'audio, esegui il comando gcloud scc muteconfigs update:

    gcloud scc muteconfigs update MUTE_CONFIG_ID \
        --PARENT=PARENT_ID \
        --location=LOCATION
        --description=RULE_DESCRIPTION \
        --filter=FILTER
        --type=MUTE_TYPE \
        --expiry-time=TIMESTAMP
    

    Sostituisci quanto segue:

    • MUTE_CONFIG_ID: l'ID della regola di disattivazione.
    • PARENT: la risorsa principale per la regola di disattivazione (organization, folder o project).
    • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto.
    • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui aggiornare la regola di disattivazione audio. Se la residenza dei dati non è attivata, utilizza il valore global.
    • RULE_DESCRIPTION: una descrizione della regola di disattivazione audio (max: 1024 caratteri).
    • FILTER: l'espressione che definisci per filtrare i risultati.

      Ad esempio, per disattivare i risultati OPEN_FIREWALL, il filtro potrebbe essere FILTER="category=\"OPEN_FIREWALL\"".

    • MUTE_TYPE: il tipo di regola di disattivazione che stai aggiornando. I tipi di regole di disattivazione audio validi sono DYNAMIC e STATIC. Non puoi modificare il tipo di una regola di disattivazione dopo averla creata.

    • TIMESTAMP: si applica solo se stai aggiornando una regola di disattivazione dinamica. La stringa data/ora che indica quando scade la regola di disattivazione dinamica. Il valore deve essere impostato su almeno un giorno nel futuro, altrimenti la richiesta verrà rifiutata. Per informazioni sui formati di data e ora, consulta gcloud topic datetimes. Quando una regola di disattivazione dinamica scade, viene rimossa da tutti i risultati corrispondenti. Se vuoi che la regola di disattivazione dinamica agisca indefinitamente sui risultati corrispondenti, ometti questo campo.

Vai


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv2"
	"cloud.google.com/go/securitycenter/apiv2/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! %w", err)
	}
	fmt.Fprintf(w, "Mute rule updated %s", response.Name)
	return nil
}

Java


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

public class UpdateMuteRule {

  public static void main(String[] args) throws IOException {
    // TODO: Replace the variables within {}
    // projectId: Google Cloud Project id.
    String projectId = "google-cloud-project-id";

    // Specify the location of the mute config to update. If the mute config was
    // created with v1 API, it can be accessed with "global".
    String location = "global";

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

    updateMuteRule(projectId, location, muteConfigId);
  }

  // Updates an existing mute configuration.
  // The following can be updated in a mute config: description and filter.
  public static void updateMuteRule(String projectId, String location, String muteConfigId)
      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.
    try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {

      MuteConfig updateMuteConfig =
          MuteConfig.newBuilder()
              // Construct the name according to the parent type of the mute rule.
              // Parent can also be one of:
              //  * "organizations/{org_id}/locations/{location}/muteConfigs/{muteConfig_id}"
              //  * "folders/{folder_id}/locations/{location}/muteConfigs/{muteConfig_id}"
              .setName(String.format("projects/%s/locations/%s/muteConfigs/%s", projectId, location,
                  muteConfigId))
              .setDescription("Updated mute config description")
              .build();

      UpdateMuteConfigRequest updateMuteConfigRequest =
          UpdateMuteConfigRequest.newBuilder()
              .setMuteConfig(updateMuteConfig)
              // Make sure that the mask fields match the properties changed in
              // 'updateMuteConfig' object.
              // For more info on constructing update mask path, see the proto or:
              // https://cloud.google.com/security-command-center/docs/reference/rest/v2/folders.muteConfigs/patch?hl=en#query-parameters
              .setUpdateMask(FieldMask.newBuilder().addPaths("description").build())
              .build();

      MuteConfig response = securityCenterClient.updateMuteConfig(updateMuteConfigRequest);
      System.out.println(response);
    }
  }
}

Python

def update_mute_rule(parent_path: str, location_id: str, mute_config_id: str) -> Dict:
    """
    Updates an existing mute configuration.
    The following can be updated in a mute config: description, and filter/ mute rule.
    Args:
        parent: Use any one of the following resource paths to list mute configurations:
                - organizations/{organization_id}
                - folders/{folder_id}
                - projects/{project_id}
        location_id: Gcp location id; example: 'global'
        mute_config_id: Set a unique id; max of 63 chars.
    Returns:
         Dict: returns the mute rule details
    """
    from google.cloud import securitycenter_v2
    from google.protobuf import field_mask_pb2

    client = securitycenter_v2.SecurityCenterClient()

    update_mute_config = securitycenter_v2.MuteConfig()
    update_mute_config.name = (
        parent_path + "/locations/" + location_id + "/muteConfigs/" + mute_config_id
    )
    update_mute_config.description = "Updated mute config description"

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

    request = securitycenter_v2.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}")
    return mute_config

REST

Nell'API Security Command Center, utilizza il metodo muteConfigs.patch per aggiornare una regola di disattivazione audio. Il corpo della richiesta è un'istanza di MuteConfig:

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

  {
    "description": "RULE_DESCRIPTION",
    "filter": "FILTER",
    "type": "MUTE_TYPE",
    "expiryTime": "TIMESTAMP"
  }

Sostituisci quanto segue:

  • PARENT: la risorsa principale per la regola di disattivazione (organizations, folders o projects)
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto
  • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui aggiornare la regola di disattivazione; se la residenza dei dati non è attivata, utilizza il valore global
  • CONFIG_ID: l'ID numerico della regola di disattivazione
  • RULE_DESCRIPTION: una descrizione della regola di disattivazione (massimo 1024 caratteri)
  • FILTER: l'espressione che definisci per filtrare i risultati

    Ad esempio, per disattivare i risultati OPEN_FIREWALL, il filtro può essere "category=\"OPEN_FIREWALL\"".

  • MUTE_TYPE: il tipo di regola di disattivazione che stai aggiornando. I tipi di regole di disattivazione audio validi sono DYNAMIC e STATIC. Non puoi modificare il tipo di una regola di disattivazione dopo averla creata.

  • TIMESTAMP: si applica solo se stai aggiornando una regola di disattivazione dinamica. La stringa data/ora che indica quando scade la regola di disattivazione dinamica. Il valore deve essere impostato su almeno un giorno nel futuro, altrimenti la richiesta verrà rifiutata. Per informazioni sui formati di tempo, consulta gcloud topic datetimes. Quando una regola di disattivazione dinamica scade, viene rimossa da tutti i risultati corrispondenti. Se vuoi che la regola di disattivazione dinamica agisca a tempo indeterminato sui risultati corrispondenti, ometti questo campo.

I nuovi risultati che corrispondono esattamente al filtro vengono nascosti e l'attributo mute per i risultati viene impostato su MUTED.

Eliminare le regole di disattivazione

Puoi eliminare una regola di disattivazione utilizzando la console Google Cloud, la gcloud CLI o l'API Security Command Center.

Prima di eliminare le regole di disattivazione audio, tieni presente quanto segue:

  • Non puoi recuperare le regole di disattivazione eliminate.
  • L'eliminazione delle regole di disattivazione statiche non riattiva automaticamente i risultati disattivati. Devi riattivare manualmente o tramite programmazione la registrazione dei risultati.
  • L'eliminazione delle regole di disattivazione dinamiche rimuove automaticamente la regola da tutti i risultati precedentemente corrispondenti e li riattiva se non corrispondono a altre regole.
  • I risultati futuri che corrispondono ai filtri nelle regole di disattivazione eliminate non vengono disattivati.

Per codice campione che elimina una regola di disattivazione, consulta Eliminare una regola di disattivazione.

Per eliminare una regola di disattivazione audio, fai clic sulla scheda della procedura che vuoi utilizzare:

Console

  1. Nella console Google Cloud, vai alla scheda Disattiva regole nella pagina Impostazioni di Security Command Center.

    Vai a Regole di disattivazione

  2. Se necessario, seleziona il tuo progetto o la tua organizzazione Google Cloud.

  3. (Facoltativo) Se la residenza dei dati è abilitata per Security Command Center, modifica la posizione dei dati in base alle esigenze.

    Per modificare la posizione dei dati, fai clic sul selettore della posizione nella barra delle azioni.

    Viene visualizzato un elenco di località. Seleziona la nuova posizione.

  4. Fai clic sul nome della regola di disattivazione audio che vuoi eliminare.

  5. Fai clic su Elimina.

  6. Leggi la finestra di dialogo e, se tutto è a posto, fai clic su Elimina.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per eliminare le regole di disattivazione audio, esegui il comando gcloud scc muteconfigs delete:

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

    Sostituisci quanto segue:

    • MUTE_CONFIG_ID: l'ID della configurazione di disattivazione dell'audio
    • PARENT: la risorsa principale per la regola di disattivazione (organization, folder o project)
    • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto
    • LOCATION: se la residenza dei dati è abilitata, la località di Security Command Center in cui eliminare la regola di disattivazione. Se la residenza dei dati non è abilitata, utilizza il valore global
  3. Conferma la richiesta di eliminazione della regola di disattivazione dell'audio.

Vai


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv2"
	"cloud.google.com/go/securitycenter/apiv2/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


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

public class DeleteMuteRule {

  public static void main(String[] args) throws IOException {
    // TODO(Developer): Replace the following variables
    // projectId: Google Cloud Project id.
    String projectId = "google-cloud-project-id";

    // Specify the location of the mute config. If the mute config was
    // created with v1 API, it can be accessed with "global".
    String location = "global";

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

    deleteMuteRule(projectId, location, 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 location, String muteConfigId)
      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.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {
      // Use appropriate `MuteConfigName` methods depending on the parent type.
      // folder -> MuteConfigName.ofFolderLocationMuteConfigName()
      // organization -> MuteConfigName.ofOrganizationLocationMuteConfigName()
      client.deleteMuteConfig(
          MuteConfigName.ofProjectLocationMuteConfigName(projectId, location, muteConfigId));

      System.out.println("Mute rule deleted successfully: " + muteConfigId);
    }
  }
}

Python

def delete_mute_rule(parent_path: str, location_id: str, mute_config_id: str) -> None:
    """
    Deletes a mute configuration given its resource name.
    Note: Previously muted findings are not affected when a mute config is deleted.
    Args:
         parent_path: use any one of the following options:
                     - organizations/{organization_id}
                     - folders/{folder_id}
                     - projects/{project_id}
        location_id: Gcp location id; example: 'global'
        mute_config_id: Set a unique id; max of 63 chars.
    Returns:
         None: returns none mute rule is deleted
    """
    from google.cloud import securitycenter_v2

    client = securitycenter_v2.SecurityCenterClient()

    request = securitycenter_v2.DeleteMuteConfigRequest()
    request.name = (
        parent_path + "/locations/" + location_id + "/muteConfigs/" + mute_config_id
    )

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

REST

Nell'API Security Command Center, utilizza il metodo muteConfigs.delete per eliminare una regola di disattivazione audio:

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

Sostituisci quanto segue:

  • PARENT: la risorsa principale per la regola di disattivazione (organizations, folders o projects)
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto
  • LOCATION: se la residenza dei dati è abilitata, la località di Security Command Center in cui eliminare la regola di disattivazione. Se la residenza dei dati non è abilitata, utilizza il valore global
  • CONFIG_ID: l'ID numerico della regola di disattivazione

Disattivare un singolo risultato

Puoi disattivare staticamente un singolo risultato utilizzando la console Google Cloud, la CLI gcloud o l'API Security Command Center.

La disattivazione statica di un risultato non influisce sul fatto che sia attivo o meno. Se un risultato attivo viene disattivato, l'attributo state rimane invariato:state="ACTIVE". Il risultato viene nascosto, ma rimane attivo finché la vulnerabilità, la configurazione errata o la minaccia sottostante non viene risolta. Inoltre, se disattivi un risultato in modo statico, sostituisci eventuali regole di disattivazione dinamica che si applicano al risultato.

La disattivazione audio di un risultato relativo a una combinazione tossica comporta la chiusura della relativa richiesta.

Per disattivare tutti i risultati futuri che corrispondono ai criteri specificati, consulta Creare regole di disattivazione.

Per il codice campione per disattivare l'audio di una segnalazione, consulta Disattivare l'audio di una segnalazione.

Per disattivare l'audio di un singolo risultato in modo statico, fai clic sulla scheda della procedura che vuoi utilizzare:

Console

  1. Nella console Google Cloud, vai alla pagina Risultati del Security Command Center.

    Vai a Risultati

  2. Se necessario, seleziona il tuo progetto o la tua organizzazione Google Cloud.

  3. (Facoltativo) Se la residenza dei dati è abilitata per Security Command Center, modifica la posizione dei dati in base alle esigenze.

    Per modificare la posizione dei dati, fai clic sul selettore della posizione nella barra delle azioni.

    Viene visualizzato un elenco di località. Seleziona la nuova posizione.

  4. Se non vedi il rilevamento che vuoi disattivare nel riquadro Risultati della query sui rilevamenti, seleziona la categoria del rilevamento nella sezione Categoria del riquadro Filtri rapidi.

  5. Seleziona la casella di controllo accanto al rilievo che vuoi disattivare. Puoi selezionare uno o più risultati.

  6. Nella barra delle azioni Risultati della query sui risultati, fai clic su Opzioni di disattivazione audio e poi seleziona Applica disattivazione audio.

    L'attributo mute per i risultati selezionati viene impostato su MUTED e il risultato viene rimosso dal riquadro Risultati della query sui risultati.

In alternativa, puoi disattivare l'audio di un rilevamento dal relativo riquadro dei dettagli:

  1. Nel riquadro Risultati della query sui risultati della pagina Risultati, nella colonna Categoria, fai clic sul nome di un singolo risultato. Viene visualizzato il riquadro dei dettagli del rilevamento.
  2. Fai clic su Intervieni.
  3. Dal menu Intervieni, seleziona Applica override disattivazione audio.

    Se selezioni Disattiva risultati come questo, viene visualizzata la pagina Crea regola di disattivazione, in cui puoi creare una regola di disattivazione per i risultati dello stesso tipo o che includono lo stesso attributo Indicator.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per impostare lo stato di disattivazione di un rilevamento su MUTED, utilizza il comando set-mute nella gcloud CLI:

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

    Sostituisci quanto segue:

    • FINDING_ID: l'ID del rilevamento che vuoi disattivare

      Per recuperare gli ID dei risultati, utilizza l'API Security Command Center per elencare i risultati. L'ID del rilevamento è l'ultima parte dell'attributo canonicalName, ad esempio projects/123456789012/sources/1234567890123456789/findings`/5ee30aa342e799e4e1700826de053aa9.

    • PARENT: la risorsa principale (project, folder o organization), sensibile alle maiuscole

    • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale

    • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui disattivare l'audio del risultato. Se la residenza dei dati non è attivata, utilizza il valore global.

    • SOURCE_ID: l'ID origine

      Per istruzioni su come recuperare un ID origine, consulta Ottenere l'ID origine.

Vai

import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv2"
	"cloud.google.com/go/securitycenter/apiv2/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


import com.google.cloud.securitycenter.v2.Finding;
import com.google.cloud.securitycenter.v2.Finding.Mute;
import com.google.cloud.securitycenter.v2.SecurityCenterClient;
import com.google.cloud.securitycenter.v2.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/{org_id}/sources/{source_id}/locations/{location}/finding/{finding_id}
    //  - folders/{folder_id}/sources/{source_id}/locations/{location}/finding/{finding_id}
    //  - projects/{project_id}/sources/{source_id}/locations/{location}/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.
    try (SecurityCenterClient client = SecurityCenterClient.create()) {

      SetMuteRequest setMuteRequest =
          SetMuteRequest.newBuilder()
              // Relative path for the finding.
              .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

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_v2

    client = securitycenter_v2.SecurityCenterClient()

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

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

REST

Nell'API Security Command Center, utilizza il metodo findings.setMute per disattivare un risultato. Il corpo della richiesta è un enum che indica lo stato di disattivazione audio risultante:

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

{
  "mute": "MUTED"
}

Sostituisci quanto segue:

  • PARENT: la risorsa principale (organizations, folders o projects).
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale.
  • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui disattivare l'audio del risultato. Se la residenza dei dati non è attivata, utilizza il valore global.
  • SOURCE_ID: l'ID numerico dell'origine.

    Per istruzioni su come recuperare un ID origine, consulta Ottenere l'ID origine.

  • FINDING_ID: l'ID del rilevamento che vuoi disattivare.

    Per recuperare gli ID dei risultati, utilizza l'API Security Command Center per elencare i risultati. L'ID del rilevamento è l'ultima parte dell'attributo canonicalName, ad esempio projects/123456789012/sources/1234567890123456789/findings/5ee30aa342e799e4e1700826de053aa9.

Dopo aver disattivato l'audio di un rilevamento, l'attributo mute viene impostato su MUTED.

Riattivare i singoli risultati

Puoi attivare staticamente un singolo rilevamento utilizzando la console Google Cloud, la riga di comando gcloud o l'API Security Command Center.

La disattivazione della disattivazione di un risultato è utile quando devi impedire che un risultato venga nascosto da una regola di disattivazione troppo ampia o da una regola che potrebbe essere troppo complessa da modificare per escludere i risultati che ritieni importanti.

Per il codice campione per riattivare un rilevamento, consulta Riattivare un rilevamento.

I risultati non disattivati vengono disattivati di nuovo solo se vengono disattivati manualmente. Le regole di disattivazione create con la gcloud CLI o l'API Security Command Center non influiscono sui risultati riattivati dagli utenti.

Per il codice campione per riattivare un rilevamento, consulta Riattivare un rilevamento.

Console

  1. Nella console Google Cloud, vai alla pagina Risultati di Security Command Center.

    Vai a Risultati

  2. Se necessario, seleziona il tuo progetto o la tua organizzazione Google Cloud.

    Viene visualizzata la pagina Risultati con la query predefinita nella sezione Anteprima query. La query predefinita esclude i risultati disattivati, pertanto devi modificarla prima che questi risultati vengano visualizzati nel riquadro Risultati della query sui risultati.

  3. (Facoltativo) Se la residenza dei dati è abilitata per Security Command Center, modifica la posizione dei dati in base alle esigenze.

    Per modificare la posizione dei dati, fai clic sul selettore della posizione nella barra delle azioni.

    Viene visualizzato un elenco di località. Seleziona la nuova posizione.

  4. A destra della sezione Anteprima query, fai clic su Modifica query per aprire l'editor delle query.

  5. Nel campo Editor di query, sostituisci l'istruzione di disattivazione audio esistente con quanto segue:

    mute="MUTED"
  6. Fai clic su Applica. I risultati nel riquadro Risultati query sui risultati vengono aggiornati in modo da includere solo i risultati disattivati.

  7. Se necessario, filtra altri risultati disattivati. Ad esempio, nel riquadro Filtri rapidi, in Categoria, seleziona il nome del risultato di cui devi riattivare l'audio per filtrare tutte le altre categorie di risultati.

  8. Seleziona la casella di controllo accanto al rilevamento di cui vuoi riattivare l'audio. Puoi selezionare uno o più risultati.

  9. Nella barra delle azioni Risultati della query sui risultati, fai clic su Opzioni di disattivazione audio e poi seleziona Applica override di attivazione audio.

    L'attributo mute per i risultati selezionati viene impostato su UNMUTED e il risultato viene rimosso dal riquadro Risultati della query sui risultati.

In alternativa, puoi riattivare l'audio di un rilevamento dal relativo riquadro dei dettagli:

  1. Nel riquadro Risultati della query sui risultati della pagina Risultati, nella colonna Categoria, fai clic sul nome di un singolo risultato. Viene visualizzato il riquadro dei dettagli del rilevamento.
  2. Fai clic su Intervieni.
  3. Dal menu Intervieni, seleziona Applica override di disattivazione audio.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per impostare lo stato di disattivazione di un rilevamento su UNMUTED, utilizza il comando set-mute nella gcloud CLI:

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

    Sostituisci quanto segue:

    • FINDING_ID: l'ID del rilevamento che vuoi disattivare

      Per recuperare gli ID dei risultati, utilizza l'API Security Command Center per elencare i risultati. L'ID del rilevamento è l'ultima parte dell'attributo canonicalName, ad esempio projects/123456789012/sources/1234567890123456789/findings/5ee30aa342e799e4e1700826de053aa9.

    • PARENT: la risorsa principale (project, folder o organization), sensibile alle maiuscole

    • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale

    • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui riattivare il rilevamento. Se la residenza dei dati non è attivata, utilizza il valore global

    • SOURCE_ID: l'ID origine

      Per istruzioni su come recuperare un ID origine, consulta Ottenere l'ID origine.

Vai


import (
	"context"
	"fmt"
	"io"

	securitycenter "cloud.google.com/go/securitycenter/apiv2"
	"cloud.google.com/go/securitycenter/apiv2/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


import com.google.cloud.securitycenter.v2.Finding;
import com.google.cloud.securitycenter.v2.Finding.Mute;
import com.google.cloud.securitycenter.v2.SecurityCenterClient;
import com.google.cloud.securitycenter.v2.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/{org_id}/sources/{source_id}/locations/{location}/finding/{finding_id}
    //  - folders/{folder_id}/sources/{source_id}/locations/{location}/finding/{finding_id}
    //  - projects/{project_id}/sources/{source_id}/locations/{location}/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.
    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

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_v2

    client = securitycenter_v2.SecurityCenterClient()

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

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

REST

Nell'API Security Command Center, utilizza il metodo findings.setMute per riattivare l'audio di un risultato. Il corpo della richiesta è un enum che indica lo stato di disattivazione audio risultante:

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

{
  "mute": "UNMUTED"
}

Sostituisci quanto segue:

  • PARENT: la risorsa principale (organizations, folders o projects)
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale
  • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui riattivare il rilevamento. Se la residenza dei dati non è attivata, utilizza il valore global
  • SOURCE_ID: l'ID numerico dell'origine

    Per istruzioni su come recuperare un ID origine, consulta Ottenere l'ID origine.

  • FINDING_ID: l'ID del rilevamento che vuoi disattivare.

    Per recuperare gli ID dei risultati, utilizza l'API Security Command Center per elencare i risultati. L'ID del rilevamento è l'ultima parte dell'attributo canonicalName, ad esempio projects/123456789012/sources/1234567890123456789/findings/5ee30aa342e799e4e1700826de053aa9.

I risultati selezionati non sono più nascosti e l'attributo mute per i risultati è impostato su UNMUTED.

Rimuovere un override dello stato di disattivazione dai singoli risultati

Applicchi una sostituzione dello stato di disattivazione quando modifichi intenzionalmente lo stato di disattivazione di un risultato per disattivare o riattivare il risultato in modo statico. Ad esempio, potresti voler applicare un'override dello stato di disattivazione per nascondere un risultato di bassa gravità per il quale non vale la pena creare una regola di disattivazione dinamica.

Puoi rimuovere l'override dello stato di disattivazione da un singolo rilevamento utilizzando la console Google Cloud, la riga di comando gcloud o l'API Security Command Center.

Prima di rimuovere l'override dello stato di disattivazione da un risultato, tieni presente quanto segue:

  • Uno stato di disattivazione viene ignorato se un risultato è staticamente disattivato o riattivato. Puoi applicare una sostituzione dello stato di disattivazione a qualsiasi risultato manualmente o automaticamente con le regole di disattivazione statiche.
  • L'override dello stato di disattivazione si applica a un rilevamento a tempo indeterminato e ha la precedenza su eventuali regole di disattivazione corrispondenti.
  • La rimozione dell'override dello stato di disattivazione da un risultato reimposta lo stato di disattivazione del risultato in modo che possa essere elaborato da regole di disattivazione statiche o dinamiche.
  • La rimozione dell'override dello stato di disattivazione da un risultato è diversa dalla disattivazione di un risultato. Quando riattivi un risultato (applici una disattivazione dell'override), le regole di disattivazione non possono disattivare il risultato finché non hai rimosso manualmente l'override dello stato di disattivazione.

Per rimuovere la disattivazione dell'audio da un singolo risultato:

Console

  1. Nella console Google Cloud, vai alla pagina Risultati di Security Command Center.

    Vai a Risultati

  2. Seleziona il tuo progetto o la tua organizzazione Google Cloud.

  3. (Facoltativo) Se la residenza dei dati è abilitata per Security Command Center, modifica la posizione dei dati in base alle esigenze.

    Per modificare la posizione dei dati, fai clic sul selettore della posizione nella barra delle azioni.

    Viene visualizzato un elenco di località. Seleziona la nuova posizione.

  4. A destra della sezione Anteprima query, fai clic su Modifica query per aprire l'editor delle query.

  5. Nel campo Editor di query, sostituisci l'istruzione di disattivazione audio esistente con quanto segue:

    mute="MUTED" OR mute="UNMUTED"
  6. Fai clic su Applica. I risultati nel riquadro Risultati della query sui risultati vengono aggiornati in modo da includere i risultati disattivati e riattivati in modo statico.

  7. Se necessario, filtra gli altri risultati. Ad esempio, nel riquadro Filtri rapidi, in Categoria, seleziona il nome dell'elemento da reimpostare per filtrare tutte le altre categorie di elementi.

  8. Seleziona la casella di controllo accanto al rilevamento da reimpostare. Puoi selezionare uno o più risultati.

  9. Nella barra delle azioni Risultati della query sui risultati, fai clic su Opzioni di disattivazione audio e poi seleziona Rimuovi sostituzioni di disattivazione audio.

    L'attributo mute per i risultati selezionati viene impostato su UNDEFINED e il risultato viene rimosso dal riquadro Risultati della query sui risultati.

In alternativa, puoi riattivare l'audio di un rilevamento dal relativo riquadro dei dettagli:

  1. Nel riquadro Risultati della query sui risultati della pagina Risultati, nella colonna Categoria, fai clic sul nome di un singolo risultato. Viene visualizzato il riquadro dei dettagli del rilevamento.
  2. Fai clic su Intervieni.
  3. Dal menu Intervieni, seleziona Rimuovi sostituzioni di disattivazione audio.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per impostare lo stato di disattivazione di un rilevamento su UNDEFINED, utilizza il comando set-mute nella gcloud CLI:

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

    Sostituisci quanto segue:

    • FINDING_ID: l'ID del rilevamento da reimpostare

      Per recuperare gli ID dei risultati, utilizza l'API Security Command Center per elencare i risultati. L'ID del rilevamento è l'ultima parte dell'attributo canonicalName, ad esempio projects/123456789012/sources/1234567890123456789/findings/5ee30aa342e799e4e1700826de053aa9.

    • PARENT: la risorsa principale (project, folder o organization), sensibile alle maiuscole

    • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale

    • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui rimuovere l'override dello stato di disattivazione da un rilevamento. Se la residenza dei dati non è attivata, utilizza il valore global.

    • SOURCE_ID: l'ID origine

      Per istruzioni su come recuperare un ID origine, consulta Ottenere l'ID origine.

REST

Nell'API Security Command Center, utilizza il metodo findings.setMute per reimpostare lo stato di disattivazione di un risultato. Il corpo della richiesta è un enum che indica lo stato di disattivazione audio risultante:

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

{
  "mute": "UNDEFINED"
}

Sostituisci quanto segue:

  • PARENT: la risorsa principale (organizations, folders o projects)
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale
  • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui rimuovere l'override dello stato di disattivazione da un rilevamento. Se la residenza dei dati non è attivata, utilizza il valore global.
  • SOURCE_ID: l'ID numerico dell'origine

Disattivare o reimpostare più risultati esistenti

Puoi eseguire le seguenti operazioni di disattivazione collettiva per più risultati esistenti utilizzando il comando gcloud scc findings bulk-mute gcloud CLI o il metodo bulkMute dell'API Security Command Center:

  • Disattivare più risultati esistenti. La disattivazione collettiva dei risultati esistenti li disattiva staticamente e ha la precedenza su eventuali regole di disattivazione dinamica applicate al risultato. Se devi disattivare risultati futuri simili, crea una regola di disattivazione.

  • Rimuovi l'override dello stato di disattivazione su più risultati esistenti. Se rimuovi la sostituzione dello stato di disattivazione per un risultato, reimposti lo stato di disattivazione da MUTED (disattivato in modo statico) o UNMUTED (attivato in modo statico) a UNDEFINED. Questa funzionalità può essere utile se stai eseguendo la migrazione dalle regole di disattivazione statiche a quelle dinamiche.

Specifica l'insieme di risultati che devi disattivare definendo un filtro dei risultati. I filtri di disattivazione collettiva non supportano tutte le proprietà di ricerca. Per un elenco delle proprietà non supportate, consulta Proprietà di risultati non supportate per le regole di disattivazione.

Se la residenza dei dati è abilitata per Security Command Center, l'ambito delle operazioni di disattivazione collettiva è limitato alla località di Security Command Center in cui vengono eseguite.

Per un codice campione che disattiva collettivamente i risultati, consulta Disattivare collettivamente i risultati.

Per disattivare o reimpostare collettivamente i risultati, fai clic sulla scheda relativa alla procedura che vuoi utilizzare:

Console

Nella console Google Cloud, puoi disattivare collettivamente i risultati solo creando regole di disattivazione. Nella console Google Cloud, la creazione di regole di disattivazione consente di disattivare i risultati esistenti e futuri.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per disattivare o reimpostare più risultati contemporaneamente, esegui il comandogcloud scc findings bulk-mute:

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

    Sostituisci quanto segue:

    • PARENT: l'ambito nella gerarchia delle risorse a cui si applica la regola di disattivazione, organization, folder o project.
    • PARENT_ID: l'ID numerico dell'organizzazione, della cartella o del progetto principale oppure l'ID alfanumerico del progetto principale.
    • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui disattivare o reimpostare collettivamente i risultati. Se la residenza dei dati non è attivata, utilizza il valore global.
    • FILTER: l'espressione che definisci per filtrare i risultati.

      Ad esempio, per disattivare tutti i risultati OPEN_FIREWALL e PUBLIC_IP_ADDRESS esistenti di bassa gravità nel progetto internal-test, il filtro puoi essere "category=\"OPEN_FIREWALL\" OR category=\"PUBLIC_IP_ADDRESS\" AND severity=\"LOW\" AND resource.projectDisplayName=\"internal-test\"".

    • MUTE_STATE: il valore che indica se il risultato è staticamente disattivato o meno. I valori validi sono MUTED e UNDEFINED. Il valore è impostato su MUTED per impostazione predefinita. Imposta questo valore su UNDEFINED solo se reimposti lo stato di disattivazione di più risultati esistenti.

REST

Nell'API Security Command Center, utilizza il metodo findings.bulkMute per disattivare o reimpostare lo stato di disattivazione di più risultati esistenti. Il corpo della richiesta contiene l'espressione utilizzata per filtrare i risultati:

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

{
  "filter": "FILTER",
  "muteState": "MUTE_STATE"
}

Sostituisci quanto segue:

  • PARENT: la risorsa principale (organizations, folders o projects).
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale.
  • LOCATION: se la residenza dei dati è attivata, la località di Security Command Center in cui disattivare o reimpostare collettivamente i risultati. Se la residenza dei dati non è attivata, utilizza il valore global.
  • FILTER: l'espressione che definisci per filtrare i risultati.

    Ad esempio, per disattivare tutti i risultati OPEN_FIREWALL e PUBLIC_IP_ADDRESS esistenti di bassa gravità nel progetto internal-test, il filtro puoi essere "category=\"OPEN_FIREWALL\" OR category=\"PUBLIC_IP_ADDRESS\" AND severity=\"LOW\" AND resource.projectDisplayName=\"internal-test\"".

  • MUTE_STATE: il valore che indica se il risultato è disattivato o meno. I valori validi sono MUTED o UNDEFINED. Il valore è impostato su MUTED per impostazione predefinita. Imposta questo valore su UNDEFINED solo se reimposti lo stato di disattivazione di più risultati esistenti.

Tutti i risultati esistenti nella risorsa selezionata e che corrispondono esattamente al filtro vengono nascosti. L'attributo mute per i risultati è impostato su MUTED.

La disattivazione dell'audio dei risultati non ne modifica lo stato. Se i risultati attivi vengono disattivati, vengono nascosti, ma rimangono attivi fino a quando le vulnerabilità, le configurazioni errate o le minacce sottostanti non vengono risolte.

Visualizzare i risultati disattivati nella console Google Cloud

Puoi visualizzare i risultati disattivati nella console Google Cloud modificando la query dei risultati per selezionare quelli che includono il valore della proprietà mute="MUTED".

Ad esempio, la seguente query sui risultati mostra solo i risultati attivi con audio disattivato:

state="ACTIVE"
AND mute="MUTED"

Per visualizzare tutti i risultati attivi, sia disattivati che non, ometti completamente l'attributo mute dalla query:

state="ACTIVE"

Per impostazione predefinita, la query dei risultati nella console Google Cloud mostra solo i risultati non disattivati.

Visualizzare i risultati disattivati in base al tipo di regola di disattivazione

Le sezioni seguenti descrivono come eseguire query sui risultati attivi in base al tipo di regola di disattivazione.

Per ulteriori informazioni su come elencare risultati specifici, vedi Filtrare i risultati.

Risultati della query disattivati dalle regole di disattivazione statica

Per visualizzare i risultati attivi che sono stati disattivati da una regola di disattivazione statica dopo un determinato periodo di tempo, utilizza la seguente query e controlla l'attributo muteInitiator per determinare se il risultato è stato disattivato da una regola di disattivazione statica.

state="ACTIVE" AND
muteInfo.staticMute.applyTime>=TIMESTAMP AND
muteInfo.staticMute.state="MUTED"

Sostituisci TIMESTAMP con la stringa data/ora che indica l'inizio del periodo di tempo per cui vuoi eseguire una query. Per informazioni sui formati dell'ora, consulta gcloud topic datetimes.

Risultati della query disattivati dalle regole di disattivazione dinamica

Per visualizzare i risultati attivi che sono stati disattivati da una regola di disattivazione dinamica dopo un determinato orario, utilizza la seguente query:

state="ACTIVE" AND
muteUpdateTime>=TIMESTAMP AND
contains(muteInfo.dynamicMuteRecords, muteConfig="PARENT_ID/muteConfigs/CONFIG_ID")

Sostituisci quanto segue:

  • TIMESTAMP: la stringa data/ora che indica l'inizio del periodo di tempo per cui vuoi eseguire una query. Per informazioni sui formati di data e ora, consulta gcloud topic datetimes.
  • PARENT_ID: l'ID dell'organizzazione, della cartella o del progetto principale, specificato nel formato organizations/123, folders/456 o projects/789.
  • CONFIG_ID: il nome della regola di disattivazione. L'ID deve utilizzare caratteri alfanumerici e trattini e deve essere compreso tra 1 e 63 caratteri.

Per ulteriori informazioni sulla modifica delle query sui risultati, consulta Creare o modificare una query sui risultati nella dashboard.

Trovare proprietà correlate alla disattivazione dell'audio

Questa sezione elenca le proprietà di rilevamento correlate allo stato di disattivazione di un rilevamento e descrive in che modo sono interessate dalle operazioni di disattivazione:

  • mute: impostato su UNDEFINED quando vengono creati i risultati e cambia nei seguenti scenari:
    • MUTED: un risultato è disattivato manualmente o da una regola di disattivazione.
    • UNMUTED: un utente riattiva l'audio di un rilevamento.
  • muteUpdateTime: il momento in cui un risultato viene disattivato o riattivato.
  • muteInitiator: l'identificatore della regola principale o di disattivazione che ha disattivato l'audio di un risultato.
  • muteInfo: informazioni sulla disattivazione del risultato, ad esempio il tipo di regola di disattivazione (statica o dinamica) e le regole di disattivazione con cui il risultato corrisponde.
  • muteInfo.staticMute: uno stato di disattivazione statica sostituisce eventuali regole di disattivazione dinamica applicate a questo risultato.
    • state: uno stato di disattivazione statica che può essere impostato disattivando direttamente il risultato o tramite una regola di disattivazione statica.
    • applyTime: ora in cui lo stato di disattivazione dell'audio statico è stato applicato al rilevamento.
  • muteInfo.dynamicMuteRecords: il record di una regola di disattivazione dinamica corrispondente al risultato.
    • muteConfig: il nome della risorsa relativa della regola di disattivazione, rappresentata dalla configurazione di disattivazione che ha creato il record. Ad esempio, organizations/123/muteConfigs/examplemuteconfig.
    • matchTime: data e ora in cui una regola di disattivazione dinamica ha trovato una corrispondenza con il risultato.

Interrompere le notifiche e le esportazioni dei risultati disattivati

Se attivi le notifiche sui risultati, i risultati disattivati nuovi o aggiornati che corrispondono ai tuoi filtri di notifica vengono comunque esportati in Pub/Sub.

Per interrompere le esportazioni e le notifiche relative ai risultati disattivati, utilizza l'attributo mute per escludere i risultati disattivati nel filtro NotificationConfig. Ad esempio, il seguente filtro invia notifiche solo per i risultati attivi che non sono disattivati o per i quali non è stato impostato l'attributo di disattivazione:

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

Passaggi successivi

Scopri di più su come filtrare le notifiche relative ai risultati.

Consulta altri esempi di filtri che puoi utilizzare.