Modificare i consigli sui rischi

I suggerimenti sul rischio di modifica aiutano a ridurre il rischio di configurazioni errate dell'infrastruttura cloud segnalando in modo intelligente le modifiche rischiose comuni alle risorse più importanti e fornendo suggerimenti per prevenire e mitigare i problemi.

Introduzione

Le configurazioni errate sono una causa comune degli incidenti cloud. Possono verificarsi a causa di errori umani o di modifiche impreviste al carico di lavoro e possono portare a una serie di problemi, tra cui problemi di prestazioni, affidabilità e persino interruzioni. Molti errori di configurazione possono inizialmente passare inosservati, il che li rende difficili da individuare e risolvere.

I consigli sui rischi delle modifiche sono una nuova famiglia di consigli e approfondimenti di Active Assist all'interno del servizio Recommender. I suggerimenti sul rischio di modifica segnalano automaticamente le modifiche rischiose alle risorse cloud identificate come importanti in base al loro utilizzo e ad altri indicatori, per contribuire a prevenire, rilevare e mitigare i problemi (ad esempio le interruzioni dei servizi) causati da configurazioni errate di queste importanti risorse cloud. Ad esempio, se provi a eliminare un progetto molto utilizzato o a modificare un criterio IAM che potrebbe essere una dipendenza essenziale in base alla sua attività di utilizzo recente, i suggerimenti per il rischio di modifica possono aiutarti a prevenire problemi involontari avvisandoti in modo proattivo dei rischi associati a una determinata modifica.

Modifica l'ambito dei suggerimenti per il rischio

I suggerimenti sul rischio di modifica sono attualmente supportati solo per le risorse e le azioni elencate nella tabella seguente.

Risorsa Azione Superfici Criteri utilizzati per determinare l'importanza delle risorse
Project Eliminazione
  • Console Google Cloud
  • Interfaccia a riga di comando gcloud
  • API Recommender
  • Utilizzo del progetto (chiamate API, traffico di rete e utilizzo dei servizi Google Cloud)
  • Fatturazione
  • Utilizzo negli ultimi 30 giorni
Account di servizio Eliminazione
  • Console Google Cloud
  • Interfaccia a riga di comando gcloud
  • API Recommender
  • Numero di autenticazioni
  • Utilizzo negli ultimi 90 giorni
Criterio IAM Cambia
  • Console Google Cloud
  • Interfaccia a riga di comando gcloud
  • API Recommender
  • Numero di autorizzazioni esercitate
  • Utilizzo negli ultimi 90 giorni
  • Appartenere a un progetto importante

Prima di iniziare

Prima di iniziare a utilizzare questa funzionalità, devi configurare il servizio:

  1. Abilita l'API Recommender in un singolo progetto di fatturazione. Puoi quindi utilizzare lo stesso progetto di fatturazione per recuperare consigli e approfondimenti per altri progetti, per l'intera organizzazione o per l'account di fatturazione utilizzando la funzionalità del progetto di fatturazione di gcloud/API.
  2. Concedi le autorizzazioni all'account utente o di servizio che utilizzerai per accedere a questa funzionalità.

Autorizzazioni

Per visualizzare i suggerimenti per il rischio di modifica, devi disporre delle autorizzazioni specifiche per la risorsa specifica.

  • Progetto

    • recommender.resourcemanagerProjectChangeRiskRecommendations.get
    • recommender.resourcemanagerProjectChangeRiskRecommendations.list
    • recommender.resourcemanagerProjectChangeRiskInsights.get
    • recommender.resourcemanagerProjectChangeRiskInsights.list
  • Account di servizio

    • recommender.iamServiceAccountChangeRiskRecommendations.get
    • recommender.iamServiceAccountChangeRiskRecommendations.list
    • recommender.iamServiceAccountChangeRiskInsights.get
    • recommender.iamServiceAccountChangeRiskInsights.list
  • Criterio IAM

    • recommender.iamPolicyChangeRiskRecommendations.get
    • recommender.iamPolicyChangeRiskRecommendations.list
    • recommender.iamPolicyChangeRiskInsights.get
    • recommender.iamPolicyChangeRiskInsights.list

Puoi anche concedere il ruolo roles/recommender.viewer per coprire queste autorizzazioni.

Informazioni sulla risposta per i suggerimenti/gli approfondimenti sui rischi delle modifiche

La tabella seguente fornisce una descrizione dei campi presentati nell'oggetto consiglio e negli oggetti di insight:

Consiglio

Nome campo Tipo Descrizione
associatedInsights string Approfondimento associato a questo suggerimento. projects/[project_number]/locations/global/ insightTypes/google.resourcemanager.project. ChangeRiskInsight/insights/[fingerprint]
asset object Contiene il nome e il tipo della risorsa associata.
etag string Impronta della configurazione del motore per suggerimenti. Fornisce il blocco ottimistico durante l'aggiornamento.
updateTime string Timestamp dell'ultima volta in cui il suggerimento è stato aggiornato. Un timestamp in formato Zulu UTC RFC 3339, preciso al nanosecondo. Esempio: 2022-01-10T22:47:38.421626Z.

Insight

Nome campo Tipo Descrizione
associatedRecommendations string Consiglio associato a questo consiglio. projects/[project_number]/locations/global/ recommenders/google.resourcemanager.project. ChangeRiskRecommender/recommendations/ [recommendation_id]
constraint object Contiene il vincolo dei suggerimenti per il rischio di modifica che sconsiglia all'utente. This project should not be deleted.
importance object Contiene l'elenco dei motivi per cui abbiamo stabilito che questa risorsa è importante. Ad esempio, utilizzo elevato.
risk object Contiene dettagli sulla valutazione del rischio. Ad esempio, i valori delle attività di utilizzo delle risorse vengono utilizzati per determinare l'importanza.
updateTime string Timestamp dell'ultima volta che il consiglio è stato aggiornato. Un timestamp in formato Zulu UTC RFC 3339, preciso al nanosecondo. Esempio: 2022-01-10T22:47:38.421626Z.

Visualizzazione dei suggerimenti sul rischio di modifica

Oltre al modello di utilizzo discusso sopra, puoi utilizzare l'approccio standard per il servizio motore per suggerimenti per visualizzare i suggerimenti e gli insight sul rischio di modifica per un progetto, un account di servizio o un criterio IAM:

  • Console Google Cloud
  • API
  • gcloud

Console Google Cloud

Puoi visualizzare consigli e approfondimenti sul rischio di modifica nelle pagine dei prodotti stesse. I suggerimenti saranno attivi automaticamente a condizione che tu disponga delle autorizzazioni elencate sopra.

La funzionalità di assistenza attiva ti avvisa dei pericoli dell'eliminazione di una risorsa importante e indica cosa fare quando viene visualizzato l'avviso nelle seguenti situazioni:

gcloud e API

Le sezioni seguenti presentano i comandi per richiedere suggerimenti e approfondimenti sui rischi delle modifiche tramite gcloud e l'API per un progetto, un account di servizio o un criterio IAM.

Progetto

È possibile accedere a insight e suggerimenti tramite la console Google Cloud, gcloud o l'API Recommender per tutti i clienti.

gcloud

Per visualizzare consigli e approfondimenti utilizzando gcloud, segui i passaggi riportati di seguito. Per ulteriori informazioni, consulta gli articoli Utilizzo dell'API - Approfondimenti e Utilizzo dell'API - Consigli.

Consigli:

Per elencare i consigli per il progetto in cui hai attivato l'API Recommender, esegui il seguente comando:

gcloud recommender recommendations list
--recommender=google.resourcemanager.project.ChangeRiskRecommender
--project=PROJECT_ID  --location=global --format=yaml

Sostituisci quanto segue:

  • PROJECT_ID : l'ID progetto.
Insight:

Per elencare gli approfondimenti, puoi utilizzare un insieme di comandi simile:

gcloud recommender insights list
--insight-type=google.resourcemanager.project.ChangeRiskInsight
--project=PROJECT_ID  --location=global --format=yaml

Sostituisci quanto segue:

  • PROJECT_ID : l'ID progetto.

API

Per visualizzare suggerimenti e approfondimenti, puoi utilizzare curl per inviare una richiesta alle API del motore per suggerimenti.

Consigli

Per elencare i suggerimenti per il progetto in cui hai abilitato l'API Recommender, esegui questo comando:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/
recommenders/google.resourcemanager.project.ChangeRiskRecommender/recommendations"

Sostituisci quanto segue:

  • BILLING_PROJECT_ID : l'ID del progetto di fatturazione.
Approfondimenti:

Per elencare gli approfondimenti, puoi utilizzare un insieme di comandi simile:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.resourcemanager.project.ChangeRiskInsight/insights"

Sostituisci quanto segue: * BILLING_PROJECT_ID : l'ID progetto di fatturazione.

Service account

Tutti i clienti possono accedere a approfondimenti e suggerimenti su un account di servizio tramite la console Google Cloud, gcloud o l'API Recommender.

gcloud

Per visualizzare consigli e approfondimenti utilizzando gcloud, segui i passaggi riportati di seguito. Per ulteriori informazioni, consulta Utilizzo dell'API - Approfondimenti e Utilizzo dell'API - Suggerimenti.

Consigli:

Per elencare suggerimenti per un account di servizio in cui hai abilitato l'API Recommender, esegui questo comando:

gcloud recommender recommendations list
--recommender=google.iam.serviceAccount.ChangeRiskRecommender
--project=PROJECT_ID  --location=global --format=yaml

Sostituisci quanto segue:

  • PROJECT_ID : l'ID progetto.
Insight:

Per elencare gli approfondimenti, puoi utilizzare un insieme di comandi simile:

gcloud recommender insights list
--insight-type=google.iam.serviceAccount.ChangeRiskInsight
--project=PROJECT_ID  --location=global --format=yaml

Sostituisci quanto segue: * PROJECT_ID : l'ID progetto.

API

Per visualizzare consigli e approfondimenti, puoi utilizzare curl per inviare una richiesta alle API Recommender.

Consigli:

Per elencare suggerimenti per un account di servizio in cui hai abilitato l'API Recommender, esegui questo comando:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/
recommenders/google.iam.serviceAccount.ChangeRiskRecommender/recommendations"

Sostituisci quanto segue:

  • PROJECT_ID : l'ID progetto.
  • BILLING_PROJECT_ID : l'ID progetto di fatturazione.
Approfondimenti:

Per elencare gli approfondimenti, puoi utilizzare un insieme di comandi simile:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.iam.serviceAccount.ChangeRiskInsight/insights"

Sostituisci quanto segue: * PROJECT_ID : l'ID progetto. * BILLING_PROJECT_ID : l'ID del progetto di fatturazione.

Criterio IAM

Tutti i clienti possono accedere a approfondimenti e suggerimenti su un criterio IAM tramite la console Google Cloud, gcloudo l'API Recommender.

gcloud

Per visualizzare consigli e approfondimenti utilizzando gcloud, segui i passaggi riportati di seguito. Per ulteriori informazioni, consulta Utilizzo dell'API - Approfondimenti e Utilizzo dell'API - Suggerimenti.

Consigli:

Per elencare i consigli per un criterio IAM in cui hai attivato l'API Recommender, esegui il seguente comando:

gcloud recommender recommendations list --recommender=google.iam.policy.ChangeRiskRecommender --project=PROJECT_ID  --location=global --format=yaml

Sostituisci quanto segue:

  • PROJECT_ID : l'ID progetto.
Insight:

Per elencare gli approfondimenti, puoi utilizzare un insieme di comandi simile:

gcloud recommender insights list --insight-type=google.iam.policy.ChangeRiskInsight --project=PROJECT_ID  --location=global --format=yaml

Sostituisci quanto segue: * PROJECT_ID : l'ID progetto.

API

Per visualizzare consigli e approfondimenti, puoi utilizzare curl per inviare una richiesta alle API Recommender.

Consigli:

Per elencare i consigli per un criterio IAM in cui hai attivato l'API Recommender, esegui il seguente comando:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/\recommenders/google.iam.policy.ChangeRiskRecommender/recommendations"

Sostituisci quanto segue:

  • PROJECT_ID : l'ID progetto.
Insight:

Per elencare gli approfondimenti, puoi utilizzare un insieme di comandi simile:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.iam.policy.ChangeRiskInsight/insights"

Sostituisci quanto segue: * PROJECT_ID : l'ID progetto. * BILLING_PROJECT_ID : l'ID progetto di fatturazione.

Eliminazioni rischiose con l'interfaccia a riga di comando gcloud

Quando elimini risorse tramite gcloud CLI, puoi utilizzare il flag nascosto facoltativo --recommend=yes nella traccia ALPHA per interrompere le modifiche rischiose. Di seguito sono riportati alcuni esempi di modifiche rischiose supportate con consigli. Se non viene visualizzata alcuna valutazione del rischio, la modifica viene considerata non rischiosa.

Eliminazione del progetto

Il seguente comando elimina un progetto:

  gcloud alpha projects delete PROJECT_ID  --recommend=yes

Vedrai le seguenti modifiche rischiose supportate con i consigli:

  Shutting down this project will immediately:
    - Stop all traffic and billing.
    - Start deleting resources.
    - Schedule the final deletion of the project after 30 days.
    - Block your access to the project.
    - Notify the owner of the project.

  Learn more about the shutdown process at
  https://cloud.google.com/resource-manager/docs/creating-managing-projects#shutting_down_projects

  WARNING: If you shut down this project you risk losing data or interrupting your services. In the last 30 days we observed this project had:
    - It had significant usage, including 9942 API calls.
    - It contains at least 1 highly utilized service account.
    - It included at least 211 resources.

  We recommend verifying this is the correct project to shut down.

  View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.resourcemanager.project.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000

  Do you want to continue (Y/n)?  n

Eliminazione dell'account di servizio

Il comando seguente elimina un account di servizio:

  gcloud alpha iam service-accounts delete example@PROJECT_ID .iam.gserviceaccount.com --recommend=yes

Con i consigli, vedrai le seguenti modifiche rischiose supportate:

  You are about to delete service account [example@PROJECT_ID .iam.gserviceaccount.com]

  Deleting this service account (SA) will delete all associated key IDs, and will prevent the account from authenticating to any Google Cloud service API.

  You cannot restore or roll back this change easily. We highly recommend disabling the account first, testing for any unexpected impact, and only then deleting.

  WARNING: If you delete this SA you risk interrupting your service, as we observed it was substantially used in the last 90 days.

  We recommend verifying this is the correct account to delete.

  View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.iam.serviceAccount.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000

  Do you want to continue (Y/n)?  n

Se visualizzi il seguente errore:

  ERROR: (gcloud.alpha.iam.service-accounts.delete) NOT_FOUND: Method not found.
  - '@type': type.googleapis.com/google.rpc.DebugInfo
    detail: 'Method ListInsights not found for service recommender.googleapis.com. Method not visible to labels: {PUBLIC}'

Assicurati che la configurazione del progetto sia impostata su un progetto incluso nella lista consentita per l'utilizzo dell'API Alpha Recommender con il seguente comando:

  gcloud config set project PROJECT_ID 

Eliminazione dell'associazione dei criteri IAM del progetto

Il seguente comando elimina un'associazione di criteri IAM del progetto:

  gcloud alpha projects remove-iam-policy-binding PROJECT_ID  --member=YOUR_EMAIL@DOMAIN.COM  --role=roles/owner --recommend=yes

Vedrai le seguenti modifiche rischiose supportate con i consigli:

  You are about to delete the role [roles/owner].

  WARNING: If you remove the role [roles/owner], there is a high risk that you might cause interruptions because it was used in the last 90 days.

  We recommend you verify the details and replace them with less privileged roles, if necessary.

  View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.iam.policy.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000

  Do you want to continue (Y/n)?  n

Feedback e assistenza

Invia un'email all'indirizzo active-assist-feedback@google.com in caso di problemi tecnici, domande o feedback.