Crea e concedi ruoli agli agenti di servizio

In Google Cloud, gli agenti di servizio a livello di progetto, di cartella e di organizzazione vengono creati automaticamente man mano che attivi e utilizzi i servizi Google Cloud. A volte, a questi agenti di servizio vengono anche assegnati automaticamente ruoli che consentono loro di creare e accedere alle risorse per tuo conto.

Se necessario, puoi anche chiedere a Google Cloud di creare agenti di servizio a livello di progetto, di cartella e di organizzazione per un servizio prima di utilizzarlo. Chiedere a Google Cloud di creare agenti di servizio ti consente di concedere i ruoli agli agenti di servizio prima di utilizzare un servizio. Se un agente di servizio non ha non è ancora possibile concedere ruoli all'agente di servizio.

Questa opzione è utile se utilizzi una delle seguenti strategie per gestire criteri di autorizzazione:

  • Un framework dichiarativo come Terraform. Se la configurazione di Terraform non include i ruoli degli agenti di servizio, questi ruoli vengono revocati quando applichi la configurazione. Di creando agenti di servizio e assegnando loro i ruoli in Terraform configurazione, ti assicuri che questi ruoli non vengano revocati.
  • Un sistema di norme come codice che memorizza copie delle norme consentite attuali in un repository di codice. Se consenti a Google Cloud di concedere automaticamente i ruoli agli agenti di servizio, questi ruoli vengono visualizzati nel criterio di autorizzazione effettivo, ma non nella copia archiviata del criterio di autorizzazione. Per risolvere il problema un'incoerenza, potresti revocare questi ruoli in modo errato. Creando agenti di servizio e concedendo loro ruoli in modo proattivo, puoi contribuire a evitare la deriva tra il tuo repository di codice e i tuoi criteri di autorizzazione effettivi.

Dopo aver attivato la creazione dell'agente di servizio, devi concedere agli agenti di servizio la ruoli che in genere vengono concessi automaticamente. In caso contrario, alcuni servizi potrebbero non funzionare correttamente. Il motivo è che gli agenti di servizio creati alla richiesta di un utente non vengono assegnati automaticamente ruoli.

Prima di iniziare

Ruoli obbligatori

Il trigger della creazione dell'agente di servizio non richiede alcun IAM autorizzazioni aggiuntive. Tuttavia, hai bisogno di autorizzazioni IAM specifiche attività su questa pagina:

  • Per ottenere l'autorizzazione necessaria per elencare i servizi disponibili e i relativi endpoint, chiedi all'amministratore di concederti Ruolo IAM Visualizzatore utilizzo dei servizi (roles/serviceusage.serviceUsageViewer) per il progetto, la cartella o l'organizzazione da elencare per i quali sono disponibili servizi. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

    Questo ruolo predefinito contiene serviceusage.services.list autorizzazione, che è obbligatorio elencare i servizi disponibili e i relativi endpoint.

    Potresti anche ottenere questa autorizzazione con ruoli personalizzati o altri ruoli predefiniti.

  • Per ottenere le autorizzazioni necessarie per concedere l'accesso agli agenti di servizio, chiedi all'amministratore di concederti i seguenti ruoli IAM per il progetto, la cartella o l'organizzazione a cui stai concedendo l'accesso:

    • Concedi agli agenti di servizio l'accesso a un progetto: Project IAM Admin (roles/resourcemanager.projectIamAdmin)
    • Concedi agli agenti di servizio l'accesso a una cartella: Amministratore cartelle (roles/resourcemanager.folderAdmin)
    • Concedi agli agenti di servizio l'accesso a progetti, cartelle e organizzazioni: Amministratore organizzazione (roles/resourcemanager.organizationAdmin)

    Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

    Questi ruoli predefiniti le autorizzazioni necessarie per concedere l'accesso agli agenti di servizio. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:

    Autorizzazioni obbligatorie

    Per concedere l'accesso agli agenti di servizio sono necessarie le seguenti autorizzazioni:

    • Concedi agli agenti di servizio l'accesso a un progetto:
      • resourcemanager.projects.getIamPolicy
      • resourcemanager.projects.setIamPolicy
    • Concedi agli agenti di servizio l'accesso a una cartella:
      • resourcemanager.folders.getIamPolicy
      • resourcemanager.folders.setIamPolicy
    • Concedi agli agenti di servizio l'accesso a un'organizzazione:
      • resourcemanager.organizations.getIamPolicy
      • resourcemanager.organizations.setIamPolicy

    Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.

Identifica gli agenti di servizio da creare

Per identificare gli agenti di servizio a livello di progetto, cartella e organizzazione che devi chiedere a Google Cloud di creare:

  1. Crea un elenco dei servizi che utilizzi e dei relativi endpoint API. Per visualizzare tutti i servizi disponibili e i relativi endpoint, utilizza uno dei seguenti metodi:

    Console

    Vai alla pagina Libreria API nella console Google Cloud.

    Vai alla libreria API

    L'endpoint dell'API è il nome del servizio elencato nella sezione Dettagli aggiuntivi.

    gcloud

    Il comando gcloud services list elenca tutti i servizi disponibili per un progetto.

    Prima di utilizzare uno qualsiasi dei dati di comando riportati di seguito, effettua le seguenti sostituzioni:

    • EXPRESSION: facoltativo. Un'espressione per filtrare i risultati. Ad esempio, la seguente espressione filtra per tutti i servizi i cui nomi contengono googleapis.com, ma non contengono sandbox:

      name ~ googleapis.com AND name !~ sandbox

      Per un elenco di espressioni di filtro, vedi gcloud topic filters.

    • LIMIT: facoltativo. Il numero massimo di risultati da elencare. La Il valore predefinito è unlimited.

    Esegui il seguente comando:

    Linux, macOS o Cloud Shell

    gcloud services list --available --filter='EXPRESSION' --limit=LIMIT

    Windows (PowerShell)

    gcloud services list --available --filter='EXPRESSION' --limit=LIMIT

    Windows (cmd.exe)

    gcloud services list --available --filter='EXPRESSION' --limit=LIMIT

    La risposta contiene i nomi e i titoli di tutti i servizi disponibili. L'API endpoint è il valore del campo NAME.

    REST

    Il metodo services.list dell'API Service Usage elenca tutti i servizi disponibili per un progetto.

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

    • RESOURCE_TYPE: il tipo di risorsa per la quale vuoi elencare i servizi disponibili. Usa projects, folders, o organizations.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud per cui vuoi elencare i servizi disponibili. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • PAGE_SIZE: facoltativo. Il numero di servizi da includere nella risposta. Il valore predefinito è 50, mentre il valore massimo è 200. Se il numero di servizi rispetto alle dimensioni della pagina, la risposta contiene un token di impaginazione recupera la pagina successiva di risultati.
    • NEXT_PAGE_TOKEN: facoltativo. Il token di pagina restituito in una risposta precedente di questo metodo. Se specificato, l'elenco dei servizi inizierà dove è terminata la richiesta precedente.

    Metodo HTTP e URL:

    GET https://serviceusage.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/services?pageSize=PAGE_SIZE&pageToken=NEXT_PAGE_TOKEN

    Per inviare la richiesta, espandi una delle seguenti opzioni:

    La risposta contiene i nomi e i titoli di tutti i servizi disponibili per la risorsa. Se il numero di servizi disponibili è maggiore delle dimensioni della pagina, la risposta contiene anche un token di paginazione.

    L'endpoint API è il valore nel campo name.

  2. Nella pagina Service Agent Reference (Riferimento all'agente di servizio), cerca ogni endpoint dell'API.

    Se l'endpoint è elencato nella tabella, trova tutti gli agenti di servizio per quel endpoint. Ignora qualsiasi agente di servizio il cui indirizzo email contiene il IDENTIFIER: questi agenti di servizio sono per risorse specifiche di un servizio, non progetti, cartelle o organizzazioni.

    Per ogni agente di servizio a livello di progetto, cartella e organizzazione, registra quanto segue:

    • Il formato dell'indirizzo email dell'agente di servizio.
    • Il ruolo concesso all'agente di servizio, se presente.

Attivare la creazione dell'agente di servizio

Dopo aver determinato quali agenti di servizio devi creare, puoi chiedere Google Cloud per crearle.

Quando chiedi a Google Cloud di creare agenti di servizio, gli fornisci un servizio e una risorsa. Google Cloud crea quindi tutti gli agenti di servizio per quel servizio e quella risorsa.

gcloud

Per ogni servizio per cui devi creare agenti di servizio:

  1. Controlla gli indirizzi email degli agenti di servizio per il servizio. Utilizza la segnaposto negli indirizzi email per determinare quali risorse crea agenti di servizio per:

    Segnaposto Dove creare gli agenti di servizio
    PROJECT_NUMBER Ogni progetto in cui utilizzerai il servizio
    FOLDER_NUMBER Ogni cartella in cui utilizzerai il servizio
    ORGANIZATION_NUMBER Ogni organizzazione in cui utilizzerai il servizio

  2. Crea agenti di servizio per ogni risorsa.

    La gcloud beta services identity create crea tutti gli agenti di servizio per l'API e la risorsa specificate.

    Prima di utilizzare uno qualsiasi dei dati di comando riportati di seguito, effettua le seguenti sostituzioni:

    • ENDPOINT: l'endpoint dell'API che vuoi creare un agente di servizio, ad esempio aiplatform.googleapis.com.
    • RESOURCE_TYPE: il tipo di risorsa che vuoi per cui creare un agente di servizio. Usa project, folder o organization.
    • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud per cui vuoi creare un agente di servizio. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

      Puoi creare agenti di servizio per una risorsa alla volta. Se devi creare agenti di servizio per più risorse, esegui il comando una volta per ogni risorsa.

    Esegui la persone che seguo :

    Linux, macOS o Cloud Shell

    gcloud beta services identity create --service=ENDPOINT \
        --RESOURCE_TYPE=RESOURCE_ID

    Windows (PowerShell)

    gcloud beta services identity create --service=ENDPOINT `
        --RESOURCE_TYPE=RESOURCE_ID

    Windows (cmd.exe)

    gcloud beta services identity create --service=ENDPOINT ^
        --RESOURCE_TYPE=RESOURCE_ID

    La risposta contiene l'indirizzo email dell'agente di servizio principale del servizio. Questo indirizzo email include l'ID numerico del progetto, della cartella o dell'organizzazione per cui hai creato gli agenti di servizio.

    Se il servizio non ha un agente di servizio principale, la risposta non contiene un indirizzo email.

    Di seguito è riportato un esempio di risposta per un servizio con un agente di servizio principale.

    Service identity created: service-232332569935@gcp-sa-aiplatform.iam.gserviceaccount.com
    

  3. (Facoltativo) Registra l'indirizzo email dell'agente di servizio nella risposta, se presente. Questo indirizzo email identifica il servizio principale del servizio un agente. Puoi utilizzare questo identificatore per concedere ruoli a l'agente di servizio principale.

Terraform

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta: Comandi Terraform di base. Per ulteriori informazioni, consulta la Terraform documentazione di riferimento del provider.

Per ogni servizio per cui devi creare agenti di servizio:

  1. Controlla gli indirizzi email degli agenti di servizio per il servizio. Utilizza la segnaposto negli indirizzi email per determinare quali risorse crea agenti di servizio per:

    Segnaposto Dove creare gli agenti di servizio
    PROJECT_NUMBER Ogni progetto in cui utilizzerai il servizio
    FOLDER_NUMBER Ogni cartella in cui utilizzerai il servizio
    ORGANIZATION_NUMBER Ogni organizzazione in cui utilizzerai il servizio

  2. Creare agenti di servizio per ogni risorsa. Ad esempio, il seguente codice crea tutti gli agenti di servizio a livello di progetto per AI Platform:

data "google_project" "default" {
}

# Create all project-level aiplatform.googleapis.com service agents
resource "google_project_service_identity" "default" {
  provider = google-beta

  project = data.google_project.default.project_id
  service = "aiplatform.googleapis.com"
}

REST

Per ogni servizio per cui devi creare agenti di servizio:

  1. Controlla gli indirizzi email degli agenti di servizio per il servizio. Utilizza la segnaposto negli indirizzi email per determinare quali risorse crea agenti di servizio per:

    Segnaposto Dove creare gli agenti di servizio
    PROJECT_NUMBER Ogni progetto in cui utilizzerai il servizio
    FOLDER_NUMBER Ogni cartella in cui utilizzerai il servizio
    ORGANIZATION_NUMBER Ogni organizzazione in cui utilizzerai il servizio

  2. Crea agenti di servizio per ogni risorsa.

    Le API Service Usage services.generateServiceIdentity crea tutti gli agenti di servizio per l'API e la risorsa specificate.

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

    • RESOURCE_TYPE: il tipo di risorsa per la quale vuoi creare un agente di servizio. Utilizza projects, folders o organizations.
    • RESOURCE_ID: l'ID di Google Cloud il progetto, la cartella o l'organizzazione in cui vuoi creare gli agenti di servizio. . Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

      Puoi creare agenti di servizio per una sola risorsa alla volta. Per creare agenti di servizio per più risorse, inviare una richiesta per ogni risorsa.

    • ENDPOINT: l'endpoint dell'API che vuoi creare un agente di servizio, ad esempio aiplatform.googleapis.com.

    Metodo HTTP e URL:

    POST https://serviceusage.googleapis.com/v1beta1/RESOURCE_TYPE/RESOURCE_ID/services/ENDPOINT:generateServiceIdentity

    Per inviare la richiesta, espandi una delle seguenti opzioni:

    La risposta contiene un parametro Operation che indichi lo stato della richiesta. Per verificare lo stato dell'operazione: utilizza la operations.get .

    Le operazioni completate contengono l'indirizzo email dell'agente di servizio principale del servizio. Questo indirizzo email include l'ID numerico del progetto, della cartella o all'organizzazione per cui hai creato gli agenti di servizio.

    Se il servizio non ha un agente di servizio principale, la risposta non contengono un indirizzo email.

    Di seguito è riportato un esempio di operazione completata per un servizio che ha un agente di servizio primario.

    {
      "name": "operations/finished.DONE_OPERATION",
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.api.serviceusage.v1beta1.ServiceIdentity",
        "email": "service-232332569935@gcp-sa-aiplatform.iam.gserviceaccount.com",
        "uniqueId": "112245693826560101651"
      }
    }
    

  3. (Facoltativo) Registra l'indirizzo email dell'agente di servizio nella risposta, se presente. Questo indirizzo email identifica il servizio principale del servizio un agente. Puoi utilizzare questo identificatore per concedere i ruoli all'agente di servizio principale.

Concedi ruoli agli agenti di servizio

Dopo che Google Cloud ha creato gli agenti di servizio necessari per i tuoi progetti, le tue cartelle e le tue organizzazioni, utilizza gli indirizzi email degli agenti di servizio per conceder loro i ruoli.

Se hai chiesto a Google Cloud di creare agenti di servizio, devi concedere a questi agenti i ruoli che in genere vengono concessi automaticamente. In caso contrario, alcuni servizi potrebbero non funzionare correttamente. Il motivo è che gli agenti di servizio creati su richiesta di un utente, non vengono automaticamente assegnati ruoli.

Per scoprire come identificare i ruoli concessi automaticamente, consulta Identificare gli agenti di servizio da creare.

Trovare l'indirizzo email dell'agente di servizio

Per trovare l'indirizzo email di un agente di servizio:

gcloud

  1. Se non lo hai già fatto, individua il formato dell'indirizzo email dell'agente di servizio. Questo è documentato nel riferimento dell'agente di servizio.

  2. Sostituisci eventuali segnaposto nell'indirizzo email con il numero corrispondente del progetto, della cartella o dell'organizzazione.

In alternativa, se l'agente di servizio è un agente di servizio primario, puoi ottenere il suo indirizzo email attivando la creazione dell'agente di servizio per il servizio. Il comando per attivare la creazione dell'agente di servizio restituisce l'indirizzo email dell'agente di servizio principale.

Terraform

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta: Comandi Terraform di base. Per ulteriori informazioni, consulta la Terraform documentazione di riferimento del provider.

  1. Se non l'hai ancora fatto, trova il formato dell'indirizzo email dell'agente di servizio. Questo è documentato nel riferimento dell'agente di servizio.

  2. Sostituisci eventuali segnaposto nell'indirizzo email con espressioni che fanno riferimento al progetto, alla cartella o al numero dell'organizzazione appropriati.

    Ad esempio, considera la seguente situazione:

    • Il formato dell'indirizzo email è service-PROJECT_NUMBER@gcp-sa-aiplatform-cc.iam.gserviceaccount.com
    • L'agente di servizio è destinato a un progetto etichettato come default

    In questo caso, l'indirizzo email dell'agente di servizio è il seguente:

    service-${data.google_project.default.number}@gcp-sa-aiplatform-cc.iam.gserviceaccount.com
    

In alternativa, se un agente di servizio è l'agente di servizio principale per un servizio, puoi recuperare il suo indirizzo email dall'attributo email della risorsa google_project_service_identity.

Ad esempio, se hai un blocco google_project_service_identity etichettato default, puoi ottenere l'indirizzo email dell'agente di servizio principale del servizio utilizzando la seguente espressione:

${google_project_service_identity.default.email}

REST

  1. Se non lo hai già fatto, individua il formato dell'indirizzo email dell'agente di servizio. Questo formato è descritto nella documentazione di riferimento per gli agenti di servizio.

  2. Sostituisci eventuali segnaposto nell'indirizzo email con il numero corrispondente del progetto, della cartella o dell'organizzazione.

In alternativa, se l'agente di servizio è un servizio principale puoi ottenerne l'indirizzo attivando di un agente di servizio. Il comando per attivare il servizio La creazione dell'agente restituisce l'indirizzo email principale dell'agente di servizio.

Concedi un ruolo all'agente di servizio

Dopo aver trovato l'indirizzo email dell'agente di servizio, puoi concedergli un ruolo come faresti con qualsiasi altra entità.

Console

  1. Nella console Google Cloud, vai alla pagina IAM.

    Vai a IAM

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

  3. Fai clic su Concedi l'accesso, quindi inserisci l'indirizzo email dell'agente di servizio.

  4. Seleziona un ruolo da concedere dall'elenco a discesa.

  5. (Facoltativo) Aggiungi una condizione al ruolo.

  6. Fai clic su Salva. All'agente di servizio viene concesso il ruolo nella risorsa.

gcloud

La add-iam-policy-binding consente di concedere rapidamente un ruolo a un'entità.

Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi gestire l'accesso. Usa projects, resource-manager folders o organizations.

  • RESOURCE_ID: l'ID del tuo progetto, della tua cartella o della tua organizzazione Google Cloud. Gli ID progetto sono alfanumerici, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

  • PRINCIPAL: un identificatore dell'entità o del membro che solitamente ha il seguente formato: PRINCIPAL_TYPE:ID. Ad esempio: user:my-user@example.com. Per un elenco completo dei valori che PRINCIPAL può avere, consulta Riferimento all'associazione dei criteri.

    Per il tipo di entità user, il nome di dominio nell'identificatore deve essere un dominio Google Workspace o Cloud Identity. Per scoprire come configurare un dominio Cloud Identity, consulta la panoramica di Cloud Identity.

  • ROLE_NAME: il nome del ruolo che vuoi da revocare. Utilizza uno dei seguenti formati:

    • Ruoli predefiniti: roles/SERVICE.IDENTIFIER
    • Ruoli personalizzati a livello di progetto: projects/PROJECT_ID/roles/IDENTIFIER
    • Ruoli personalizzati a livello di organizzazione: organizations/ORG_ID/roles/IDENTIFIER

    Per un elenco dei ruoli predefiniti, consulta Informazioni sui ruoli.

  • CONDITION: la condizione da aggiungere all'associazione di ruolo. Se non vuoi aggiungere una condizione, utilizza il valore None. Per Per ulteriori informazioni sulle condizioni, consulta la panoramica delle condizioni.

Esegui la persone che seguo :

Linux, macOS o Cloud Shell

gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID \
    --member=PRINCIPAL --role=ROLE_NAME \
    --condition=CONDITION

Windows (PowerShell)

gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID `
    --member=PRINCIPAL --role=ROLE_NAME `
    --condition=CONDITION

Windows (cmd.exe)

gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID ^
    --member=PRINCIPAL --role=ROLE_NAME ^
    --condition=CONDITION

La risposta contiene il criterio IAM aggiornato.

Terraform

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base. Per ulteriori informazioni, consulta la Terraform documentazione di riferimento del provider.

# Grant the AI Platform Custom Code Service Account the Vertex AI Custom
# Code Service Agent role (roles/aiplatform.customCodeServiceAgent)
resource "google_project_iam_member" "custom_code" {
  project = data.google_project.default.project_id
  role    = "roles/aiplatform.customCodeServiceAgent"
  member  = "serviceAccount:service-${data.google_project.default.number}@gcp-sa-aiplatform-cc.iam.gserviceaccount.com"
}

# Grant the primary aiplatform.googleapis.com service agent (AI Platform
# Service Agent) the Vertex AI Service Agent role
# (roles/aiplatform.serviceAgent)
resource "google_project_iam_member" "primary" {
  project = data.google_project.default.project_id
  role    = "roles/aiplatform.serviceAgent"
  member  = "serviceAccount:${google_project_service_identity.default.email}"
}

REST

Per concedere un ruolo con l'API REST, utilizza il pattern di lettura, modifica e scrittura:

  1. Leggi il criterio di autorizzazione corrente chiamando getIamPolicy().

    L'API Resource Manager getIamPolicy ottiene il criterio di autorizzazione di un progetto, una cartella o un'organizzazione.

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

    • API_VERSION: la versione dell'API da utilizzare. Per progetti e organizzazioni, usa v1. Per le cartelle, utilizza v2.
    • RESOURCE_TYPE: il tipo di risorsa la cui il criterio che vuoi gestire. Utilizza il valore projects, folders oppure organizations.
    • RESOURCE_ID: il tuo account Google Cloud un ID progetto, organizzazione o cartella. Gli ID progetto sono stringhe alfanumeriche, comemy-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • POLICY_VERSION: la versione del criterio da restituire. Le richieste devono specificare la versione del criterio più recente, ovvero la versione del criterio 3. Consulta la sezione Specificare una versione del criterio quando si riceve un criterio per maggiori dettagli.

    Metodo HTTP e URL:

    POST https://cloudresourcemanager.googleapis.com/API_VERSION/RESOURCE_TYPE/RESOURCE_ID:getIamPolicy

    Corpo JSON della richiesta:

    {
      "options": {
        "requestedPolicyVersion": POLICY_VERSION
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    La risposta contiene il criterio di autorizzazione della risorsa. Ad esempio:

    {
      "version": 1,
      "etag": "BwWKmjvelug=",
      "bindings": [
        {
          "role": "roles/owner",
          "members": [
            "user:owner@example.com"
          ]
        }
      ]
    }
    

  2. Modifica il criterio di autorizzazione della risorsa utilizzando un editor di testo oppure in modo programmatico, per aggiungere o rimuovere eventuali entità o associazioni di ruoli. Ad esempio, puoi aggiungere una nuova associazione di ruoli, rimuoverne una esistente o aggiungere o rimuovere entità da un'associazione di ruoli esistente.

  3. Scrivi il criterio di autorizzazione aggiornato chiamando setIamPolicy().

    L'API Resource Manager setIamPolicy imposta il criterio nella richiesta come nuovo criterio di autorizzazione per il progetto, la cartella o l'organizzazione.

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

    • API_VERSION: la versione dell'API da utilizzare. Per progetti e organizzazioni, usa v1. Per le cartelle, utilizza v2.
    • RESOURCE_TYPE: il tipo di risorsa la cui il criterio che vuoi gestire. Utilizza il valore projects, folders oppure organizations.
    • RESOURCE_ID: l'ID del tuo progetto, della tua organizzazione o della tua cartella Google Cloud. Gli ID progetto sono stringhe alfanumeriche, my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
    • POLICY: una rappresentazione JSON del criterio che vuoi impostare. Per ulteriori informazioni sul formato di un criterio, consulta la pagina Riferimento ai criteri.

    Metodo HTTP e URL:

    POST https://cloudresourcemanager.googleapis.com/API_VERSION/RESOURCE_TYPE/RESOURCE_ID:setIamPolicy

    Corpo JSON della richiesta:

    {
      "policy": POLICY
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    La risposta contiene il criterio di autorizzazione aggiornato.

Passaggi successivi