Rivedere e applicare i consigli sui ruoli per progetti, cartelle e organizzazioni

Questa pagina spiega come visualizzare, comprendere e applicare i consigli sui ruoli per progetti, cartelle e organizzazioni. I suggerimenti dei ruoli ti aiutano ad applicare il principio del privilegio minimo assicurandoti che le entità dispongano solo delle autorizzazioni necessarie.

Prima di iniziare

Ruoli IAM obbligatori

Questa sezione descrive i ruoli e le autorizzazioni IAM necessari per lavorare con i suggerimenti sui ruoli.

Visualizza i suggerimenti

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

  • Visualizzatore ruoli (roles/iam.roleViewer)
  • Visualizzatore motore per suggerimenti IAM (roles/recommender.iamViewer)
  • Per visualizzare i suggerimenti a livello di progetto: Amministratore IAM progetto (roles/resourcemanager.projectIamAdmin)
  • Per visualizzare i suggerimenti a livello di cartella: Amministratore IAM cartella (roles/resourcemanager.folderIamAdmin)
  • Per visualizzare i consigli a livello di organizzazione: Amministratore dell'organizzazione (roles/resourcemanager.organizationAdmin)

Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per visualizzare i suggerimenti sui ruoli. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

  • iam.roles.get
  • iam.roles.list
  • recommender.iamPolicyRecommendations.get
  • recommender.iamPolicyRecommendations.list
  • recommender.iamPolicyInsights.get
  • recommender.iamPolicyInsights.list
  • recommender.iamPolicyLateralMovementInsights.get
  • recommender.iamPolicyLateralMovementInsights.list
  • resourcemanager.RESOURCE.getIamPolicy, dove RESOURCE è il tipo di risorsa di cui vuoi visualizzare i consigli (projects, folders o organizations).

Potresti anche essere in grado di ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Applicare e ignorare i consigli

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

  • Visualizzatore ruoli (roles/iam.roleViewer)
  • Amministratore motore per suggerimenti IAM (roles/recommender.iamAdmin)
  • Per gestire i suggerimenti a livello di progetto: Amministratore IAM progetto (roles/resourcemanager.projectIamAdmin)
  • Per gestire i suggerimenti a livello di cartella: Amministratore IAM cartella (roles/resourcemanager.folderIamAdmin)
  • Per gestire i consigli a livello di organizzazione: Amministratore dell'organizzazione (roles/resourcemanager.organizationAdmin)

Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per visualizzare, applicare e ignorare i suggerimenti sui ruoli. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

  • iam.roles.get
  • iam.roles.list
  • recommender.iamPolicyRecommendations.get
  • recommender.iamPolicyRecommendations.list
  • recommender.iamPolicyInsights.get
  • recommender.iamPolicyInsights.list
  • recommender.iamPolicyLateralMovementInsights.get
  • recommender.iamPolicyLateralMovementInsights.list
  • recommender.iamPolicyRecommendations.update
  • resourcemanager.RESOURCE.getIamPolicy, dove RESOURCE è il tipo di risorsa per cui vuoi gestire i consigli (projects, folders o organizations).
  • resourcemanager.RESOURCE.setIamPolicy, dove RESOURCE è il tipo di risorsa per cui vuoi gestire i consigli (projects, folders o organizations).

Potresti anche essere in grado di ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Revisione e applicazione dei suggerimenti

Il modo più semplice per esaminare e applicare i consigli è utilizzare Google Cloud Console. Inoltre, se vuoi creare automaticamente un ruolo personalizzato quando applichi un consiglio, devi utilizzare la console.

Puoi anche esaminare e applicare i consigli con l'interfaccia a riga di comando di Google Cloud e l'API Recommendationer.

console

  1. Nella console, vai alla pagina IAM.

    Vai a IAM

  2. Seleziona un progetto, una cartella o un'organizzazione.

  3. Nell'elenco delle entità che hanno accesso al tuo progetto, trova la colonna Autorizzazioni analizzate.

    Per ogni ruolo concesso a un'entità, questa colonna mostra eventuali approfondimenti relativi alla sicurezza. Questi insight mettono in evidenza il modo in cui le entità accedono alle risorse. Ad esempio, alcuni insight mettono in evidenza le autorizzazioni in eccesso o le autorizzazioni di cui un'entità non è necessaria. Altri approfondimenti mettono in evidenza gli account di servizio con funzionalità di spostamento laterale:

    Se è disponibile un suggerimento per gestire un approfondimento, nella console viene visualizzata l'icona Consiglio disponibile .

  4. Se sono presenti consigli da esaminare, fai clic sull'icona Consiglio disponibile per visualizzare i dettagli sul consiglio.

    Se il suggerimento consiglia di sostituire il ruolo, verrà sempre suggerito un insieme di ruoli predefiniti che puoi applicare.

    In alcuni casi, il suggerimento sui ruoli suggerisce anche di creare un nuovo ruolo personalizzato a livello di progetto. Se è disponibile un suggerimento di ruolo personalizzato, la console lo mostra per impostazione predefinita. Per passare al suggerimento relativo al ruolo predefinito, fai clic su Visualizza il ruolo predefinito consigliato.

  5. Rivedi attentamente il suggerimento e assicurati di comprendere in che modo cambierà l'accesso dell'entità alle risorse Google Cloud. Tranne nel caso dei consigli per gli account di servizio gestiti da Google, un consiglio non aumenterà mai il livello di accesso principale. Per ulteriori informazioni, consulta la sezione Come vengono generati i consigli sui ruoli.

    Per scoprire come esaminare i consigli nella console, consulta Esaminare i consigli in questa pagina.

  6. (Facoltativo) Se il consiglio è quello di creare un ruolo personalizzato, aggiorna le sezioni Titolo, Descrizione, ID e Fase di lancio del ruolo, se necessario.

    Se devi aggiungere autorizzazioni al ruolo personalizzato, fai clic su Aggiungi autorizzazioni.

    Se devi rimuovere le autorizzazioni dal ruolo personalizzato, deseleziona la casella di controllo per ogni autorizzazione da rimuovere.

  7. Intervieni sul consiglio.

    Per applicare il consiglio, fai clic su Applica o Crea e applica. Se cambi idea nei prossimi 90 giorni, utilizza la cronologia consigli per ripristinare la tua scelta.

    Per ignorare il consiglio, fai clic su Ignora e conferma la tua scelta. Puoi ripristinare un consiglio ignorato a condizione che sia ancora valido.

  8. Ripeti i passaggi precedenti finché non avrai esaminato tutti i consigli.

gcloud

Esamina i consigli visualizzati per te:

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

gcloud recommender recommendations list \
    --location=global \
    --recommender=google.iam.policy.Recommender \
    --RESOURCE_TYPE=RESOURCE_ID \
    --format=FORMAT

Sostituisci i seguenti valori:

  • RESOURCE_TYPE: il tipo di risorsa in cui Elencare i suggerimenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud per cui vuoi elencare i consigli. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID di cartelle e organizzazioni sono numerici, ad esempio 123456789012.
  • FORMAT: il formato della risposta. Utilizza json o yaml.

La risposta è simile all'esempio seguente. In questo esempio, un account di servizio non ha utilizzato autorizzazioni dal ruolo Amministratore Compute (roles/compute.admin) negli ultimi 90 giorni. Di conseguenza, il suggerimento di ruolo suggerisce di revocare il ruolo:

[
  {
    "associatedInsights": [
      {
        "insight": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/279ef748-408f-44db-9a4a-1ff8865b9839"
      }
    ],
    "content": {
      "operationGroups": [
        {
          "operations": [
            {
              "action": "remove",
              "path": "/iamPolicy/bindings/*/members/*",
              "pathFilter": {
                "/iamPolicy/bindings/*/condition/expression": "",
                "/iamPolicy/bindings/*/members/*": "serviceAccount:id-1234567890@example-project.iam.gserviceaccount.com",
                "/iamPolicy/bindings/*/role": "roles/compute.admin"
              },
              "resource": "//cloudresourcemanager.googleapis.com/projects/example-project",
              "resourceType": "cloudresourcemanager.googleapis.com/Project"
            }
          ]
        }
      ]
    },
    "description": "This role has not been used during the observation window.",
    "recommenderSubtype": "REMOVE_ROLE",
    "etag": "\"770237e2c0decf40\"",
    "lastRefreshTime": "2020-01-09T06:06:17Z",
    "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
    "primaryImpact": {
      "category": "SECURITY",
      "securityProjection": {
        "details": {
          "revokedIamPermissionsCount": 708
        }
      }
    },
    "priority": "P4",
    "stateInfo": {
      "state": "ACTIVE"
    }
  }
]

Esamina attentamente ogni suggerimento e considera come cambierà l'accesso del provider principale alle risorse di Google Cloud. Per informazioni su come rivedere i suggerimenti dall'interfaccia a riga di comando gcloud, consulta Esaminare i suggerimenti in questa pagina.

Per applicare un consiglio:

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

    gcloud recommender recommendations mark-claimed \
        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:

    • RECOMMENDATION_ID: l'identificatore univoco del suggerimento. Questo valore viene visualizzato alla fine del campo name nel consiglio. Nell'esempio riportato sopra, l'ID è fb927dc1-9695-4436-0000-f0f285007c0f.
    • RESOURCE_TYPE: il tipo di risorsa di cui vuoi gestire i suggerimenti. Utilizza il valore project, folder o organization.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud di cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • FORMAT: il formato della risposta. Utilizza json o yaml.
    • ETAG: il valore del campo etag nel consiglio, ad esempio "dd0686e7136a4cbb". Tieni presente che questo valore può includere le virgolette.
    • STATE_METADATA: facoltativo. Coppie chiave-valore separate da virgole che contengono la scelta di metadati in merito al consiglio. Ad esempio, --state-metadata=reviewedBy=alice,priority=high. I metadati sostituiscono il campo stateInfo.stateMetadata nel consiglio.

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

    [
      {
        "description": "This role has not been used during the observation window.",
        "recommenderSubtype": "REMOVE_ROLE",
        "etag": "\"df7308cca9719dcc\"",
        "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
        "stateInfo": {
          "state": "CLAIMED",
          "stateMetadata": {
            "reviewedBy": "alice",
            "priority": "high"
          }
        }
      }
    ]
  2. Ottieni il criterio di autorizzazione per il progetto, quindi modificalo e impostalo in modo che rifletta il suggerimento.

  3. Aggiorna lo stato del consiglio su SUCCEEDED, se hai potuto applicare il consiglio o su FAILED se non riesci 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 potuto applicare il consiglio o mark-failed se non riesci ad applicare il consiglio.
    • RECOMMENDATION_ID: l'identificatore univoco del suggerimento. Questo valore viene visualizzato alla fine del campo name nel consiglio. Nell'esempio riportato sopra, l'ID è fb927dc1-9695-4436-0000-f0f285007c0f.
    • RESOURCE_TYPE: il tipo di risorsa di cui vuoi gestire i suggerimenti. Utilizza il valore project, folder o organization.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud di cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • FORMAT: il formato della risposta. Utilizza json o yaml.
    • ETAG: il valore del campo etag nel consiglio, ad esempio "dd0686e7136a4cbb". Tieni presente che questo valore può includere le virgolette.
    • STATE_METADATA: facoltativo. Coppie chiave-valore separate da virgole che contengono la scelta di metadati in merito al consiglio. Ad esempio, --state-metadata=reviewedBy=alice,priority=high. I metadati sostituiscono il campo stateInfo.stateMetadata nel consiglio.

    Ad esempio, se hai contrassegnato il consiglio come completato, la risposta mostra il consiglio in uno stato SUCCEEDED. Per chiarezza, in questo esempio mancano la maggior parte dei campi:

    [
      {
        "description": "This role has not been used during the observation window.",
        "recommenderSubtype": "REMOVE_ROLE",
        "etag": "\"dd0686e7136a4cbb\"",
        "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
        "stateInfo": {
          "state": "SUCCEEDED",
          "stateMetadata": {
            "reviewedBy": "alice",
            "priority": "high"
          }
        }
      }
    ]

REST

Queste istruzioni presuppongono che tu abbia autenticato e impostato la variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS.

Esamina i consigli visualizzati per te:

Per elencare tutti i suggerimenti disponibili per il progetto, la cartella o l'organizzazione, utilizza il metodo recommendations.list del motore per suggerimenti.

Prima di utilizzare uno qualsiasi dei dati della richiesta, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa di cui vuoi gestire i consigli. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud di cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID di cartelle e organizzazioni 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 suggerimenti è maggiore delle dimensioni della pagina, la risposta contiene un token di impaginazione che puoi utilizzare per recuperare la pagina dei risultati successiva.
  • PAGE_TOKEN: facoltativo. Il token di impaginazione ha restituito una risposta precedente da questo metodo. Se specificato, l'elenco dei consigli inizierà dove è terminata 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".

Metodo HTTP e URL:

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

Per inviare la richiesta, espandi una delle seguenti opzioni:

La risposta è simile all'esempio seguente. In questo esempio, un account di servizio nel progetto example-project non ha utilizzato alcuna autorizzazione dal ruolo di amministratore di Compute (roles/compute.admin) negli ultimi 90 giorni. Di conseguenza, il motore per suggerimenti consiglia di revocare il ruolo:

{
  "recommendations": [
    "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f",
    "description": "This role has not been used during the observation window.",
    "lastRefreshTime": "2020-01-09T06:06:17Z",
    "primaryImpact": {
      "category": "SECURITY",
      "securityProjection": {
        "details": {
          "revokedIamPermissionsCount": 708
        }
      }
    },
    "priority": "P4",
    "content": {
      "operationGroups": [
        {
          "operations": [
            {
              "action": "remove",
              "path": "/iamPolicy/bindings/*/members/*",
              "pathFilter": {
                "/iamPolicy/bindings/*/condition/expression": "",
                "/iamPolicy/bindings/*/members/*": "serviceAccount:id-1234567890@example-project.iam.gserviceaccount.com",
                "/iamPolicy/bindings/*/role": "roles/compute.admin"
              },
              "resource": "//cloudresourcemanager.googleapis.com/projects/example-project",
              "resourceType": "cloudresourcemanager.googleapis.com/Project"
            }
          ]
        }
      ]
    },
    "stateInfo": {
      "state": "ACTIVE"
    }
    "etag": "\"770237e2c0decf40\"",
    "recommenderSubtype": "REMOVE_ROLE",
    "associatedInsights": [
      {
        "insight": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/279ef748-408f-44db-9a4a-1ff8865b9839"
      }
  ]
}

Esamina attentamente ogni suggerimento e considera come cambierà l'accesso del provider principale alle risorse di Google Cloud. Per informazioni su come esaminare i consigli dall'API REST, consulta Esaminare i consigli in questa pagina.

Per applicare un consiglio:

  1. Contrassegna il consiglio come CLAIMED:

    Per contrassegnare un consiglio come CLAIMED, che impedisce la modifica mentre lo applichi, utilizza il metodo recommendations.markClaimed dell'API motore per suggerimenti.

    Prima di utilizzare uno qualsiasi dei dati della richiesta, effettua le seguenti sostituzioni:

    • RESOURCE_TYPE: il tipo di risorsa di cui vuoi gestire i consigli. Utilizza il valore projects, folders o organizations.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud di cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID di cartelle e organizzazioni sono numerici, ad esempio 123456789012.
    • RECOMMENDATION_ID: l'identificatore univoco del consiglio. 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 consiglio, come "dd0686e7136a4cbb". Utilizza le barre rovesciate per dare un'interpretazione letterale ai caratteri di escape, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: facoltativo. Un oggetto contenente coppie chiave-valore con la scelta di metadati in merito al consiglio. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il campo stateInfo.stateMetadata nel consiglio.

    Metodo HTTP e URL:

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

    Corpo JSON richiesta:

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

    Per inviare la richiesta, espandi una delle seguenti opzioni:

    La risposta mostra il consiglio in uno stato CLAIMED, come mostrato nell'esempio seguente. Per chiarezza, in questo esempio vengono omessi la maggior parte dei campi:

    {
      "description": "This role has not been used during the observation window.",
      "stateInfo": {
        "state": "CLAIMED",
        "stateMetadata": {
          "reviewedBy": "alice",
          "priority": "high"
        }
      },
      "etag": "\"dd0686e7136a4cbb\"",
      "recommenderSubtype": "REMOVE_ROLE"
    }
    

  2. Recupera il criterio di autorizzazione per il progetto, quindi modifica il criterio di autorizzazione in modo che rifletta il consiglio.

  3. Aggiorna lo stato del consiglio su SUCCEEDED, se hai potuto applicare il consiglio o su FAILED se non riesci ad applicarlo:

    SUCCEEDED

    Per contrassegnare un consiglio come SUCCEEDED, che indica che puoi applicarlo, utilizza il metodo recommendations.markSucceeded dell'API motore per suggerimenti.

    Prima di utilizzare uno qualsiasi dei dati della richiesta, effettua le seguenti sostituzioni:

    • RESOURCE_TYPE: il tipo di risorsa di cui vuoi gestire i consigli. Utilizza il valore projects, folders o organizations.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud di cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID di cartelle e organizzazioni sono numerici, ad esempio 123456789012.
    • RECOMMENDATION_ID: l'identificatore univoco del consiglio. 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 consiglio, come "dd0686e7136a4cbb". Utilizza le barre rovesciate per dare un'interpretazione letterale ai caratteri di escape, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: facoltativo. Un oggetto contenente coppie chiave-valore con la scelta di metadati in merito al consiglio. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il campo stateInfo.stateMetadata nel consiglio.

    Metodo HTTP e URL:

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

    Corpo JSON richiesta:

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

    Per inviare la richiesta, espandi una delle seguenti opzioni:

    La risposta mostra il consiglio in uno stato SUCCEEDED, come mostrato nell'esempio seguente. Per chiarezza, in questo esempio vengono omessi la maggior parte dei campi:

    {
      "description": "This role has not been used during the observation window.",
      "stateInfo": {
        "state": "SUCCEEDED",
        "stateMetadata": {
          "reviewedBy": "alice",
          "priority": "high"
        }
      },
      "etag": "\"dd0686e7136a4cbb\"",
      "recommenderSubtype": "REMOVE_ROLE"
    }
    

    FAILED

    Per contrassegnare un consiglio come FAILED, che indica che non è stato possibile applicarlo, utilizza il metodo recommendations.markFailed dell'API motore per suggerimenti.

    Prima di utilizzare uno qualsiasi dei dati della richiesta, effettua le seguenti sostituzioni:

    • RESOURCE_TYPE: il tipo di risorsa di cui vuoi gestire i consigli. Utilizza il valore projects, folders o organizations.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud di cui vuoi gestire i suggerimenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID di cartelle e organizzazioni sono numerici, ad esempio 123456789012.
    • RECOMMENDATION_ID: l'identificatore univoco del consiglio. 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 consiglio, come "dd0686e7136a4cbb". Utilizza le barre rovesciate per dare un'interpretazione letterale ai caratteri di escape, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: facoltativo. Un oggetto contenente coppie chiave-valore con la scelta di metadati in merito al consiglio. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il campo stateInfo.stateMetadata nel consiglio.

    Metodo HTTP e URL:

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

    Corpo JSON richiesta:

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

    Per inviare la richiesta, espandi una delle seguenti opzioni:

    La risposta mostra il consiglio in uno stato FAILED, come mostrato nell'esempio seguente. Per chiarezza, in questo esempio vengono omessi la maggior parte dei campi:

    {
      "description": "This role has not been used during the observation window.",
      "stateInfo": {
        "state": "FAILED",
        "stateMetadata": {
          "reviewedBy": "alice",
          "priority": "high"
        }
      },
      "etag": "\"dd0686e7136a4cbb\"",
      "recommenderSubtype": "REMOVE_ROLE"
    }
    

Comprendere i consigli

Ogni consiglio include informazioni utili per capire il motivo per cui è stato fornito.

console

Per aiutarti a comprendere il motivo per cui è stato consigliato, la console mostra l'utilizzo delle autorizzazioni dell'entità, come riportato dall'approfondimento sulle norme associato al consiglio. Ad esempio, potrebbe essere visualizzato un elenco simile al seguente:

Per aiutarti a comprendere l'impatto dell'applicazione del consiglio, la console mostra anche un elenco di autorizzazioni con colori e simboli. Questo elenco indica come cambieranno le autorizzazioni dell'entità se applichi il consiglio. Ad esempio, potrebbe essere visualizzato un elenco simile al seguente:

I tipi di autorizzazioni associati a ciascun colore e simbolo sono i seguenti:

  • Grigio senza simbolo: autorizzazioni sia nel ruolo attuale dell'entità che nei ruoli consigliati.

  • Rosso con il segno meno : autorizzazioni elencate nel ruolo attuale dell'entità, ma non nei ruoli consigliati perché l'entità non li ha utilizzati negli ultimi 90 giorni.

  • Verde con un segno più : autorizzazioni che non fanno parte del ruolo attuale dell'entità, ma hanno il ruolo consigliato. Questo tipo di autorizzazione viene visualizzato soltanto nei consigli per gli account di servizio gestiti da Google.

  • Blu con un'icona Machine learning : Autorizzazioni contenute nel ruolo attuale dell'entità e nei ruoli consigliati, non perché l'entità ha utilizzato le autorizzazioni negli ultimi 90 giorni, ma perché il motore per suggerimenti ha determinato tramite il machine learning che probabilmente ne avrà bisogno in futuro.

Alcuni consigli sono associati anche agli approfondimenti sul movimento laterale. Le informazioni sul movimento laterale identificano i ruoli che consentono a un account di servizio in un progetto di impersonare un account di servizio in un altro. Se un consiglio è associato a un orientamento laterale, la console mostra anche quanto segue:

  • Progetto di origine dell'account di servizio: il progetto in cui è stato creato l'account di servizio con autorizzazioni di rappresentazione.

  • Account di servizio che possono essere rappresentati in questo progetto: un elenco di tutti gli account di servizio del progetto corrente che l'account di servizio con autorizzazioni di rappresentazione può impersonare.

gcloud

Per maggiori dettagli sui campi di un consiglio, consulta il riferimento Recommendation.

Per vedere in base all'utilizzo delle autorizzazioni basato su questo consiglio, consulta le informazioni sulle norme associate al consiglio. Questi dati sono elencati nel campo associatedInsights. Per visualizzare le informazioni sulle norme associate al consiglio:

  • Identifica quali insight nel campo associatedInsights sono insight sulle norme. Gli approfondimenti sulle norme hanno il tipo di approfondimento google.iam.policy.insight. Questo tipo viene visualizzato dopo insightTypes nel campo insight.
  • Copia l'ID degli insight sulle norme. L'ID è quello che segue insights/ nel campo insight. Nell'esempio precedente, l'ID insight è 279ef748-408f-44db-9a4a-1ff8865b9839.
  • Segui le istruzioni per ottenere un approfondimento sulle norme, utilizzando l'ID insight che hai copiato.

Alcuni consigli sono associati anche agli approfondimenti sul movimento laterale, che identificano i ruoli che consentono agli account di servizio in un progetto di impersonare gli altri in un altro progetto. Questi insight sono elencati anche nel campo associatedInsights. Per visualizzare una panoramica laterale associata al consiglio:

  • Identifica quali insight nel campo associatedInsights rappresentano informazioni sul movimento laterale. Gli approfondimenti sui movimenti laterali hanno il tipo di approfondimento google.iam.policy.LateralMovementInsight. Questo tipo viene visualizzato dopo insightTypes nel campo insight.
  • Copia l'ID degli insight sulle norme. L'ID è quello che segue insights/ nel campo insight. Nell'esempio precedente, l'ID insight è 279ef748-408f-44db-9a4a-1ff8865b9839.
  • Segui le istruzioni per creare una panoramica laterale, utilizzando l'ID insight che hai copiato.

REST

Per maggiori dettagli sui campi di un consiglio, consulta il riferimento Recommendation.

Per vedere in base all'utilizzo delle autorizzazioni basato su questo consiglio, consulta le informazioni sulle norme associate al consiglio. Questi dati sono elencati nel campo associatedInsights. Per visualizzare le informazioni sulle norme associate al consiglio:

  1. Identifica quali insight nel campo associatedInsights sono insight sulle norme. Gli approfondimenti sulle norme hanno il tipo di approfondimento google.iam.policy.insight. Questo tipo viene visualizzato dopo insightTypes nel campo insight.
  2. Copia l'ID degli insight sulle norme. L'ID è quello che segue insights/ nel campo insight. Ad esempio, se il campo insight riporta projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/279ef748-408f-44db-9a4a-1ff8865b9839, l'ID insight è 279ef748-408f-44db-9a4a-1ff8865b9839.
  3. Segui le istruzioni per ottenere un approfondimento sulle norme, utilizzando l'ID insight che hai copiato.

Alcuni consigli sono associati anche agli approfondimenti sul movimento laterale, che identificano i ruoli che consentono agli account di servizio in un progetto di impersonare gli altri in un altro progetto. Questi insight sono elencati anche nel campo associatedInsights. Per visualizzare una panoramica laterale associata al consiglio:

  1. Identifica quali insight nel campo associatedInsights rappresentano informazioni sul movimento laterale. Gli approfondimenti sui movimenti laterali hanno il tipo di approfondimento google.iam.policy.LateralMovementInsight. Questo tipo viene visualizzato dopo insightTypes nel campo insight.
  2. Copia l'ID degli insight sulle norme. L'ID è quello che segue insights/ nel campo insight. Ad esempio, se il campo insight riporta projects/123456789012/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/13088eec-9573-415f-81a7-46e1a260e860, l'ID insight è 13088eec-9573-415f-81a7-46e1a260e860.
  3. Segui le istruzioni per creare una panoramica laterale, utilizzando l'ID insight che hai copiato.

Visualizzare, ripristinare e ripristinare le modifiche

Dopo aver applicato o ignorato un consiglio per un'associazione dei ruoli a livello di progetto, l'azione viene visualizzata nella cronologia dei consigli.

Per visualizzare la cronologia dei consigli:

  1. Nella console, vai alla pagina IAM.

    Vai a IAM

  2. Seleziona un progetto, una cartella o un'organizzazione.

  3. Nella parte superiore dello schermo, fai clic su Cronologia consigli.

    La console mostra un elenco di azioni precedenti nei consigli sul ruolo.

  4. Per visualizzare i dettagli di un consiglio, fai clic sulla freccia di espansione .

    La console mostra i dettagli relativi all'azione eseguita, inclusa l'entità che ha eseguito l'azione:

  5. (Facoltativo) Se necessario, puoi annullare il consiglio, che annulla le modifiche al consiglio stesso o ripristinare un consiglio che hai ignorato.

    Per annullare una modifica applicata in precedenza per un consiglio, fai clic su Ripristina. La console ripristina le modifiche apportate ai ruoli principali. Il consiglio non viene più visualizzato nella console.

    Per ripristinare un consiglio ignorato, fai clic su Ripristina. Il suggerimento diventa visibile nella pagina IAM della console. Le autorizzazioni o i ruoli non vengono modificati.

Passaggi successivi