Suggerimenti per la modifica dei rischi

I suggerimenti sui rischi delle modifiche ti aiutano a ridurre il rischio di errori di configurazione dell'infrastruttura cloud segnalando in modo intelligente le modifiche rischiose comuni alle tue 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 modifiche impreviste dei carichi di lavoro e possono causare una serie di problemi, tra cui problemi di prestazioni, di affidabilità e persino interruzioni del servizio. All'inizio molti errori di configurazione possono passare inosservati, il che le rende difficili da individuare e risolvere.

I consigli sui rischi legati alle modifiche sono una nuova famiglia di consigli e approfondimenti di Active Assist all'interno del servizio Motore per suggerimenti. I suggerimenti sui rischi delle modifiche segnalano automaticamente modifiche rischiose alle risorse cloud identificate come important in base al loro utilizzo e ad altri indicatori, per contribuire a prevenire, rilevare e mitigare i problemi (ad esempio le interruzioni del servizio) causati da errori di configurazione di queste importanti risorse cloud. Ad esempio, se cerchi di eliminare un progetto molto utilizzato o di modificare un criterio IAM che potrebbe essere una dipendenza essenziale in base alla sua recente attività di utilizzo, i consigli sul 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 sui rischi

I suggerimenti relativi al rischio di modifica sono attualmente supportati solo per le risorse e le azioni elencate nella tabella di seguito.

Risorsa Azione Piattaforme Criteri utilizzati per determinare l'importanza delle risorse
Progetto Eliminazione
  • Console Google Cloud
  • Interfaccia a riga di comando gcloud
  • API Recommender
  • Utilizzo dei progetti (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
  • Appartenenza a un progetto importante

Prima di iniziare

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

  1. Abilita l'API Recommender su un singolo progetto di fatturazione. Puoi quindi utilizzare lo stesso progetto di fatturazione per recuperare suggerimenti e insight per altri progetti, per l'intera organizzazione o per l'account di fatturazione utilizzando la funzionalità 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 relativi ai rischi delle modifiche, 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

Per coprire queste autorizzazioni, puoi anche concedere il ruolo roles/recommender.viewer.

Comprensione della risposta per suggerimenti/insight sul rischio di cambiamento

La tabella seguente fornisce una descrizione dei campi presentati nell'oggetto suggerimento e approfondimento:

Consiglio

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

Insight

Nome campo Tipo Descrizione
associatedRecommendations string Consiglio associato a questo suggerimento. projects/[project_number]/locations/global/ recommenders/google.resourcemanager.project. ChangeRiskRecommender/recommendations/ [recommendation_id]
constraint object Contiene il vincolo dei suggerimenti sul rischio di modifica che l'utente non ha consigliato di fare. 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 i dettagli della valutazione del rischio. Ad esempio,i valori dell'attività di utilizzo delle risorse vengono utilizzati per determinare l'importanza.
updateTime string Timestamp dell'ultima volta in cui il consiglio è stato aggiornato. Un timestamp in formato RFC 3339 UTC Zulu, preciso al nanosecondo. Esempio: 2022-01-10T22:47:38.421626Z.

Visualizzazione dei suggerimenti relativi ai rischi delle modifiche

Oltre al modello di utilizzo discusso sopra, puoi utilizzare l'approccio standard per il servizio del motore per suggerimenti per visualizzare i suggerimenti e gli insight sui rischi delle modifiche per un progetto, un account di servizio o un criterio IAM:

  • Console Google Cloud
  • API
  • gcloud

Console Google Cloud

Puoi visualizzare consigli e approfondimenti sui rischi delle modifiche nelle pagine dei prodotti stesse. I consigli saranno attivi automaticamente a condizione che tu disponga delle autorizzazioni elencate sopra.

Active Assist ti avvisa dei pericoli derivanti dall'eliminazione di una risorsa importante e indica cosa fare quando questo avviso appare nelle seguenti situazioni:

gcloud e API

Le seguenti sezioni presentano i comandi per richiedere suggerimenti e insight 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 suggerimenti per il progetto in cui hai abilitato l'API Recommender, esegui questo 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:

È possibile utilizzare un insieme di comandi simile per elencare gli approfondimenti:

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 consigli e approfondimenti, puoi utilizzare curl per inviare una richiesta alle API del motore per suggerimenti.

Suggerimenti

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.
Insight:

È possibile utilizzare un insieme di comandi simile per elencare gli approfondimenti:

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 del progetto di fatturazione.

Account di servizio

È possibile accedere agli insight e ai suggerimenti relativi a un account di servizio 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 suggerimenti per un account di servizio in cui hai attivato 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:

È possibile utilizzare un insieme di comandi simile per elencare gli approfondimenti:

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 del motore per suggerimenti.

Consigli:

Per elencare i suggerimenti per un account di servizio in cui hai attivato 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 del progetto di fatturazione.
Insight:

È possibile utilizzare un insieme di comandi simile per elencare gli approfondimenti:

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

È possibile accedere a insight e suggerimenti su un criterio IAM 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 suggerimenti per un criterio IAM in cui hai abilitato l'API Recommender, esegui questo 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:

È possibile utilizzare un insieme di comandi simile per elencare gli approfondimenti:

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 del motore per suggerimenti.

Consigli:

Per elencare i suggerimenti per un criterio IAM in cui hai abilitato l'API Recommender, esegui questo 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:

È possibile utilizzare un insieme di comandi simile per elencare gli approfondimenti:

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 del progetto di fatturazione.

Eliminazioni rischiose con gcloud CLI

Quando elimini le risorse tramite gcloud CLI, puoi utilizzare il flag nascosto facoltativo --recommend=yes nel traccia ALPHA per interrompere le modifiche rischiose. Di seguito sono riportati alcuni esempi di modifiche rischiose supportate con i consigli. Se non viene visualizzata alcuna valutazione del rischio, la modifica è 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 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 seguente comando elimina un account di servizio:

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

Vedrai le seguenti modifiche rischiose supportate con consigli:

  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 dei 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 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.