Deployments: getIamPolicy

Ruft die Zugriffssteuerungsrichtlinie für eine Ressource ab. Kann leer sein, wenn keine entsprechenden Richtlinien oder Ressourcen vorhanden sind. Jetzt testen

Anfrage

HTTP-Anfrage

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

Parameter

Parametername Wert Beschreibung
Pfadparameter
project string Projekt-ID für diese Anfrage
resource string Name oder ID der Ressource für diese Anfrage.

Autorisierung

Diese Anfrage erfordert eine Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

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

Anfragetext

Mit dieser Methode keinen Anfragetext bereitstellen.

Antwort

Bei Erfolg gibt diese Methode einen Antworttext mit der folgenden Struktur zurück:

{
  "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
}
Name der Eigenschaft Wert Beschreibung Hinweise
version integer Gibt das Format der Richtlinie an.

Gültige Werte sind „0“, „1“ und „3“. Anfragen mit einem ungültigen Wert werden abgelehnt.

Für jeden Vorgang, der sich auf bedingte Rollenbindungen auswirkt, muss Version 3 angegeben werden. Diese Anforderung gilt für die folgenden Vorgänge:

* Richtlinie abrufen, die eine bedingte Rollenbindung enthält * Richtlinie eine bedingte Rollenbindung hinzufügen * Bedingte Rollenbindung in einer Richtlinie ändern * Rollenbindung mit oder ohne Bedingung aus einer Richtlinie entfernen, die Bedingungen enthält

**Wichtig:** Wenn Sie IAM-Bedingungen verwenden, müssen Sie das Feld „etag“ bei jedem Aufruf von „setIamPolicy“ angeben. Wenn Sie dieses Feld weglassen, können Sie in IAM eine Richtlinie der Version 3 mit einer Richtlinie der Version 1 überschreiben. Alle Bedingungen in der Richtlinie der Version 3 gehen dabei verloren.

Wenn eine Richtlinie keine Bedingungen enthält, geben Vorgänge für diese Richtlinie möglicherweise eine gültige Version an oder das Feld wird ohne Festlegung gelassen.

Welche Ressourcen Bedingungen in ihren IAM-Richtlinien unterstützen, erfahren Sie in der [IAM-Dokumentation](https://cloud.google.com/iam/help/conditions/resource-policies).

bindings[] list Ordnet einer „role“ eine Liste von „members“ zu. Optional kann eine „condition“ angegeben werden, die bestimmt, wie und wann die „bindings“ angewendet werden. Jedes der „bindings“ muss mindestens ein Mitglied enthalten.
bindings[].role string Rolle, die „members“ zugewiesen ist. Beispiel: „roles/viewer“, „roles/editor“ oder „roles/owner“.
bindings[].members[] list Gibt die Identitäten an, die Zugriff auf eine Cloud Platform-Ressource anfordern. „members“ kann die folgenden Werte haben:

* „allUsers“: Eine spezielle Kennung für alle Identitäten im Internet, ob mit oder ohne Google-Konto.

* „allAuthenticatedUsers“: Eine spezielle Kennung für alle Identitäten im Internet, ob mit oder ohne Google-Konto.

* „user:{emailid}“: eine E-Mail-Adresse, die für ein bestimmtes Google-Konto steht. Beispiel: alice@beispiel.de .



* „serviceAccount:{emailid}“: eine E-Mail-Adresse, die für ein Dienstkonto steht. Beispiel: „my-other-app@appspot.gserviceaccount.com“.

* „group:{emailid}“: Eine E-Mail-Adresse, die für eine Google-Gruppe steht. Beispiel: „admins@beispiel.de“.

* „deleted:user:{emailid}?uid={uniqueid}“: Eine E-Mail-Adresse mit einer eindeutigen ID für einen Nutzer, der vor Kurzem gelöscht wurde. Beispiel: alice@beispiel.de?uid=123456789012345678901. Wenn der Nutzer wiederhergestellt wird, wird dieser Wert in „user:{emailid}“ geändert und der wiederhergestellte Nutzer behält die Rolle in der Bindung bei.

* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: eine E-Mail-Adresse mit einer eindeutigen ID für ein Dienstkonto, das vor Kurzem gelöscht wurde. Beispiel: „my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901“. Wenn das Dienstkonto wiederhergestellt wird, wird dieser Wert in „serviceAccount:{emailid}“ geändert und das wiederhergestellte Dienstkonto behält die Rolle in der Bindung bei.

* „deleted:group:{emailid}?uid={uniqueid}“: eine E-Mail-Adresse mit einer eindeutigen ID für eine kürzlich gelöschte Google-Gruppe. Beispiel: „admins@beispiel.de?uid=123456789012345678901“. Wenn die Gruppe wiederhergestellt wird, wird dieser Wert in „group:{emailid}“ geändert und die wiederhergestellte Gruppe behält die Rolle in der Bindung bei.



* „domain:{domain}“: die G Suite-Domain (primäre Domain), die alle Nutzer dieser Domain repräsentiert. Beispiel: „google.com“ oder „beispiel.de“.







bindings[].condition nested object Die Bedingung, die dieser Bindung zugeordnet ist.

Wenn die Bedingung als wahr ausgewertet wird, gilt diese Bindung für die aktuelle Anfrage.

Wenn die Bedingung „false“ ergibt, gilt diese Bindung nicht für die aktuelle Anfrage. Eine andere Rollenbindung kann dieselbe Rolle jedoch einem oder mehreren Mitgliedern dieser Bindung zuweisen.

Welche Ressourcen Bedingungen in ihren IAM-Richtlinien unterstützen, erfahren Sie in der [IAM-Dokumentation](https://cloud.google.com/iam/help/conditions/resource-policies).
bindings[].condition.expression string Textdarstellung eines Ausdrucks in der Common Expression Language-Syntax.
bindings[].condition.title string Optional. Titel für den Ausdruck, d. h. ein kurzer String, der seinen Zweck beschreibt. Diese Funktion kann z. B. in UIs verwendet werden, in denen die Eingabe von Ausdrücken zulässig ist.
bindings[].condition.description string Optional. Beschreibung des Ausdrucks. Dies ist ein längerer Text, der den Ausdruck beschreibt, z. B. wenn der Mauszeiger darauf bewegt wird.
bindings[].condition.location string Optional. Ein String, der in Fehlermeldungen den Speicherort des Ausdrucks angibt, z. B. einen Dateinamen und eine Position in der Datei.
auditConfigs[] list Legt die Konfiguration des Cloud-Audit-Loggings für diese Richtlinie fest.

auditConfigs[].service string Gibt einen Dienst an, der für das Audit-Logging aktiviert wird. Beispiele: „storage.googleapis.com“, „cloudsql.googleapis.com“. „allServices“ ist ein spezieller Wert, der alle Dienste umfasst.
auditConfigs[].exemptedMembers[] list

auditConfigs[].auditLogConfigs[] list Die Konfiguration des Logging für die einzelnen Berechtigungstypen.
auditConfigs[].auditLogConfigs[].logType string Der Protokolltyp, der von dieser Konfiguration aktiviert wird.
auditConfigs[].auditLogConfigs[].exemptedMembers[] list Legt die Identitäten fest, die vom Logging für diesen Berechtigungstyp ausgenommen werden. Entspricht dem Format von [Binding.members][].
auditConfigs[].auditLogConfigs[].ignoreChildExemptions boolean

rules[] list Wenn mehrere Regeln angegeben sind, werden sie so angewendet: – Wenn eine DENY-/DENY_WITH_LOG-Regel übereinstimmt, wird die Berechtigung verweigert. Das Logging wird angewendet, wenn für eine oder mehrere übereinstimmende Regeln Logging erforderlich ist. – Andernfalls wird die Berechtigung gewährt, wenn eine ALLOW-/ALLOW_WITH_LOG-Regel übereinstimmt. Das Logging wird angewendet, wenn für eine oder mehrere übereinstimmende Regeln Logging erforderlich ist. – Andernfalls, wenn keine Regel zutrifft, wird die Berechtigung abgelehnt.
rules[].description string Menschenlesbare Beschreibung der Regel.
rules[].permissions[] list Eine Berechtigung ist ein String im Format ..(z.B. storage.buckets.list). Der Wert „*“ entspricht allen Berechtigungen und ein Verbteil von „*“ (z.B. „storage.buckets.*“ führt zu einer Übereinstimmung mit allen Verben.

rules[].action string Erforderlich
rules[].ins[] list Wenn eine oder mehrere "in"-Klauseln angegeben sind, trifft die Regel zu, wenn der PRINCIPAL/AUTHORITY_SELECTOR in mindestens einem dieser Einträge vorhanden ist.
rules[].notIns[] list Wenn eine oder mehrere "not_in"-Klauseln festgelegt sind, trifft die Regel zu, wenn der PRINCIPAL/AUTHORITY_SELECTOR in keinem der Einträge enthalten ist.
rules[].conditions[] list Weitere Einschränkungen, die erfüllt sein müssen. Alle Bedingungen müssen erfüllt sein, damit die Regel übereinstimmt.
rules[].conditions[].iam string Vom IAM-System angegebene vertrauenswürdige Attribute.
rules[].conditions[].sys string Vertrauenswürdige Attribute, die von einem Dienst angegeben werden, der Eigentümer von Ressourcen ist und das IAM-System für die Zugriffskontrolle verwendet.
rules[].conditions[].svc string Vertrauenswürdige Attribute, die vom Dienst freigegeben werden.
rules[].conditions[].op string Ein Operator, mit dem das Thema angewendet wird.
rules[].conditions[].values[] list Die Objekte der Bedingung.
rules[].logConfigs[] list Die Konfiguration, die an die Aufrufer von tech.iam.IAM.CheckPolicy für alle Einträge zurückgegeben wird, die mit der LOG-Aktion übereinstimmen.
rules[].logConfigs[].counter nested object Zähleroptionen.
rules[].logConfigs[].counter.metric string Der zu aktualisierende Messwert.
rules[].logConfigs[].counter.field string Der zuzuordnende Feldwert.
rules[].logConfigs[].counter.customFields[] list Benutzerdefinierte Felder
rules[].logConfigs[].counter.customFields[].name string „Name“ ist der Feldname.
rules[].logConfigs[].counter.customFields[].value string „Wert“ ist der Feldwert. Im Gegensatz zu „CounterOptions.field“ ist der Wert hier eine Konstante, die nicht aus dem IAMContext abgeleitet wird.
rules[].logConfigs[].dataAccess nested object Datenzugriffsoptionen.
rules[].logConfigs[].dataAccess.logMode string

rules[].logConfigs[].cloudAudit nested object Cloud-Audit-Optionen.
rules[].logConfigs[].cloudAudit.logName string Der Log_Name, der im Cloud-Audit-Eintrag eingefügt werden soll.

rules[].logConfigs[].cloudAudit.authorizationLoggingOptions nested object Von der Cloud-Audit-Logging-Pipeline verwendete Informationen.
rules[].logConfigs[].cloudAudit.authorizationLoggingOptions.permissionType string Der Typ der geprüften Berechtigung.
etag bytes "etag" wird für optimistische Gleichzeitigkeitserkennung verwendet, mit der verhindert werden kann, dass sich gleichzeitige Aktualisierungen einer Richtlinie gegenseitig überschreiben. Es ist sehr zu empfehlen, dass Systeme das "etag" im Lesen-Ändern-Schreiben-Zyklus verwenden, um Richtlinienaktualisierungen durchzuführen und kritische Wettläufe zu vermeiden: Ein "etag" wird in der Antwort auf "getIamPolicy" zurückgegeben und es wird erwartet, dass Systeme dieses "etag" in die Anforderung von "setIamPolicy" aufnehmen, um sicherzustellen, dass ihre Änderung auf die gleiche Version der Richtlinien angewendet wird.

**Wichtig:** Wenn Sie IAM-Bedingungen verwenden, müssen Sie das Feld „etag“ bei jedem Aufruf von „setIamPolicy“ angeben. Wenn Sie dieses Feld weglassen, können Sie in IAM eine Richtlinie der Version 3 mit einer Richtlinie der Version 1 überschreiben. Alle Bedingungen in der Richtlinie der Version 3 gehen dann verloren.
iamOwned boolean