Esaminare e applicare i consigli per le policy dell'organizzazione

Questa pagina spiega come visualizzare, comprendere e applicare i suggerimenti per le policy dell'organizzazione. I consigli per le policy dell'organizzazione ti aiutano a impostare le policy dell'organizzazione giuste senza interrompere i sistemi.

Prima di iniziare

  • Enable the Organization Policy and Recommender APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  • Configurare l'autenticazione.

    Select the tab for how you plan to use the samples on this page:

    gcloud

    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.

    REST

    Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali che fornisci a gcloud CLI.

      Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il seguente comando:

      gcloud init

      Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

    Per saperne di più, consulta Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .

  • Comprendere i suggerimenti per le norme dell'organizzazione.

Ruoli IAM richiesti

Questa sezione descrive i ruoli e le autorizzazioni IAM necessari per utilizzare i consigli per i criteri dell'organizzazione.

Per ottenere le autorizzazioni necessarie per gestire i suggerimenti per le policy dell'organizzazione, chiedi all'amministratore di concederti i seguenti ruoli IAM sulla risorsa per cui vuoi gestire i suggerimenti (progetto, cartella o organizzazione):

Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per gestire i suggerimenti per le policy dell'organizzazione. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per gestire i suggerimenti per le policy dell'organizzazione sono necessarie le seguenti autorizzazioni:

  • Per visualizzare i suggerimenti per le policy dell'organizzazione:
    • recommender.orgPolicyRecommendations.get
    • recommender.orgPolicyRecommendations.list
  • Per applicare e ignorare i suggerimenti per le policy dell'organizzazione:
    • recommender.orgPolicyRecommendations.get
    • recommender.orgPolicyRecommendations.list
    • recommender.orgPolicyRecommendations.update
  • Per gestire le policy dell'organizzazione:
    • orgpolicy.policy.get
    • orgpolicy.policy.set
    • orgpolicy.constraints.list
    • orgpolicy.policies.create
    • orgpolicy.policies.delete
    • orgpolicy.policies.list
    • orgpolicy.policies.update

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Limitazioni

L'anteprima di Organization Policy Recommender presenta le seguenti limitazioni:

  • Le statistiche sono disponibili solo per progetti, cartelle e organizzazioni che hanno consigli.

  • I consigli vengono forniti solo per i vincoli non configurati in una determinata risorsa o in una delle relative risorse figlio.

Vincoli supportati

I consigli sono disponibili solo per i seguenti vincoli dei criteri dell'organizzazione:

Revisione e applicazione dei suggerimenti

Puoi esaminare e applicare i suggerimenti per le policy dell'organizzazione con Google Cloud CLI e l'API Recommender.

gcloud

Esamina i consigli:

Per elencare i tuoi consigli, esegui il comando gcloud recommender recommendations list:

gcloud recommender recommendations list \
    --location=global \
    --recommender=google.orgpolicy.policy.Recommender \
    --RESOURCE_TYPE=RESOURCE_ID \
    --filter="recommenderSubtype:RECOMMENDER_SUBTYPE" \
    --format=FORMAT

Sostituisci i seguenti valori:

  • RESOURCE_TYPE: il tipo di risorsa per cui vuoi elencare i suggerimenti. Utilizza il valore project, folder o organization.

  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione per cui vuoi elencare i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

  • RECOMMENDER_SUBTYPE: (Facoltativo) L'ID del sottotipo per cui vuoi visualizzare i consigli. I sottotipi validi includono:

    • ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION fornisce consigli per il vincolo iam.managed.disableServiceAccountKeyCreation.
    • ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_UPLOAD fornisce consigli per il vincolo iam.managed.disableServiceAccountKeyUpload
  • FORMAT: il formato della risposta. Utilizza il valore json o yaml.

La risposta è simile al seguente esempio. In questo esempio, vengono analizzate due risorse per le chiavi del account di servizio esterno e non vengono rilevate violazioni. Di conseguenza, il suggerimento consiglia di impostare iam.managed.disableServiceAccountKeyCreation per evitare future violazioni.

[
  {
    "associatedInsights": [
      {
        "insight": "projects/123456789012/locations/global/insightTypes/google.orgpolicy.policy.Insight/insights/fb927dc1-9695-4436-0000-f0f285007c0f"
      }
    ],
    "content": {
      "operationGroups": [
        {
          "operations": [
            {
              "action": "add",
              "path": "/",
              "resource": "//orgpolicy.googleapis.com/projects/123456789012/policies/iam.managed.disableServiceAccountKeyCreation",
              "resourceType": "orgpolicy.googleapis.com/Policy",
              "value": {
                "etag": "",
                "name": "projects/123456789012/policies/iam.managed.disableServiceAccountKeyCreation",
                "spec": {
                  "etag": "",
                  "inheritFromParent": false,
                  "reset": false,
                  "rules": [
                    {
                      "enforce": true
                    }
                  ]
                }
              }
            }
          ]
        }
      ],
      "overview": {
        "constraint": {
          "id": "constraints/iam.managed.disableServiceAccountKeyCreation",
          "name": "Disable service account key creation"
        },
        "enforcedResources": [
          {
            "numOfResources": "2",
            "resourceType": "iam.googleapis.com/ServiceAccountKey"
          },
          {
            "numOfResources": "1",
            "resourceType": "cloudresourcemanager.googleapis.com/Project"
          }
        ]
      }
    },
    "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.",
    "etag": "\"826e992a0f9793ff\"",
    "lastRefreshTime": "2024-12-07T08:00:00Z",
    "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
    "primaryImpact": {
      "category": "SECURITY"
    },
    "priority": "P1",
    "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION",
    "stateInfo": {
      "state": "ACTIVE",
      "stateMetadata": {
        "reviewedBy": "alice",
        "priority": "high"
      }
    },
    "targetResources": [
      "//cloudresourcemanager.googleapis.com/projects/123456789012"
    ]
  }
]

Per saperne di più sui componenti di un consiglio, vedi Informazioni sui consigli.

Per applicare un consiglio:

  1. Utilizza il comando gcloud recommender recommendations mark-claimed per impostare lo stato del consiglio su CLAIMED, in modo che non venga modificato mentre lo applichi:

    gcloud recommender recommendations mark-claimed \
        RECOMMENDATION_ID \
        --location=global \
        --recommender=google.orgpolicy.policy.Recommender \
        --RESOURCE_TYPE=RESOURCE_ID \
        --format=FORMAT \
        --etag=ETAG \
        --state-metadata=STATE_METADATA
    

    Sostituisci i seguenti valori:

    • RECOMMENDATION_ID: l'identificatore univoco del suggerimento. Questo valore viene visualizzato alla fine del campo name nel suggerimento. Nell'esempio precedente, l'identificatore è fb927dc1-9695-4436-0000-f0f285007c0f.
    • RESOURCE_TYPE: il tipo di risorsa per cui vuoi gestire i suggerimenti. Utilizza il valore project, folder o organization.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione per cui vuoi elencare i suggerimenti. Google CloudGli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • FORMAT: il formato della risposta. Utilizza il valore json o yaml.
    • ETAG: un identificatore per una versione del suggerimento, ad esempio "7caf4103d7669e12". Tieni presente che questo valore può includere virgolette.
    • STATE_METADATA: (Facoltativo) Coppie chiave-valore separate da virgole che contengono i metadati che hai scelto per il consiglio. Ad esempio, --state-metadata=reviewedBy=alice,priority=high. I metadati sostituiscono il campo stateInfo.stateMetadata nel suggerimento.

    Se il comando ha esito positivo, la risposta mostra il suggerimento nello stato CLAIMED, come mostrato nell'esempio seguente. Per chiarezza, l'esempio omette la maggior parte dei campi:

    
      {
        "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.",
        "etag": "\"826e992a0f9793ff\"",
        "lastRefreshTime": "2024-12-07T08:00:00Z",
        "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
        "primaryImpact": {
          "category": "SECURITY"
        },
        "priority": "P1",
        "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION",
        "stateInfo": {
          "state": "CLAIMED",
          "stateMetadata": {\
            "reviewedBy": "alice",
            "priority": "high"
          }
        },
        "targetResources": [
          "//cloudresourcemanager.googleapis.com/projects/123456789012"
        ]
      }
    
  2. Aggiorna e applica il criterio dell'organizzazione per il progetto, la cartella o l'organizzazione specificati da RESOURCE_TYPE e RESOURCE_ID in modo che rifletta il consiglio.

  3. Aggiorna lo stato del suggerimento a SUCCEEDED se sei riuscito ad applicarlo o a FAILED se non sei riuscito ad applicarlo:

    gcloud recommender recommendations COMMAND \
        RECOMMENDATION_ID \
        --location=global \
        --recommender=google.iam.policy.Recommender \
        --RESOURCE_TYPE=RESOURCE_ID \
        --format=FORMAT \
        --etag=ETAG \
        --state-metadata=STATE_METADATA
    

    Sostituisci i seguenti valori:

    • COMMAND: utilizza mark-succeeded se hai applicato correttamente il consiglio oppure mark-failed se non hai potuto applicarlo.
    • RECOMMENDATION_ID: l'identificatore univoco del suggerimento. Questo valore viene visualizzato alla fine del campo name nel suggerimento. Nell'esempio precedente, l'identificatore è fb927dc1-9695-4436-0000-f0f285007c0f.
    • RESOURCE_TYPE: il tipo di risorsa per cui vuoi gestire i suggerimenti. Utilizza il valore project, folder o organization.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione per cui vuoi elencare i suggerimenti. Google CloudGli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • FORMAT: il formato della risposta. Utilizza il valore json o yaml.
    • ETAG: un identificatore per una versione del suggerimento, ad esempio "7caf4103d7669e12". Tieni presente che questo valore può includere virgolette.
    • STATE_METADATA: (Facoltativo) Coppie chiave-valore separate da virgole che contengono i metadati che hai scelto per il consiglio. Ad esempio, --state-metadata=reviewedBy=alice,priority=high. I metadati sostituiscono il campo stateInfo.stateMetadata nel suggerimento.

    Ad esempio, se hai contrassegnato il suggerimento come riuscito, la risposta mostra il suggerimento nello stato SUCCEEDED. Per chiarezza, questo esempio omette la maggior parte dei campi:

    
      {
        "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.",
        "etag": "\"826e992a0f9793ff\"",
        "lastRefreshTime": "2024-12-07T08:00:00Z",
        "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
        "primaryImpact": {
          "category": "SECURITY"
        },
        "priority": "P1",
        "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION",
        "stateInfo": {
          "state": "SUCCEEDED",
          "stateMetadata": {
            "reviewedBy": "alice",
            "priority": "high"
          }
        },
        "targetResources": [
          "//cloudresourcemanager.googleapis.com/projects/123456789012"
        ]
      }
    

    Per ripristinare le modifiche alla policy dell'organizzazione, imposta la policy dell'organizzazione sulla configurazione originale, fornita nel campo configuredPolicy dell'insight associato.

REST

Esamina i consigli:

Per elencare tutti i suggerimenti disponibili per il tuo progetto, la tua cartella o la tua organizzazione, utilizza il metodo recommendations.list dell'API Recommender.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: Il tipo di risorsa per cui vuoi gestire i suggerimenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione per cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • PAGE_SIZE: (Facoltativo) Il numero massimo di risultati da restituire da questa richiesta. Se non specificato, il server determinerà il numero di risultati da restituire. Se il numero di consigli è maggiore della dimensione della pagina, la risposta contiene un token di impaginazione che puoi utilizzare per recuperare la pagina successiva dei risultati.
  • PAGE_TOKEN: (Facoltativo) Il token di paginazione restituito in una risposta precedente da questo metodo. Se specificato, l'elenco dei consigli inizierà dal punto in cui terminava la richiesta precedente.
  • FILTER: (Facoltativo) Un'espressione di filtro per limitare i suggerimenti restituiti. Puoi filtrare i consigli in base al campo stateInfo.state. Ad esempio, stateInfo.state:"DISMISSED" o stateInfo.state:"FAILED".
  • PROJECT_ID: il tuo ID progetto Google Cloud . Gli ID progetto sono stringhe alfanumeriche, come my-project.

Metodo HTTP e URL:

GET https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=FILTER

Per inviare la richiesta, espandi una di queste opzioni:

La risposta è simile al seguente esempio. In questo esempio, vengono analizzate due risorse per le chiavi degli account di servizio esterni e non vengono rilevate violazioni. Di conseguenza, il suggerimento consiglia di impostare iam.managed.disableServiceAccountKeyCreation per evitare future violazioni.

[
  {
    "associatedInsights": [
      {
        "insight": "projects/123456789012/locations/global/insightTypes/google.orgpolicy.policy.Insight/insights/66d543f3-845d-49d6-a26b-80d84804d8a8"
      }
    ],
    "content": {
      "operationGroups": [
        {
          "operations": [
            {
              "action": "add",
              "path": "/",
              "resource": "//orgpolicy.googleapis.com/projects/123456789012/policies/iam.managed.disableServiceAccountKeyCreation",
              "resourceType": "orgpolicy.googleapis.com/Policy",
              "value": {
                "etag": "",
                "name": "projects/123456789012/policies/iam.managed.disableServiceAccountKeyCreation",
                "spec": {
                  "etag": "",
                  "inheritFromParent": false,
                  "reset": false,
                  "rules": [
                    {
                      "enforce": true
                    }
                  ]
                }
              }
            }
          ]
        }
      ],
      "overview": {
        "constraint": {
          "id": "constraints/iam.managed.disableServiceAccountKeyCreation",
          "name": "Disable service account key creation"
        },
        "enforcedResources": [
          {
            "numOfResources": "2",
            "resourceType": "iam.googleapis.com/ServiceAccountKey"
          },
          {
            "numOfResources": "1",
            "resourceType": "cloudresourcemanager.googleapis.com/Project"
          }
        ]
      }
    },
    "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.",
    "etag": "\"826e992a0f9793ff\"",
    "lastRefreshTime": "2024-12-07T08:00:00Z",
    "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
    "primaryImpact": {
      "category": "SECURITY"
    },
    "priority": "P1",
    "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION",
    "stateInfo": {
      "state": "ACTIVE",
      "stateMetadata": {
        "reviewedBy": "alice",
        "priority": "high"
      }
    },
    "targetResources": [
      "//cloudresourcemanager.googleapis.com/projects/123456789012"
    ]
  }
]

Per saperne di più sui componenti di un consiglio, vedi Informazioni sui consigli.

Per applicare un consiglio:

  1. Contrassegna il suggerimento come CLAIMED:

    Per contrassegnare un suggerimento come CLAIMED, in modo che non venga modificato durante l'applicazione, utilizza il metodo recommendations.markClaimed dell'API Recommender.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • RESOURCE_TYPE: Il tipo di risorsa per cui vuoi gestire i suggerimenti. Utilizza il valore projects, folders o organizations.
    • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione per cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • RECOMMENDATION_ID: l'identificatore univoco per il suggerimento. Questo valore viene visualizzato alla fine del campo name nel consiglio. Ad esempio, se il campo name è projects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID consiglio è fb927dc1-9695-4436-0000-f0f285007c0f.
    • ETAG: il valore del campo etag nel suggerimento, ad esempio "dd0686e7136a4cbb". Utilizza le barre rovesciate per eseguire l'escape delle virgolette, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: (Facoltativo) Un oggetto che contiene coppie chiave-valore con i metadati che preferisci sul suggerimento. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il campo stateInfo.stateMetadata nel suggerimento.
    • PROJECT_ID: il tuo ID progetto Google Cloud . Gli ID progetto sono stringhe alfanumeriche, come my-project.

    Metodo HTTP e URL:

    POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markClaimed

    Corpo JSON della richiesta:

    {
      "etag": "ETAG",
      "stateMetadata": {
        "STATE_METADATA"
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    La risposta mostra il suggerimento nello stato CLAIMED, come mostrato nel seguente esempio. Per chiarezza, questo esempio omette la maggior parte dei campi:

    {
      "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.",
      "etag": "\"826e992a0f9793ff\"",
      "lastRefreshTime": "2024-12-07T08:00:00Z",
      "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
      "primaryImpact": {
        "category": "SECURITY"
      },
      "priority": "P1",
      "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION",
      "stateInfo": {
        "state": "CLAIMED",
        "stateMetadata": {
          "reviewedBy": "alice",
          "priority": "high"
        }
      },
      "targetResources": [
        "//cloudresourcemanager.googleapis.com/projects/123456789012"
      ]
    }
    

  2. Aggiorna la policy dell'organizzazione per il progetto, la cartella o l'organizzazione specificati da RESOURCE_TYPE e RESOURCE_ID in modo che rifletta il consiglio.

  3. Aggiorna lo stato del suggerimento a SUCCEEDED se lo hai applicato correttamente o a FAILED se non è stato possibile applicarlo:

    SUCCEEDED

    Per contrassegnare un suggerimento come SUCCEEDED, indicando che sei riuscito ad applicarlo, utilizza il metodo recommendations.markSucceeded dell'API Recommender.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • RESOURCE_TYPE: Il tipo di risorsa per cui vuoi gestire i suggerimenti. Utilizza il valore projects, folders o organizations.
    • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione per cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • RECOMMENDATION_ID: l'identificatore univoco per il suggerimento. Questo valore viene visualizzato alla fine del campo name nel consiglio. Ad esempio, se il campo name è projects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID consiglio è fb927dc1-9695-4436-0000-f0f285007c0f.
    • ETAG: il valore del campo etag nel suggerimento, ad esempio "dd0686e7136a4cbb". Utilizza le barre rovesciate per eseguire l'escape delle virgolette, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: (Facoltativo) Un oggetto che contiene coppie chiave-valore con i metadati che preferisci sul suggerimento. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il campo stateInfo.stateMetadata nel suggerimento.
    • PROJECT_ID: il tuo ID progetto Google Cloud . Gli ID progetto sono stringhe alfanumeriche, come my-project.

    Metodo HTTP e URL:

    POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markSucceeded

    Corpo JSON della richiesta:

    {
      "etag": "ETAG",
      "stateMetadata": {
        "STATE_METADATA"
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    La risposta mostra il suggerimento nello stato SUCCEEDED, come mostrato nel seguente esempio. Per chiarezza, questo esempio omette la maggior parte dei campi:

    {
      "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.",
      "etag": "\"826e992a0f9793ff\"",
      "lastRefreshTime": "2024-12-07T08:00:00Z",
      "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
      "primaryImpact": {
        "category": "SECURITY"
      },
      "priority": "P1",
      "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION",
      "stateInfo": {
        "state": "SUCCEEDED",
        "stateMetadata": {
          "reviewedBy": "alice",
          "priority": "high"
        }
      },
      "targetResources": [
        "//cloudresourcemanager.googleapis.com/projects/123456789012"
      ]
    }
    

    FAILED

    Per contrassegnare un suggerimento come FAILED, indicando che non è stato possibile applicarlo, utilizza il metodo recommendations.markFailed dell'API Recommender.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • RESOURCE_TYPE: Il tipo di risorsa per cui vuoi gestire i suggerimenti. Utilizza il valore projects, folders o organizations.
    • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione per cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • RECOMMENDATION_ID: l'identificatore univoco per il suggerimento. Questo valore viene visualizzato alla fine del campo name nel consiglio. Ad esempio, se il campo name è projects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID consiglio è fb927dc1-9695-4436-0000-f0f285007c0f.
    • ETAG: il valore del campo etag nel suggerimento, ad esempio "dd0686e7136a4cbb". Utilizza le barre rovesciate per eseguire l'escape delle virgolette, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: (Facoltativo) Un oggetto che contiene coppie chiave-valore con i metadati che preferisci sul suggerimento. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il campo stateInfo.stateMetadata nel suggerimento.
    • PROJECT_ID: il tuo ID progetto Google Cloud . Gli ID progetto sono stringhe alfanumeriche, come my-project.

    Metodo HTTP e URL:

    POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markFailed

    Corpo JSON della richiesta:

    {
      "etag": "ETAG",
      "stateMetadata": {
        "STATE_METADATA"
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    La risposta mostra il suggerimento nello stato FAILED, come mostrato nel seguente esempio. Per chiarezza, questo esempio omette la maggior parte dei campi:

    {
      "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.",
      "etag": "\"826e992a0f9793ff\"",
      "lastRefreshTime": "2024-12-07T08:00:00Z",
      "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
      "primaryImpact": {
        "category": "SECURITY"
      },
      "priority": "P1",
      "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION",
      "stateInfo": {
        "state": "FAILED",
        "stateMetadata": {
          "reviewedBy": "alice",
          "priority": "high"
        }
      },
      "targetResources": [
        "//cloudresourcemanager.googleapis.com/projects/123456789012"
      ]
    }
    

Informazioni sui consigli

Ogni consiglio include informazioni per aiutarti a capire perché è stato formulato e suggerimenti per apportare modifiche alla configurazione delle policy dell'organizzazione. I suoi attributi principali includono:

  • description: un riepilogo del suggerimento leggibile da una persona

  • recommenderSubtype: l'identificatore di un sottotipo di suggerimenti. Ogni vincolo ha un recommenderSubtype univoco.

  • content: contiene le modifiche consigliate alla policy dell'organizzazione.

    • overview: le informazioni di riepilogo condensate sul suggerimento.

    • constraint: fornisce informazioni sul vincolo.

    • enforced_resources: fornisce informazioni sulle risorse interessate da questa policy dell'organizzazione se applichi il suggerimento.

    • operationGroups: un insieme di una o più operazioni sulla policy dell'organizzazione quando applichi un suggerimento.

  • associatedInsights: il nome della risorsa degli insight che hanno portato a questo suggerimento.

Per saperne di più sugli attributi di un suggerimento, consulta il riferimento ai suggerimenti.

Gli approfondimenti e i suggerimenti vengono generati per le risorse per le quali non è impostato uno dei criteri dell'organizzazione supportati o per le relative risorse secondarie. Per visualizzare la configurazione della policy dell'organizzazione su cui si basa questo consiglio, visualizza gli approfondimenti sulla policy dell'organizzazione associati al consiglio. Questi approfondimenti sono elencati nel campo associatedInsights. Per visualizzare un approfondimento della policy dell'organizzazione associato al consiglio, segui questi passaggi:

  1. Identifica quali approfondimenti nel campo associatedInsights sono approfondimenti sui criteri dell'organizzazione. Gli approfondimenti sulle policy dell'organizzazione hanno il tipo di insight google.orgpolicy.policy.Insight. Questo tipo viene visualizzato dopo insightTypes nel campo insight.

  2. Copia l'ID dell'approfondimento sul criterio dell'organizzazione. L'ID è tutto ciò che segue insights/ nel campo insight. Ad esempio, se il campo dell'insight indica projects/123456789012/locations/us/insightTypes/google.orgpolicy.policy.Insight/insights/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID insight è fb927dc1-9695-4436-0000-f0f285007c0f.

  3. Segui le istruzioni per ottenere un approfondimento sulle policy dell'organizzazione utilizzando l'ID approfondimento che hai copiato.

Esportare i suggerimenti in BigQuery

Per visualizzare snapshot giornalieri di tutti i suggerimenti per la tua organizzazione, inclusi i suggerimenti per le norme dell'organizzazione, puoi esportare i suggerimenti in BigQuery.

Per esportare i consigli in BigQuery, devi configurare un trasferimento di dati utilizzando BigQuery Data Transfer Service. Per scoprire come configurare un trasferimento di dati, consulta Esportare i consigli in BigQuery.

Passaggi successivi