Deployments: getIamPolicy

Recupera il criterio di controllo dell'accesso per una risorsa. Può essere vuoto se non esistono criteri o risorse di questo tipo. Prova subito.

Richiesta

Richiesta HTTP

GET https://www.googleapis.com/deploymentmanager/v2beta/projects/project/global/deployments/resource/getIamPolicy

Parametri

Nome parametro Valore Descrizione
Parametri del percorso
project string ID progetto per questa richiesta.
resource string Nome o ID della risorsa per questa richiesta.

Autorizzazione

Questa richiesta richiede l'autorizzazione con almeno uno dei seguenti ambiti:

Ambito
https://www.googleapis.com/auth/cloud-platform
https://www.googleapis.com/auth/ndev.cloudman

Corpo della richiesta

Non specificare un corpo della richiesta con questo metodo.

Risposta

In caso di esito positivo, questo metodo restituisce un corpo della risposta con la seguente struttura:

{
  "version": integer,
  "bindings": [
    {
      "role": string,
      "members": [
        string
      ],
      "condition": {
        "expression": string,
        "title": string,
        "description": string,
        "location": string
      }
    }
  ],
  "auditConfigs": [
    {
      "service": string,
      "exemptedMembers": [
        string
      ],
      "auditLogConfigs": [
        {
          "logType": string,
          "exemptedMembers": [
            string
          ],
          "ignoreChildExemptions": boolean
        }
      ]
    }
  ],
  "rules": [
    {
      "description": string,
      "permissions": [
        string
      ],
      "action": string,
      "ins": [
        string
      ],
      "notIns": [
        string
      ],
      "conditions": [
        {
          "iam": string,
          "sys": string,
          "svc": string,
          "op": string,
          "values": [
            string
          ]
        }
      ],
      "logConfigs": [
        {
          "counter": {
            "metric": string,
            "field": string,
            "customFields": [
              {
                "name": string,
                "value": string
              }
            ]
          },
          "dataAccess": {
            "logMode": string
          },
          "cloudAudit": {
            "logName": string,
            "authorizationLoggingOptions": {
              "permissionType": string
            }
          }
        }
      ]
    }
  ],
  "etag": bytes,
  "iamOwned": boolean
}
Nome proprietà Valore Descrizione Note
version integer Specifica il formato del criterio.

I valori validi sono "0", "1" e "3". Le richieste che specificano un valore non valido vengono rifiutate.

Qualsiasi operazione che influisce sulle associazioni di ruoli condizionali deve specificare la versione "3". Questo requisito si applica alle seguenti operazioni:

* Ottenere un criterio che include un'associazione di ruoli condizionale * Aggiungere un'associazione di ruoli condizionale a un criterio * Modificare un'associazione di ruoli condizionale in un criterio * Rimuovere qualsiasi associazione di ruoli, con o senza una condizione, da un criterio che include condizioni

**Importante:** se utilizzi le condizioni IAM, devi includere il campo "etag" ogni volta che chiami "setIamPolicy". Se ometti questo campo, IAM ti consente di sovrascrivere un criterio della versione "3" con un criterio della versione "1" e tutte le condizioni del criterio della versione "3" andranno perse.

Se un criterio non include condizioni, le operazioni su quel criterio possono specificare qualsiasi versione valida o lasciare il campo non impostato.

Per scoprire quali risorse supportano le condizioni nei propri criteri IAM, consulta la [documentazione IAM](https://cloud.google.com/iam/help/conditions/resource-policies).

bindings[] list Associa un elenco di "members" a un "role". Facoltativamente, può specificare una "condition" che determina come e quando vengono applicate le "bindings". Ognuna delle "associazioni" deve contenere almeno un membro.
bindings[].role string Il ruolo assegnato a "members". Ad esempio, "roles/viewer", "roles/editor" o "roles/owner".
bindings[].members[] list Specifica le identità che richiedono l'accesso per una risorsa Cloud. "members" può avere i seguenti valori:

* "allUsers": un identificatore speciale che rappresenta tutti gli utenti su internet, con o senza un Account Google.

* "allAuthenticatedUsers": un identificatore speciale che rappresenta chiunque sia autenticato con un Account Google o un account di servizio.

* `user:{emailid}`: un indirizzo email che rappresenta un Account Google specifico. Ad esempio, "alice@example.com".



* `serviceAccount:{emailid}`: un indirizzo email che rappresenta un service account. Ad esempio, "la-mia-altra-app@appspot.gserviceaccount.com".

* "group:{emailid}": un indirizzo email che rappresenta un gruppo Google. Ad esempio, "admins@example.com".

* "deleted:user:{emailid}?uid={uniqueid}`: un indirizzo email (oltre a un identificatore univoco) che rappresenta un utente eliminato di recente. Ad esempio, "alice@example.com?uid=123456789012345678901". Se l'utente viene recuperato, questo valore torna a "user:{emailid}" e l'utente recuperato mantiene il ruolo nella associazione.

* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: un indirizzo email (oltre a un identificatore univoco) che rappresenta un account di servizio eliminato di recente. Ad esempio, "la-mia-altra-app@appspot.gserviceaccount.com?uid=123456789012345678901". Se il service account viene ripristinato, questo valore torna a "serviceAccount:{emailid}" e il service account ripristinato mantiene il ruolo nella associazione.

* `deleted:group:{emailid}?uid={uniqueid}`: un indirizzo email (oltre a un identificatore univoco) che rappresenta un gruppo Google eliminato di recente. Ad esempio, "admins@example.com?uid=123456789012345678901". Se il gruppo viene recuperato, questo valore torna a "group:{emailid}" e il gruppo recuperato mantiene il ruolo nell'associazione.



* `domain:{domain}`: il dominio G Suite (principale) che rappresenta tutti gli utenti di quel dominio. Ad esempio, "google.com" o "example.com".







bindings[].condition nested object La condizione associata a questa associazione.

Se la condizione restituisce "true", questa associazione si applica alla richiesta corrente.

Se la condizione ha valore "false", questa associazione non si applica alla richiesta corrente. Tuttavia, un'associazione di ruoli diversa potrebbe concedere lo stesso ruolo a uno o più membri di questa associazione.

Per scoprire quali risorse supportano le condizioni nei relativi criteri IAM, consulta la [documentazione IAM](https://cloud.google.com/iam/help/conditions/resource-policies).
bindings[].condition.expression string Rappresentazione testuale di un'espressione nella sintassi di Common Expression Language.
bindings[].condition.title string Facoltativo. Titolo dell'espressione, ovvero una breve stringa che ne descrive lo scopo. Può essere utilizzato, ad esempio, nelle UI che consentono di inserire l'espressione.
bindings[].condition.description string Facoltativo. Descrizione dell'espressione. Si tratta di un testo più lungo che descrive l'espressione, ad esempio quando si passa il mouse sopra l'espressione in un'interfaccia utente.
bindings[].condition.location string Facoltativo. Stringa che indica la posizione dell'espressione per la segnalazione degli errori, ad esempio un nome file e una posizione nel file.
auditConfigs[] list Specifica la configurazione dell'audit logging di Cloud per questo criterio.

auditConfigs[].service string Specifica un servizio che verrà attivato per l'audit logging. Ad esempio, "storage.googleapis.com", "cloudsql.googleapis.com". "allServices" è un valore speciale che copre tutti i servizi.
auditConfigs[].exemptedMembers[] list

auditConfigs[].auditLogConfigs[] list La configurazione per la registrazione di ogni tipo di autorizzazione.
auditConfigs[].auditLogConfigs[].logType string Il tipo di log abilitato da questa configurazione.
auditConfigs[].auditLogConfigs[].exemptedMembers[] list Specifica le identità che non generano log per questo tipo di autorizzazione. Segue lo stesso formato di [Binding.members][].
auditConfigs[].auditLogConfigs[].ignoreChildExemptions boolean

rules[] list Se viene specificata più di una regola, le regole vengono applicate nel seguente modo: - Tutte le regole LOG corrispondenti vengono sempre applicate. - Se una regola DENY/DENY_WITH_LOG corrisponde, l'autorizzazione viene negata. Il logging verrà applicato se una o più regole corrispondenti richiedono il logging. - In caso contrario, se una regola ALLOW/ALLOW_WITH_LOG corrisponde, l'autorizzazione viene concessa. Il logging verrà applicato se una o più regole corrispondenti richiedono il logging. In caso contrario, se non viene applicata alcuna regola, l'autorizzazione viene negata.
rules[].description string Descrizione leggibile della regola.
rules[].permissions[] list Un'autorizzazione è una stringa del tipo ".." (ad es. 'storage.buckets.list'). Un valore "*" corrisponde a tutte le autorizzazioni e una parte del verbo "*" (ad es. "storage.buckets.*" corrisponde a tutti i verbi.

rules[].action string Obbligatorio
rules[].ins[] list Se vengono specificate una o più clausole "in", la regola corrisponde se PRINCIPAL/AUTHORITY_SELECTOR è presente in almeno una di queste voci.
rules[].notIns[] list Se vengono specificate una o più clausole "not_in", la regola corrisponde se PRINCIPAL/AUTHORITY_SELECTOR non è presente in nessuna delle voci.
rules[].conditions[] list Ulteriori limitazioni che devono essere soddisfatte. Affinché la regola corrisponda, tutte le condizioni devono essere soddisfatte.
rules[].conditions[].iam string Attributi attendibili forniti dal sistema IAM.
rules[].conditions[].sys string Attributi attendibili forniti da qualsiasi servizio che possiede risorse e utilizza il sistema IAM per il controllo dell'accesso.
rules[].conditions[].svc string Attributi attendibili scaricati dal servizio.
rules[].conditions[].op string Un operatore con cui applicare l'oggetto.
rules[].conditions[].values[] list Gli oggetti della condizione.
rules[].logConfigs[] list La configurazione restituita agli utenti che chiamano tech.iam.IAM.CheckPolicy per eventuali voci corrispondenti all'azione LOG.
rules[].logConfigs[].counter nested object Opzioni contatore.
rules[].logConfigs[].counter.metric string La metrica da aggiornare.
rules[].logConfigs[].counter.field string Il valore del campo da attribuire.
rules[].logConfigs[].counter.customFields[] list Campi personalizzati.
rules[].logConfigs[].counter.customFields[].name string Nome è il nome del campo.
rules[].logConfigs[].counter.customFields[].value string Valore è il valore del campo. È importante che, a differenza di CounterOptions.field, il valore qui sia una costante che non deriva da IAMContext.
rules[].logConfigs[].dataAccess nested object Opzioni di accesso ai dati.
rules[].logConfigs[].dataAccess.logMode string

rules[].logConfigs[].cloudAudit nested object Opzioni di controllo di Cloud.
rules[].logConfigs[].cloudAudit.logName string Il nome log da compilare nel record di controllo Cloud.

rules[].logConfigs[].cloudAudit.authorizationLoggingOptions nested object Informazioni utilizzate dalla pipeline di Cloud Audit Logging.
rules[].logConfigs[].cloudAudit.authorizationLoggingOptions.permissionType string Il tipo di autorizzazione controllata.
etag bytes "etag" viene utilizzato per il controllo della concorrenza ottimistico per contribuire a evitare che gli aggiornamenti simultanei di un criterio si sovrascrivano a vicenda. È vivamente consigliato che i sistemi utilizzino l'elemento "etag" nel ciclo di lettura, modifica e scrittura per eseguire aggiornamenti dei criteri al fine di evitare condizioni di gara: un "etag" viene restituito nella risposta a "getIamPolicy" e i sistemi devono inserire questo etag nella richiesta a "setIamPolicy" per assicurarsi che la modifica venga applicata alla stessa versione del criterio.

**Importante:** se utilizzi le condizioni IAM, devi includere il campo "etag" ogni volta che chiami "setIamPolicy". Se ometti questo campo, IAM ti consente di sovrascrivere un criterio della versione 3 con un criterio della versione 1 e tutte le condizioni del criterio della versione 3 andranno perse.
iamOwned boolean

Prova

Utilizza l'Explorer API di seguito per chiamare questo metodo sui dati in tempo reale e visualizzare la risposta.