IAM-Richtlinien analysieren

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Auf dieser Seite wird gezeigt, wie Sie mit Policy Analyzer ermitteln, welche Hauptkonten (Nutzer, Dienstkonten, Gruppen und Domains) Zugriff auf welche Google Cloud-Ressourcen haben.

Die Beispiele auf dieser Seite zeigen, wie Sie eine Richtlinienanalyse-Abfrage ausführen und die Ergebnisse sofort ansehen. Wenn Sie die Ergebnisse zur weiteren Analyse exportieren möchten, können Sie mit AnalyzeIamPolicyLongrunning Abfrageergebnisse in BigQuery oder Cloud Storage schreiben.

Hinweis

  • Cloud Asset API aktivieren.

    Aktivieren Sie die API

    Sie müssen die API in dem Projekt oder der Organisation aktivieren, die Sie zum Senden der Abfrage verwenden möchten. Dies muss nicht dieselbe Ressource sein, auf die Sie die Abfrage beschränken.

  • Optional: Funktionsweise von Policy Analyzer

Erforderliche Rollen und Berechtigungen

Die folgenden Rollen und Berechtigungen sind für die Analyse von Zulassungsrichtlinien erforderlich.

Erforderliche IAM-Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt, den Ordner oder die Organisation zu gewähren, auf die Sie die Abfrage beschränken möchten, um die Berechtigungen zu erhalten, die Sie zum Analysieren einer Zulassungsrichtlinie benötigen:

  • Cloud-Asset-Betrachter (roles/cloudasset.viewer)
  • So analysieren Sie Richtlinien mit benutzerdefinierten IAM-Rollen: Rollenbetrachter (roles/iam.roleViewer)
  • So verwenden Sie die Google Cloud CLI zum Analysieren von Richtlinien: Service Usage-Nutzer (roles/serviceusage.serviceUsageConsumer)

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Analysieren einer Zulassungsrichtlinie erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

  • cloudasset.assets.analyzeIamPolicy
  • cloudasset.assets.searchAllResources
  • cloudasset.assets.searchAllIamPolicies
  • So analysieren Sie Richtlinien mit benutzerdefinierten IAM-Rollen: iam.roles.get
  • So analysieren Sie Richtlinien mit der Google Cloud CLI: serviceusage.services.use

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Erforderliche Google Workspace-Berechtigungen

Wenn Sie Gruppen in Abfrageergebnissen maximieren möchten, um zu sehen, ob ein Hauptkonto aufgrund seiner Mitgliedschaft in einer Google Workspace-Gruppe bestimmte Rollen oder Berechtigungen hat, benötigen Sie die Google Workspace-Berechtigung groups.read. Diese Berechtigung ist in der Rolle „Gruppenleser-Administrator“ und in leistungsstarken Rollen wie „Gruppenadministrator“ oder „Super Admin“ enthalten. Informationen zum Zuweisen dieser Rollen finden Sie unter Bestimmte Administratorrollen zuweisen.

Festlegen, welche Hauptkonten auf eine Ressource zugreifen können

Mit der Richtlinienanalyse können Sie prüfen, welche Hauptrollen bestimmte Rollen oder Berechtigungen für eine bestimmte Ressource in Ihrem Projekt, Ordner oder Ihrer Organisation haben. Erstellen Sie dazu eine Abfrage, die die Ressource enthält, für die Sie den Zugriff analysieren möchten, sowie eine oder mehrere Rollen oder Berechtigungen, die geprüft werden sollen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Richtlinienanalyse auf.

    Zur Seite „Richtlinienanalyse“

  2. Suchen Sie im Abschnitt Richtlinien analysieren nach dem Bereich Benutzerdefinierte Abfrage und klicken Sie in diesem Bereich auf Benutzerdefinierte Abfrage erstellen.

  3. Wählen Sie im Feld Abfragebereich auswählen das Projekt, den Ordner oder die Organisation aus, auf die Sie die Abfrage beschränken möchten. Policy Analyzer analysiert den Zugriff auf dieses Projekt, diesen Ordner oder diese Organisation sowie alle Ressourcen in diesem Projekt, Ordner oder dieser Organisation.

  4. Wählen Sie die zu prüfende Ressource und die zu prüfende Rolle oder Berechtigung aus:

    1. Wählen Sie im Feld Parameter 1 aus dem Drop-down-Menü die Option Ressource aus.
    2. Geben Sie im Feld Ressource den vollständigen Ressourcennamen der Ressource ein, für die Sie den Zugriff analysieren möchten. Wenn Sie den vollständigen Ressourcennamen nicht kennen, beginnen Sie mit der Eingabe des Anzeigenamens der Ressource und wählen Sie die Ressource aus der Liste der bereitgestellten Ressourcen aus.
    3. Klicken Sie auf Auswahl hinzufügen.
    4. Wählen Sie im Feld Parameter 2 entweder Rolle oder Berechtigung aus.
    5. Wählen Sie im Feld Rolle auswählen oder Berechtigung auswählen die Rolle oder Berechtigung aus, die Sie prüfen möchten.
    6. Optional: Um nach zusätzlichen Rollen und Berechtigungen zu suchen, fügen Sie weitere Rollen und Berechtigungen hinzu, bis alle Rollen und Berechtigungen aufgeführt sind, die Sie prüfen möchten. abgeschlossen.
  5. Optional: Klicken Sie auf Weiter und wählen Sie dann erweiterte Optionen aus, die Sie für diese Abfrage aktivieren möchten.

  6. Klicken Sie im Bereich Benutzerdefinierte Abfrage auf Analysieren > Abfrage ausführen. Auf der Berichtsseite werden die von Ihnen eingegebenen Abfrageparameter sowie eine Ergebnistabelle aller Hauptkonten mit den angegebenen Rollen oder Berechtigungen für die angegebene Ressource angezeigt.

    Sie können Ergebnisse auch nach BigQuery exportieren, statt sie sofort anzusehen.

gcloud CLI

Bevor Sie die unten aufgeführten Befehlsdaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert project, folder oder organization.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • FULL_RESOURCE_NAME: Der vollständige Ressourcenname der Ressource, für die Sie den Zugriff analysieren möchten. Eine Liste der vollständigen Ressourcennamenformate finden Sie unter Ressourcennamensformat.
  • PERMISSIONS: Eine durch Kommas getrennte Liste der Berechtigungen, auf die Sie prüfen möchten, z. B. compute.instances.get,compute.instances.start. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.

Führen Sie den Befehl gcloud asset analytics-iam-policy aus:

Linux, macOS oder Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --full-resource-name=FULL_RESOURCE_NAME \
    --permissions='PERMISSIONS'

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --full-resource-name=FULL_RESOURCE_NAME `
    --permissions='PERMISSIONS'

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --full-resource-name=FULL_RESOURCE_NAME ^
    --permissions='PERMISSIONS'

Sie erhalten eine YAML-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis listet eine Reihe von Zugriffen, Identitäten und Ressourcen auf, die für Ihre Abfrage relevant sind, gefolgt von der zugehörigen IAM-Rollenbindung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, ist das Ergebnis CONDITIONAL.

Die Hauptkonten mit einer der angegebenen Berechtigungen für die angegebene Ressource werden in den identities-Feldern in der Antwort aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, in dem das Feld identities hervorgehoben ist.

...
---
ACLs:
- accesses:
  - permission: compute.instances.get
  - permission: compute.instances.start
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //cloudresourcemanager.googleapis.com/projects/my-project
policy:
  attachedResource: //cloudresourcemanager.googleapis.com/projects/my-project
  binding:
    members:
    - user: my-user@example.com
    role: roles/compute.admin
---
...

REST

Verwenden Sie die Methode analyzeIamPolicy der Cloud Asset Inventory API, um festzustellen, welche Hauptkonten bestimmte Berechtigungen für eine Ressource haben.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert projects, folders oder organizations.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • FULL_RESOURCE_NAME: Der vollständige Ressourcenname der Ressource, für die Sie den Zugriff analysieren möchten. Eine Liste der vollständigen Ressourcennamenformate finden Sie unter Ressourcennamensformat.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: Die Berechtigungen, auf die Sie prüfen möchten, z. B. compute.instances.get. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.

HTTP-Methode und URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

JSON-Text der Anfrage:

{
  "analysisQuery": {
    "resourceSelector": {
      "fullResourceName": "FULL_RESOURCE_NAME"
    },
    "accessSelector": {
      "permissions": [
        "PERMISSION_1",
        "PERMISSION_2",
        "PERMISSION_N"
      ]
    }
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie erhalten eine JSON-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in dieser Bindung auf. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird als Ergebnis CONDITIONAL angezeigt.

Die Hauptkonten mit einer der angegebenen Berechtigungen für die angegebene Ressource werden in den identities-Feldern in der Antwort aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, in dem das Feld identities hervorgehoben ist.

...
{
  "attachedResourceFullName": "//cloudresourcemanager.googleapis.com/projects/my-project",
  "iamBinding": {
    "role": "roles/compute.admin",
    "members": [
      "user:my-user@example.com"
    ]
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
        }
      ],
      "accesses": [
        {
          "permission": "compute.instances.get"
        },
        {
          "permission": "compute.instances.start"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Hauptkonten mit bestimmten Rollen oder Berechtigungen ermitteln

Mit der Richtlinienanalyse können Sie prüfen, welche Hauptkonten bestimmte Rollen oder Berechtigungen für Google Cloud-Ressourcen in Ihrer Organisation haben. Erstellen Sie dazu eine Abfrage, die eine oder mehrere Rollen oder Berechtigungen zur Prüfung enthält, aber keine Ressource angibt.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Richtlinienanalyse auf.

    Zur Seite „Richtlinienanalyse“

  2. Suchen Sie im Abschnitt Richtlinien analysieren nach dem Bereich Benutzerdefinierte Abfrage und klicken Sie in diesem Bereich auf Benutzerdefinierte Abfrage erstellen.

  3. Wählen Sie im Feld Abfragebereich auswählen das Projekt, den Ordner oder die Organisation aus, auf die Sie die Abfrage beschränken möchten. Policy Analyzer analysiert den Zugriff auf dieses Projekt, diesen Ordner oder diese Organisation sowie alle Ressourcen in diesem Projekt, Ordner oder dieser Organisation.

  4. Wählen Sie im Feld Parameter 1 entweder Rolle oder Berechtigung aus.

  5. Wählen Sie im Feld Rolle auswählen oder Berechtigung auswählen die Rolle oder Berechtigung aus, die Sie prüfen möchten.

  6. Optional: So suchen Sie nach zusätzlichen Rollen und Berechtigungen:

    1. Klicken Sie auf Auswahl hinzufügen.
    2. Wählen Sie im Feld Parameter 2 entweder Rolle oder Berechtigung aus.
    3. Wählen Sie im Feld Rolle auswählen oder Berechtigung auswählen die Rolle oder Berechtigung aus, die Sie prüfen möchten.
    4. Fügen Sie weitere Rollen- und Berechtigungsauswahl hinzu, bis alle Rollen und Berechtigungen aufgeführt sind, die Sie prüfen möchten.
  7. Optional: Klicken Sie auf Weiter und wählen Sie dann erweiterte Optionen aus, die Sie für diese Abfrage aktivieren möchten.

  8. Klicken Sie im Bereich Benutzerdefinierte Abfrage auf Analysieren > Abfrage ausführen. Auf der Berichtsseite werden die von Ihnen eingegebenen Abfrageparameter sowie eine Ergebnistabelle aller Hauptkonten mit den angegebenen Rollen oder Berechtigungen für jede den Vorgaben entsprechende Ressource angezeigt.

    Sie können Ergebnisse auch nach BigQuery exportieren, statt sie sofort anzusehen.

gcloud CLI

Bevor Sie die unten aufgeführten Befehlsdaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert project, folder oder organization.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • ROLES: Eine durch Kommas getrennte Liste der Rollen, auf die Sie prüfen möchten, z. B. roles/compute.admin,roles/compute.imageUser. Wenn Sie mehrere Rollen auflisten, prüft Policy Analyzer die aufgeführten Rollen.
  • PERMISSIONS: Eine durch Kommas getrennte Liste der Berechtigungen, auf die Sie prüfen möchten, z. B. compute.instances.get,compute.instances.start. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.

Führen Sie den Befehl gcloud asset analytics-iam-policy aus:

Linux, macOS oder Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --roles='ROLES' \
    --permissions='PERMISSIONS'

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --roles='ROLES' `
    --permissions='PERMISSIONS'

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --roles='ROLES' ^
    --permissions='PERMISSIONS'

Sie erhalten eine JSON-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in dieser Bindung auf. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird als Ergebnis CONDITIONAL angezeigt.

Die Hauptkonten mit einer der angegebenen Rollen oder Berechtigungen werden in der Antwort in den identities-Feldern aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, in dem das Feld identities hervorgehoben ist.

...
---
ACLs:
- accesses:
  - permission: compute.instances.get
  - permission: compute.instances.start
  - role: roles/compute.admin
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //cloudresourcemanager.googleapis.com/projects/my-project
policy:
  attachedResource: //cloudresourcemanager.googleapis.com/projects/my-project
  binding:
    members:
    - user: my-user@example.com
    role: roles/compute.admin
---
...

REST

Verwenden Sie die Methode analyzeIamPolicy der Cloud Asset Inventory API, um festzustellen, welche Hauptkonten bestimmte Rollen oder Berechtigungen haben.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert projects, folders oder organizations.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • ROLE_1, ROLE_2... ROLE_N: Die Rollen, die Sie prüfen möchten, z. B. roles/compute.admin. Wenn Sie mehrere Rollen auflisten, prüft Policy Analyzer nach allen aufgeführten Rollen.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: Die Berechtigungen, auf die Sie prüfen möchten, z. B. compute.instances.get. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.

HTTP-Methode und URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

JSON-Text der Anfrage:

{
  "analysisQuery": {
    "accessSelector": {
      "roles": [
        "ROLE_1",
        "ROLE_2",
        "ROLE_N"
      ],
      "permissions": [
        "PERMISSION_1",
        "PERMISSION_2",
        "PERMISSION_N"
      ]
    }
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie erhalten eine JSON-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in dieser Bindung auf. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird als Ergebnis CONDITIONAL angezeigt.

Die Hauptkonten mit einer der angegebenen Rollen oder Berechtigungen werden in der Antwort in den identities-Feldern aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, in dem das Feld identities hervorgehoben ist.

...
{
  "attachedResourceFullName": "//cloudresourcemanager.googleapis.com/projects/my-project",
  "iamBinding": {
    "role": "roles/compute.admin",
    "members": [
      "user:my-user@example.com"
    ]
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
        }
      ],
      "accesses": [
        {
          "permission": "compute.instances.get"
        },
        {
          "role": "roles/compute.admin"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Festlegen, welchen Zugriff ein Hauptkonto auf eine Ressource hat

Mit der Richtlinienanalyse können Sie überprüfen, welche Rollen oder Berechtigungen ein Hauptkonto für eine Ressource in Ihrer Organisation hat. Erstellen Sie dazu eine Abfrage zum Zugriff mit dem Hauptkonto, dessen Zugriff Sie analysieren möchten, sowie der Ressource, für die Sie den Zugriff analysieren möchten.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Richtlinienanalyse auf.

    Zur Seite „Richtlinienanalyse“

  2. Suchen Sie im Abschnitt Richtlinien analysieren nach dem Bereich Benutzerdefinierte Abfrage und klicken Sie in diesem Bereich auf Benutzerdefinierte Abfrage erstellen.

  3. Wählen Sie im Feld Abfragebereich auswählen das Projekt, den Ordner oder die Organisation aus, auf die Sie die Abfrage beschränken möchten. Policy Analyzer analysiert den Zugriff auf dieses Projekt, diesen Ordner oder diese Organisation sowie alle Ressourcen in diesem Projekt, Ordner oder dieser Organisation.

  4. Wählen Sie die Ressource und das Hauptkonto aus, die überprüft werden sollen:

    1. Wählen Sie im Feld Parameter 1 aus dem Drop-down-Menü die Option Ressource aus.
    2. Geben Sie im Feld Ressource den vollständigen Ressourcennamen der Ressource ein, für die Sie den Zugriff analysieren möchten. Wenn Sie den vollständigen Ressourcennamen nicht kennen, beginnen Sie mit der Eingabe des Anzeigenamens der Ressource und wählen Sie die Ressource aus der Liste der bereitgestellten Ressourcen aus.
    3. Klicken Sie auf Auswahl hinzufügen.
    4. Wählen Sie im Feld Parameter 2 aus dem Drop-down-Menü die Option Hauptkonto aus.
    5. Geben Sie im Feld Hauptkonto den Namen eines Nutzers, eines Dienstkontos oder einer Gruppe ein. Wählen Sie dann den Nutzer, das Dienstkonto oder die Gruppe aus, deren Zugriff Sie in der Liste der bereitgestellten Hauptkonten analysieren möchten.
  5. Optional: Klicken Sie auf Weiter und wählen Sie dann erweiterte Optionen aus, die Sie für diese Abfrage aktivieren möchten.

  6. Klicken Sie im Bereich Benutzerdefinierte Abfrage auf Analysieren > Abfrage ausführen. Auf der Berichtsseite werden die von Ihnen eingegebenen Abfrageparameter sowie eine Ergebnistabelle aller Rollen angezeigt, die das angegebene Hauptkonto für die angegebene Ressource hat.

    Sie können Ergebnisse auch nach BigQuery exportieren, statt sie sofort anzusehen.

gcloud CLI

Bevor Sie die unten aufgeführten Befehlsdaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert project, folder oder organization.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • FULL_RESOURCE_NAME: Der vollständige Ressourcenname der Ressource, für die Sie den Zugriff analysieren möchten. Eine Liste der vollständigen Ressourcennamenformate finden Sie unter Ressourcennamensformat.
  • PRINCIPAL: Das Hauptkonto, dessen Zugriff Sie analysieren möchten, im Format PRINCIPAL_TYPE:ID, z. B. user:my-user@example.com. Eine vollständige Liste der Hauptkontotypen finden Sie unter Haupt-IDs.

Führen Sie den Befehl gcloud asset analytics-iam-policy aus:

Linux, macOS oder Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --full-resource-name=FULL_RESOURCE_NAME \
    --identity=PRINCIPAL

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --full-resource-name=FULL_RESOURCE_NAME `
    --identity=PRINCIPAL

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --full-resource-name=FULL_RESOURCE_NAME ^
    --identity=PRINCIPAL

Sie erhalten eine YAML-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis listet eine Reihe von Zugriffen, Identitäten und Ressourcen auf, die für Ihre Abfrage relevant sind, gefolgt von der zugehörigen IAM-Rollenbindung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, ist das Ergebnis CONDITIONAL.

Die Rollen, die das Hauptkonto für die angegebene Ressource hat, werden in der Antwort in den accesses-Feldern aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, in dem das Feld accesses hervorgehoben ist.

...
---
ACLs:
- accesses:
  - roles/iam.serviceAccountUser
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //cloudresourcemanager.googleapis.com/projects/my-project
policy:
  attachedResource: //cloudresourcemanager.googleapis.com/projects/my-project
  binding:
    members:
    - user: my-user@example.com
    role: roles/iam.serviceAccountUser
---
...

REST

Verwenden Sie die Methode analyzeIamPolicy der Cloud Asset Inventory API, um zu ermitteln, welchen Zugriff ein Hauptkonto auf eine Ressource hat.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert projects, folders oder organizations.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • FULL_RESOURCE_NAME: Der vollständige Ressourcenname der Ressource, für die Sie den Zugriff analysieren möchten. Eine Liste der vollständigen Ressourcennamenformate finden Sie unter Ressourcennamensformat.
  • PRINCIPAL: Das Hauptkonto, dessen Zugriff Sie analysieren möchten, im Format PRINCIPAL_TYPE:ID, z. B. user:my-user@example.com. Eine vollständige Liste der Hauptkontotypen finden Sie unter Haupt-IDs.

HTTP-Methode und URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

JSON-Text der Anfrage:

{
  "analysisQuery": {
    "resourceSelector": {
      "fullResourceName": "FULL_RESOURCE_NAME"
    },
    "identitySelector": {
      "identity": "PRINCIPAL"
    }
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie erhalten eine JSON-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in dieser Bindung auf. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird als Ergebnis CONDITIONAL angezeigt.

Die Rollen, die das Hauptkonto für die angegebene Ressource hat, werden in der Antwort in den accesses-Feldern aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, in dem das Feld accesses hervorgehoben ist.

...
{
  "attachedResourceFullName": "//cloudresourcemanager.googleapis.com/projects/my-project",
  "iamBinding": {
    "role": "roles/iam.serviceAccountUser",
    "members": [
      "user:my-user@example.com"
    ]
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
        }
      ],
      "accesses": [
        {
          "roles": "iam.serviceAccountUser"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Festlegen, auf welche Ressourcen ein Hauptkonto zugreifen kann

Mit der Richtlinienanalyse können Sie prüfen, welche Ressourcen in Ihrer Organisation bestimmte Rollen oder Berechtigungen haben. Erstellen Sie dazu eine Abfrage zu einer Ressource, die das Hauptkonto enthält, dessen Zugriff Sie analysieren möchten, sowie eine oder mehrere Berechtigungen oder Rollen, die Sie überprüfen möchten.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Richtlinienanalyse auf.

    Zur Seite „Richtlinienanalyse“

  2. Suchen Sie im Abschnitt Richtlinien analysieren nach dem Bereich Benutzerdefinierte Abfrage und klicken Sie in diesem Bereich auf Benutzerdefinierte Abfrage erstellen.

  3. Wählen Sie im Feld Abfragebereich auswählen das Projekt, den Ordner oder die Organisation aus, auf die Sie die Abfrage beschränken möchten. Policy Analyzer analysiert den Zugriff auf dieses Projekt, diesen Ordner oder diese Organisation sowie alle Ressourcen in diesem Projekt, Ordner oder dieser Organisation.

  4. Wählen Sie das Hauptkonto aus, das überprüft werden soll, und wählen Sie die Rolle oder Berechtigung aus, die geprüft werden soll:

    1. Wählen Sie im Feld Parameter 1 aus dem Drop-down-Menü die Option Hauptkonto aus.
    2. Geben Sie im Feld Hauptkonto den Namen eines Nutzers, eines Dienstkontos oder einer Gruppe ein. Wählen Sie dann den Nutzer, das Dienstkonto oder die Gruppe aus, deren Zugriff Sie in der Liste der bereitgestellten Hauptkonten analysieren möchten.
    3. Klicken Sie auf Auswahl hinzufügen.
    4. Wählen Sie im Feld Parameter 2 entweder Rolle oder Berechtigung aus.
    5. Wählen Sie im Feld Rolle auswählen oder Berechtigung auswählen die Rolle oder Berechtigung aus, die Sie prüfen möchten.
    6. Optional: Um nach zusätzlichen Rollen und Berechtigungen zu suchen, fügen Sie weitere Rollen und Berechtigungen hinzu, bis alle Rollen und Berechtigungen aufgeführt sind, die Sie prüfen möchten. abgeschlossen.
  5. Optional: Klicken Sie auf Weiter und wählen Sie dann erweiterte Optionen aus, die Sie für diese Abfrage aktivieren möchten.

  6. Klicken Sie im Bereich Benutzerdefinierte Abfrage auf Analysieren > Abfrage ausführen. Auf der Berichtsseite werden die von Ihnen eingegebenen Abfrageparameter sowie eine Ergebnistabelle aller Ressourcen angezeigt, für die das angegebene Hauptkonto die angegebenen Rollen oder Berechtigungen hat.

    Sie können Ergebnisse auch nach BigQuery exportieren, statt sie sofort anzusehen.

gcloud CLI

Bevor Sie die unten aufgeführten Befehlsdaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert project, folder oder organization.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • PRINCIPAL: Das Hauptkonto, dessen Zugriff Sie analysieren möchten, im Format PRINCIPAL_TYPE:ID, z. B. user:my-user@example.com. Eine vollständige Liste der Hauptkontotypen finden Sie unter Haupt-IDs.
  • PERMISSIONS: Eine durch Kommas getrennte Liste der Berechtigungen, auf die Sie prüfen möchten, z. B. compute.instances.get,compute.instances.start. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.

Führen Sie den Befehl gcloud asset analytics-iam-policy aus:

Linux, macOS oder Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --identity=PRINCIPAL \
    --permissions='PERMISSIONS'

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --identity=PRINCIPAL `
    --permissions='PERMISSIONS'

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --identity=PRINCIPAL ^
    --permissions='PERMISSIONS'

Sie erhalten eine YAML-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis listet eine Reihe von Zugriffen, Identitäten und Ressourcen auf, die für Ihre Abfrage relevant sind, gefolgt von der zugehörigen IAM-Rollenbindung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, ist das Ergebnis CONDITIONAL.

Die Ressourcen, für die das angegebene Hauptkonto eine der angegebenen Berechtigungen hat, werden in den Feldern resources der Antwort aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, in dem das Feld resources hervorgehoben ist.

...
---
ACLs:
- accesses:
  - permission: compute.instances.get
  - permission: compute.instances.start
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //compute.googleapis.com/projects/my-project/global/images/my-image
policy:
  attachedResource: //compute.googleapis.com/projects/my-project/global/images/my-image
  binding:
    members:
    - user: my-user@example.com
    role: roles/compute.admin
---
...

REST

Mit der Methode analyzeIamPolicy der Cloud Asset Inventory API können Sie ermitteln, auf welche Ressourcen ein Hauptkonto zugreifen kann.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert projects, folders oder organizations.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • PRINCIPAL: Das Hauptkonto, dessen Zugriff Sie analysieren möchten, im Format PRINCIPAL_TYPE:ID, z. B. user:my-user@example.com. Eine vollständige Liste der Hauptkontotypen finden Sie unter Haupt-IDs.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: Die Berechtigungen, auf die Sie prüfen möchten, z. B. compute.instances.get. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.

HTTP-Methode und URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

JSON-Text der Anfrage:

{
  "analysisQuery": {
    "identitySelector": {
      "identity": "PRINCIPAL"
    },
    "accessSelector": {
      "permissions": [
        "PERMISSION_1",
        "PERMISSION_2",
        "PERMISSION_N"
      ]
    }
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie erhalten eine JSON-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in dieser Bindung auf. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird als Ergebnis CONDITIONAL angezeigt.

Die Ressourcen, für die das angegebene Hauptkonto eine der angegebenen Berechtigungen hat, werden in den Feldern resources der Antwort aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, in dem das Feld resources hervorgehoben ist.

...
{
  "attachedResourceFullName": "//compute.googleapis.com/projects/my-project/global/images/my-image",
  "iamBinding": {
    "role": "roles/compute.admin",
    "members": [
      "user:my-user@example.com"
    ]
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//compute.googleapis.com/projects/my-project/global/images/my-image"
        }
      ],
      "accesses": [
        {
          "permission": "compute.instances.get"
        },
        {
          "permission": "compute.instances.start"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Zugriff zu einem bestimmten Zeitpunkt festlegen

Bei ausreichendem Kontext kann Policy Analyzer bedingte IAM-Rollenbindungen analysieren, die nur zu bestimmten Zeiten Zugriff gewähren. Diese Bedingungen werden als Datum/Uhrzeit-Bedingungen bezeichnet. Damit Policy Analyzer Rollenrollen mit Datums-/Uhrzeitbedingungen genau analysieren kann, müssen Sie die Zugriffszeit in der Anfrage definieren.

gcloud CLI

Bevor Sie die unten aufgeführten Befehlsdaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert project, folder oder organization.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • PERMISSIONS: Optional. Eine durch Kommas getrennte Liste der Berechtigungen, auf die Sie prüfen möchten, z. B. compute.instances.get,compute.instances.start. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.
  • FULL_RESOURCE_NAME: Optional. Der vollständige Ressourcenname der Ressource, für die Sie den Zugriff analysieren möchten. Eine Liste der vollständigen Namensformate für Ressourcen finden Sie unter Format von Ressourcennamen.
  • PERMISSIONS: Optional. Eine durch Kommas getrennte Liste der Berechtigungen, auf die Sie prüfen möchten, z. B. compute.instances.get,compute.instances.start. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.
  • ACCESS_TIME: Die Uhrzeit, die Sie prüfen möchten. Diese Zeit muss in der Zukunft liegen. Verwenden Sie einen Zeitstempel im RFC 3339-Format, z. B. 2099-02-01T00:00:00Z.

Führen Sie den Befehl gcloud asset analytics-iam-policy aus:

Linux, macOS oder Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --identity=PRINCIPAL \
    --full-resource-name=FULL_RESOURCE_NAME \
    --permissions='PERMISSIONS' \
    --access-time=ACCESS_TIME

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --identity=PRINCIPAL `
    --full-resource-name=FULL_RESOURCE_NAME `
    --permissions='PERMISSIONS' `
    --access-time=ACCESS_TIME

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --identity=PRINCIPAL ^
    --full-resource-name=FULL_RESOURCE_NAME ^
    --permissions='PERMISSIONS' ^
    --access-time=ACCESS_TIME

Sie erhalten eine YAML-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis listet eine Reihe von Zugriffen, Identitäten und Ressourcen auf, die für Ihre Abfrage relevant sind, gefolgt von der zugehörigen IAM-Rollenbindung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, ist das Ergebnis CONDITIONAL.

Wenn Sie die Zugriffszeit in die Anfrage aufnehmen, kann Policy Analyzer Datum/Uhrzeit-Bedingungen auswerten. Wenn die Bedingung als falsch ausgewertet wird, ist diese Rolle nicht in der Antwort enthalten. Wenn die Bedingung als wahr ausgewertet wird, wird als Ergebnis der Bedingungsbewertung TRUE angezeigt.

...
---
ACLs:
- accesses:
  - permission: compute.instances.get
  - permission: compute.instances.start
  conditionEvaluationValue: 'TRUE'
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //cloudresourcemanager.googleapis.com/projects/my-project
policy:
  attachedResource: //cloudresourcemanager.googleapis.com/projects/my-project
  binding:
    condition:
      expression: request.time.getHours("America/Los_Angeles") >= 5
      title: No access before 5am PST
    members:
    - user: my-user@example.com
    role: roles/compute.admin
---
...

REST

Mit der Methode analyzeIamPolicy der Cloud Asset Inventory API können Sie feststellen, welche Hauptkonten zu einer bestimmten Zeit bestimmte Berechtigungen für eine Ressource haben.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • RESOURCE_TYPE: Der Typ der Ressource, auf die Sie die Suche begrenzen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Verwenden Sie den Wert projects, folders oder organizations.
  • RESOURCE_ID: Die ID des Google Cloud-Projekts, -Ordners oder der Google Cloud-Organisation, für die Sie die Suche festlegen möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre Nachfolger angehängt sind. Projekt-IDs sind alphanumerische Strings, wie my-project. Ordner- und Organisations-IDs sind numerisch, z. B. 123456789012.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: Optional. Die Berechtigungen, die Sie prüfen möchten, z. B. compute.instances.get. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.
  • FULL_RESOURCE_NAME: Optional. Der vollständige Ressourcenname der Ressource, für die Sie den Zugriff analysieren möchten. Eine Liste der vollständigen Namensformate für Ressourcen finden Sie unter Format von Ressourcennamen.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: Optional. Die Berechtigungen, die Sie prüfen möchten, z. B. compute.instances.get. Wenn Sie mehrere Berechtigungen auflisten, prüft Policy Analyzer nach allen aufgeführten Berechtigungen.
  • ACCESS_TIME: Die Uhrzeit, die Sie prüfen möchten. Diese Zeit muss in der Zukunft liegen. Verwenden Sie einen Zeitstempel im RFC 3339-Format, z. B. 2099-02-01T00:00:00Z.

HTTP-Methode und URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

JSON-Text der Anfrage:

{
  "analysisQuery": {
    "identitySelector": {
      "identity": "PRINCIPAL"
    },
    "resourceSelector": {
      "fullResourceName": "FULL_RESOURCE_NAME"
    },
    "accessSelector": {
      "permissions": [
        "PERMISSION_1",
        "PERMISSION_2",
        "PERMISSION_N"
      ]
    },
    "conditionContext": {
      "accessTime": "ACCESS_TIME"
    }
  }
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie erhalten eine JSON-Antwort mit den Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in dieser Bindung auf. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsbewertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird als Ergebnis CONDITIONAL angezeigt.

Wenn Sie die Zugriffszeit in die Anfrage aufnehmen, kann Policy Analyzer Datum/Uhrzeit-Bedingungen auswerten. Wenn die Bedingung als falsch ausgewertet wird, ist diese Rolle nicht in der Antwort enthalten. Wenn die Bedingung als wahr ausgewertet wird, lautet der Wert für die Bedingungsbewertung in der Analyseantwort TRUE.

...
{
  "attachedResourceFullName": "//cloudresourcemanager.googleapis.com/projects/my-project",
  "iamBinding": {
    "role": "roles/compute.admin",
    "members": [
      "user:my-user@example.com"
    ],
    "condition": {
      "expression": "request.time.getHours(\"America/Los_Angeles\") \u003e= 5",
      "title": "No access before 5am PST"
    }
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
        }
      ],
      "accesses": [
        {
          "permission": "compute.instances.get"
        },
        {
          "permission": "compute.instances.start"
        }
      ],
      "conditionEvaluation": {
        "evaluationValue": "TRUE"
      }
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Optionen aktivieren

Sie können die folgenden Optionen aktivieren, um detailliertere Abfrageergebnisse zu erhalten.

Console

Wahltaste Beschreibung
Ressourcen in Ressource(n) auflisten, die der Abfrage entsprechen Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen bis zu 1.000 relevante Nachfolgeressourcen der übergeordneten Ressourcen (Projekte, Ordner und Organisationen) in den Abfrageergebnissen aufgelistet.
Einzelne Nutzer in Gruppen auflisten

Wenn Sie diese Option aktivieren, werden alle Gruppen in den Abfrageergebnissen auf einzelne Mitglieder erweitert. Wenn Sie ausreichende Gruppenberechtigungen haben, werden auch verschachtelte Gruppen erweitert. Diese Erweiterung ist auf 1.000 Mitglieder pro Gruppe beschränkt.

Diese Option ist nur verfügbar, wenn Sie in Ihrer Abfrage kein Hauptkonto angeben.

Berechtigungen in Rollen auflisten

Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen neben der Rolle selbst auch alle Berechtigungen in den einzelnen Rollen aufgelistet.

Diese Option ist nur verfügbar, wenn Sie in Ihrer Abfrage keine Berechtigungen oder Rollen angeben.

gcloud CLI

In diesem Abschnitt werden mehrere allgemeine Flags beschrieben, die Sie hinzufügen können, wenn Sie die Richtlinie zum Zulassen über die gcloud-Befehlszeile analysieren. Eine vollständige Liste der Optionen finden Sie unter Optionale Flags.

Flag Beschreibung
--analyze-service-account-impersonation

Wenn diese Option aktiviert ist, führt Policy Analyzer zusätzliche Analyseabfragen aus, um zu ermitteln, wer die Identität der Dienstkonten übernehmen kann, die den angegebenen Zugriff auf die angegebenen Ressourcen haben. Policy Analyzer führt für jedes Dienstkonto eine Abfrage in den Abfrageergebnissen aus. Diese Abfragen analysieren, wer eine der folgenden Berechtigungen für das Dienstkonto hat:

  • iam.serviceAccounts.actAs
  • iam.serviceAccounts.getAccessToken
  • iam.serviceAccounts.getOpenIdToken
  • iam.serviceAccounts.implicitDelegation
  • iam.serviceAccounts.signBlob
  • iam.serviceAccounts.signJwt

Dies ist ein sehr teurer Vorgang, da er automatisch viele Abfragen ausführt. Wir empfehlen dringend, dass Sie in BigQuery exportieren oder in Cloud Storage exportieren statt analyze-iam-policy-longrunning analyze-iam-policy verwenden.

--expand-groups

Wenn Sie diese Option aktivieren, werden alle Gruppen in den Abfrageergebnissen auf einzelne Mitglieder erweitert. Wenn Sie ausreichende Gruppenberechtigungen haben, werden auch verschachtelte Gruppen erweitert. Diese Erweiterung ist auf 1.000 Mitglieder pro Gruppe beschränkt.

Diese Option ist nur wirksam, wenn Sie in Ihrer Abfrage kein Hauptkonto angeben.

--expand-resources Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen bis zu 1.000 relevante Nachfolgeressourcen der übergeordneten Ressourcen (Projekte, Ordner und Organisationen) in den Abfrageergebnissen aufgelistet.
--expand-roles

Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen neben der Rolle selbst auch alle Berechtigungen in den einzelnen Rollen aufgelistet.

Diese Option ist nur verfügbar, wenn Sie in Ihrer Abfrage keine Berechtigungen oder Rollen angeben.

--output-group-edges Wenn Sie diese Option aktivieren, geben die Abfrageergebnisse die relevanten Beziehungsbeziehungen zwischen Gruppen aus.
--output-resource-edges Wenn Sie diese Option aktivieren, geben die Abfrageergebnisse die relevanten über-/untergeordneten Beziehungen zwischen Ressourcen aus.

REST

Fügen Sie der Analyseabfrage zuerst das Feld options hinzu, um Optionen zu aktivieren. Beispiel:

{
  "analysisQuery": {
    "resourceSelector": {
      "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
    },
    "accessSelector": {
      "permissions": [
        "iam.roles.get",
        "iam.roles.list"
      ]
   },
   "options": {
     OPTIONS
   }
  }
}

Ersetzen Sie OPTIONS durch die Optionen, die Sie im Format "OPTION": true aktivieren möchten. In der folgenden Tabelle werden die verfügbaren Optionen beschrieben:

Wahltaste Beschreibung
analyzeServiceAccountImpersonation

Wenn diese Option aktiviert ist, führt Policy Analyzer zusätzliche Analyseabfragen aus, um zu ermitteln, wer die Identität der Dienstkonten übernehmen kann, die den angegebenen Zugriff auf die angegebenen Ressourcen haben. Policy Analyzer führt für jedes Dienstkonto eine Abfrage in den Abfrageergebnissen aus. Diese Abfragen analysieren, wer eine der folgenden Berechtigungen für das Dienstkonto hat:

  • iam.serviceAccounts.actAs
  • iam.serviceAccounts.getAccessToken
  • iam.serviceAccounts.getOpenIdToken
  • iam.serviceAccounts.implicitDelegation
  • iam.serviceAccounts.signBlob
  • iam.serviceAccounts.signJwt

Dies ist ein sehr teurer Vorgang, da er automatisch viele Abfragen ausführt. Wir empfehlen dringend, dass Sie in BigQuery exportieren oder in Cloud Storage exportieren statt AnalyzeIamPolicyLongrunning AnalyzeIamPolicy verwenden.

expandGroups

Wenn Sie diese Option aktivieren, werden alle Gruppen in den Abfrageergebnissen auf einzelne Mitglieder erweitert. Wenn Sie ausreichende Gruppenberechtigungen haben, werden auch verschachtelte Gruppen erweitert. Diese Erweiterung ist auf 1.000 Mitglieder pro Gruppe beschränkt.

Diese Option ist nur wirksam, wenn Sie in Ihrer Abfrage kein Hauptkonto angeben.

expandResources Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen bis zu 1.000 relevante Nachfolgeressourcen der übergeordneten Ressourcen (Projekte, Ordner und Organisationen) in den Abfrageergebnissen aufgelistet.
expandRoles

Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen neben der Rolle selbst auch alle Berechtigungen in den einzelnen Rollen aufgelistet.

Diese Option ist nur verfügbar, wenn Sie in Ihrer Abfrage keine Berechtigungen oder Rollen angeben.

outputGroupEdges Wenn Sie diese Option aktivieren, geben die Abfrageergebnisse die relevanten Beziehungsbeziehungen zwischen Gruppen aus.
outputResourceEdges Wenn Sie diese Option aktivieren, geben die Abfrageergebnisse die relevanten über-/untergeordneten Beziehungen zwischen Ressourcen aus.

Nächste Schritte