Auf dieser Seite wird gezeigt, wie Sie mit Policy Analyzer die Hauptkonten ermitteln können (Nutzer, Dienstkonten, Gruppen und Domains), welchen Zugriff Google Cloud-Ressourcen
Die Beispiele auf dieser Seite zeigen, wie Sie eine Abfrage zur Richtlinienanalyse ausführen und
die Ergebnisse sofort sehen. Wenn Sie die Ergebnisse für eine weitere Analyse exportieren möchten, können Sie mit AnalyzeIamPolicyLongrunning
Abfrageergebnisse in BigQuery oder Cloud Storage schreiben.
Hinweis
Enable the Cloud Asset API.
Sie müssen die API in dem Projekt oder der Organisation aktivieren, die Sie zum Senden der Abfrage. Dies muss nicht dieselbe Ressource sein, auf die Sie die Abfrage beschränken.
Optional: Weitere Informationen finden Sie unter Funktionsweise von Policy Analyzer.
Optional: Wenn Sie mehr als 20 Abfragen zur Richtlinienanalyse pro Organisation und Tag ausführen möchten, müssen Sie die Premium-Stufe von Security Command Center auf Organisationsebene aktivieren. Weitere Informationen finden Sie unter Fragen zur Abrechnung.
Erforderliche Rollen und Berechtigungen
Die folgenden Rollen und Berechtigungen sind erforderlich, um Zulassungsrichtlinien zu analysieren.
Erforderliche IAM-Rollen
Um die Berechtigungen zu erhalten, die Sie zum Analysieren einer Zulassungsrichtlinie benötigen, bitten Sie Ihren Administrator, Ihnen folgenden IAM-Rollen für das Projekt, den Ordner oder die Organisation, die Sie festlegen an:
-
Cloud-Asset-Betrachter (
roles/cloudasset.viewer
) -
So analysieren Sie Richtlinien mit benutzerdefinierten IAM-Rollen:
Rollen-Betrachter (
roles/iam.roleViewer
) -
So analysieren Sie Richtlinien mit der Google Cloud CLI:
Service Usage-Nutzer (
roles/serviceusage.serviceUsageConsumer
)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen 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
Die folgenden Berechtigungen sind zum Analysieren einer Zulassungsrichtlinie erforderlich:
-
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 erweitern möchten, um zu sehen, ob ein Hauptkonto
bestimmte Rollen oder Berechtigungen aufgrund ihrer Mitgliedschaft in einem
Google Workspace-Gruppe, du benötigst die Google Workspace-Berechtigung groups.read
.
Diese Berechtigung ist in der Rolle „Gruppen-Leser-Administrator“ und in weiteren
Rollen wie Gruppenadministrator oder Super Admin. Weitere 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
Rufen Sie in der Google Cloud Console die Seite Richtlinienanalyse auf.
Klicken Sie im Bereich Richtlinien analysieren auf den Bereich Benutzerdefinierte Abfrage und dann auf Benutzerdefinierte Abfrage erstellen.
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.
Wählen Sie die zu prüfende Ressource und die zu prüfende Rolle oder Berechtigung aus:
- Wählen Sie im Feld Parameter 1 aus dem Drop-down-Menü die Option Ressource aus.
- 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.
- Klicken Sie auf Auswahl hinzufügen.
- Wählen Sie im Feld Parameter 2 entweder Rolle oder Berechtigung aus.
- Wählen Sie im Feld Rolle auswählen oder Berechtigung auswählen die Rolle oder Berechtigung aus, die Sie prüfen möchten.
- 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.
Optional: Klicken Sie auf Weiter und wählen Sie erweiterte Optionen aus. die Sie für diese Abfrage aktivieren möchten.
Klicken Sie im Bereich Benutzerdefinierte Abfrage auf Analysieren > Abfrage ausführen. Auf der Berichtsseite werden die von Ihnen eingegebenen Suchparameter sowie eine Ergebnistabelle angezeigt. aller Hauptkonten mit den angegebenen Rollen oder Berechtigungen für das angegebene .
Richtlinienanalyseabfragen in der Google Cloud Console dauern bis zu einer Minute. Nachher eine Minute lang, stoppt die Google Cloud Console die Abfrage und zeigt alle verfügbaren Ergebnisse an. Wenn die Abfrage nicht innerhalb dieses Zeitraums abgeschlossen ist, wird in der Google Cloud Console ein Banner angezeigt, das darauf hinweist, dass die Ergebnisse unvollständig sind. Um mehr Ergebnisse für diese Suchanfragen zu erhalten, exportieren Sie die in BigQuery importieren.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
RESOURCE_TYPE
: Der Ressourcentyp, auf den die Suche beschränkt werden soll. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Verwenden Sie den Wertproject
,folder
oderorganization
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Nur An diese Ressource und ihre Nachfolger gebundene IAM-Zulassungsrichtlinien werden analysiert. Projekt-IDs sind alphanumerische Strings, wiemy-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 Formate für vollständige Ressourcennamen finden Sie unter Format der Ressourcennamen.PERMISSIONS
: A Durch Kommas getrennte Liste der Berechtigungen, die Sie prüfen möchten, z. B.compute.instances.get,compute.instances.start
. Wenn Sie mehrere überprüft Policy Analyzer nach allen aufgeführten Berechtigungen.
Führen Sie den gcloud asset Analyzer-iam-policy Befehl:
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 Analyseergebnissen. Jedes Analyseergebnis enthält eine Reihe von Zugriffen, Identitäten und Ressourcen, die für Ihre Anfrage relevant sind, gefolgt von der zugehörigen IAM-Rollenverknüpfung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, ist das Ergebnis CONDITIONAL
.
Die Hauptkonten, die eine der angegebenen Berechtigungen für die angegebene Ressource haben, sind in
die identities
-Felder in der Antwort Das folgende Beispiel zeigt eine einzelne Analyse
Ergebnis mit hervorgehobenem Feld identities
.
... --- 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 --- ...
Wenn die Anfrage vor Abschluss der Abfrage abläuft, wird der Fehler DEADLINE_EXCEEDED
angezeigt. Wenn Sie mehr Ergebnisse für diese Abfragen erhalten möchten, schreiben Sie die Ergebnisse mit der lang laufenden Version von analyze-iam-policy
in BigQuery oder Cloud Storage. Eine Anleitung finden Sie unter Richtlinienanalyse in BigQuery schreiben oder Richtlinienanalyse in Cloud Storage schreiben.
REST
Um zu ermitteln, welche Hauptkonten bestimmte Berechtigungen für ein
Ressource, verwenden Sie die
analyzeIamPolicy
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
RESOURCE_TYPE
: Der Typ der Ressource, auf die Sie die Suche beschränken möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Wert verwendenprojects
,folders
oderorganizations
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Nur An diese Ressource und ihre Nachfolger gebundene IAM-Zulassungsrichtlinien werden analysiert. Projekt-IDs sind alphanumerische Strings, wiemy-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 Formate für vollständige Ressourcennamen finden Sie unter Format der Ressourcennamen.PERMISSION_1
,PERMISSION_2
…PERMISSION_N
: Die Berechtigungen, nach denen Sie suchen möchten, z. B.compute.instances.get
. Wenn Sie mehrere Berechtigungen angeben, wird im Policy Analyzer nach jeder der aufgeführten Berechtigungen gesucht.
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy
JSON-Text anfordern:
{ "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 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 Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird das Ergebnis als CONDITIONAL
aufgeführt.
Die Hauptkonten, die eine der angegebenen Berechtigungen für die angegebene Ressource haben, sind in den identities
-Feldern in der Antwort aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, bei 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 }, ...
Wenn bei der Anfrage eine Zeitüberschreitung auftritt, bevor die Abfrage abgeschlossen ist, erhalten Sie eine
DEADLINE_EXCEEDED
Fehler. Um mehr Ergebnisse für diese Abfragen zu erhalten, schreiben Sie
die Ergebnisse mit der Version mit langer Ausführungszeit entweder in BigQuery oder Cloud Storage
von analyzeIamPolicy
. Anweisungen finden Sie unter
Schreiben Sie eine Richtlinienanalyse
BigQuery oder
Schreiben Sie eine Richtlinienanalyse
Cloud Storage
Ermitteln, welche Hauptkonten bestimmte Rollen oder Berechtigungen haben
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
Rufen Sie in der Google Cloud Console die Seite Policy Analyzer auf.
Klicken Sie im Bereich Richtlinien analysieren auf den Bereich Benutzerdefinierte Abfrage und dann auf Benutzerdefinierte Abfrage erstellen.
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.
Wählen Sie im Feld Parameter 1 entweder Rolle oder Berechtigung aus.
Wählen Sie im Feld Rolle auswählen oder Berechtigung auswählen die Rolle oder Berechtigung aus, die Sie prüfen möchten.
Optional: So suchen Sie nach zusätzlichen Rollen und Berechtigungen:
- Klicken Sie auf Auswahl hinzufügen.
- Wählen Sie im Feld Parameter 2 entweder Rolle oder Berechtigung aus.
- Wählen Sie im Feld Rolle auswählen oder Berechtigung auswählen die Rolle oder Berechtigung aus, die Sie prüfen möchten.
- Fügen Sie weitere Rollen- und Berechtigungsauswahl hinzu, bis alle Rollen und Berechtigungen aufgeführt sind, die Sie prüfen möchten.
Optional: Klicken Sie auf Weiter und wählen Sie erweiterte Optionen aus. die Sie für diese Abfrage aktivieren möchten.
Klicken Sie im Bereich Benutzerdefinierte Abfrage auf Analysieren > Abfrage ausführen. Auf der Seite „Berichte“ werden die von Ihnen eingegebenen Abfrageparameter und eine Ergebnistabelle aller Hauptkonten mit den angegebenen Rollen oder Berechtigungen für alle angegebenen Ressourcen angezeigt.
Richtlinienanalyseabfragen in der Google Cloud Console dauern bis zu einer Minute. Nach einer Minute beendet die Google Cloud Console die Abfrage und zeigt alle verfügbaren Ergebnisse an. Wenn die nicht abgeschlossen wurde, wird in der Google Cloud Console ein Banner mit dem Hinweis angezeigt, Ergebnisse sind unvollständig. Um mehr Ergebnisse für diese Suchanfragen zu erhalten, exportieren Sie die in BigQuery importieren.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
RESOURCE_TYPE
: Der Ressourcentyp, auf den die Suche beschränkt werden soll. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Verwenden Sie den Wertproject
,folder
oderorganization
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Nur An diese Ressource und ihre Nachfolger gebundene IAM-Zulassungsrichtlinien werden analysiert. Projekt-IDs sind alphanumerische Strings, wiemy-project
. Ordner- und Organisations-IDs sind numerisch, z. B.123456789012
.ROLES
: Eine durch Kommas getrennte Liste der Rollen, nach denen Sie suchen möchten, z. B.roles/compute.admin,roles/compute.imageUser
. Wenn Sie mehrere Rollen angeben, wird im Policy Analyzer nach jeder der aufgeführten Rollen gesucht.PERMISSIONS
: A Durch Kommas getrennte Liste der Berechtigungen, die Sie prüfen möchten, z. B.compute.instances.get,compute.instances.start
. Wenn Sie mehrere Berechtigungen angeben, wird im Policy Analyzer nach jeder der aufgeführten Berechtigungen gesucht.
Führen Sie den Befehl gcloud asset analyze-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 Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante
IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in
an diese Bindung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird das Ergebnis so angezeigt:
CONDITIONAL
Die Hauptkonten mit einer der angegebenen Rollen oder Berechtigungen sind in der
identities
-Felder in der Antwort. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, bei 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 --- ...
Wenn die Anfrage vor Abschluss der Abfrage abläuft, wird der Fehler DEADLINE_EXCEEDED
angezeigt. Wenn Sie mehr Ergebnisse für diese Abfragen erhalten möchten, schreiben Sie die Ergebnisse mit der lang laufenden Version von analyze-iam-policy
in BigQuery oder Cloud Storage. Eine Anleitung finden Sie unter Richtlinienanalyse in BigQuery schreiben oder Richtlinienanalyse in Cloud Storage schreiben.
REST
Verwenden Sie die Funktionen der Cloud Asset Inventory API, um zu ermitteln, welche Hauptkonten bestimmte Rollen oder Berechtigungen haben
analyzeIamPolicy
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
RESOURCE_TYPE
: Der Typ der Ressource, auf die Sie die Suche beschränken möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Wert verwendenprojects
,folders
oderorganizations
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre untergeordneten Elemente angehängt sind. Projekt-IDs sind alphanumerische Strings, wiemy-project
. Ordner- und Organisations-IDs sind numerisch, z. B.123456789012
.ROLE_1
,ROLE_2
...ROLE_N
: Die Rollen, die nach denen gesucht werden soll, z. B.roles/compute.admin
. Wenn Sie mehrere Rollen angeben, wird im Policy Analyzer nach jeder der aufgeführten Rollen gesucht.PERMISSION_1
,PERMISSION_2
…PERMISSION_N
: Die Berechtigungen, nach denen Sie suchen möchten, z. B.compute.instances.get
. Wenn Sie mehrere Berechtigungen angeben, wird im Policy Analyzer nach jeder der aufgeführten Berechtigungen gesucht.
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy
JSON-Text anfordern:
{ "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 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 Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird das Ergebnis so angezeigt:
CONDITIONAL
Die Hauptkonten mit einer der angegebenen Rollen oder Berechtigungen sind in der
identities
-Felder in der Antwort. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, bei 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 }, ...
Wenn die Anfrage vor Abschluss der Abfrage abläuft, wird der Fehler DEADLINE_EXCEEDED
angezeigt. Um mehr Ergebnisse für diese Abfragen zu erhalten, schreiben Sie
die Ergebnisse mit der Version mit langer Ausführungszeit entweder in BigQuery oder Cloud Storage
von analyzeIamPolicy
. Eine Anleitung finden Sie unter Richtlinienanalyse in BigQuery schreiben oder Richtlinienanalyse in Cloud Storage schreiben.
Ermitteln, 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
Rufen Sie in der Google Cloud Console die Seite Policy Analyzer auf.
Klicken Sie im Bereich Richtlinien analysieren auf den Bereich Benutzerdefinierte Abfrage und dann auf Benutzerdefinierte Abfrage erstellen.
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.
Wählen Sie die Ressource und das Hauptkonto aus, die überprüft werden sollen:
- Wählen Sie im Feld Parameter 1 aus dem Drop-down-Menü die Option Ressource aus.
- 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.
- Klicken Sie auf Auswahl hinzufügen.
- Wählen Sie im Feld Parameter 2 aus dem Drop-down-Menü die Option Hauptkonto aus.
- 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.
Optional: Klicken Sie auf Weiter und wählen Sie alle erweiterten Optionen aus, die Sie für diese Abfrage aktivieren möchten.
Klicken Sie im Bereich Benutzerdefinierte Abfrage auf Analysieren > Abfrage ausführen. Auf der Berichtsseite werden die von Ihnen eingegebenen Abfrageparameter und eine Ergebnistabelle aller Rollen angezeigt, die das angegebene Hauptkonto auf der angegebenen Ressource hat.
Abfragen zur Richtlinienanalyse in der Google Cloud Console werden bis zu einer Minute lang ausgeführt. Nach einer Minute beendet die Google Cloud Console die Abfrage und zeigt alle verfügbaren Ergebnisse an. Wenn die Abfrage nicht innerhalb dieses Zeitraums abgeschlossen ist, wird in der Google Cloud Console ein Banner angezeigt, das darauf hinweist, dass die Ergebnisse unvollständig sind. Wenn Sie mehr Ergebnisse für diese Abfragen erhalten möchten, exportieren Sie die Ergebnisse nach BigQuery.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
RESOURCE_TYPE
: Der Ressourcentyp, auf den die Suche beschränkt werden soll. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Verwenden Sie den Wertproject
,folder
oderorganization
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Nur An diese Ressource und ihre Nachfolger gebundene IAM-Zulassungsrichtlinien werden analysiert. Projekt-IDs sind alphanumerische Strings, wiemy-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 Formate für vollständige Ressourcennamen finden Sie unter Format der Ressourcennamen.PRINCIPAL
: Das Hauptkonto, dessen Zugriff Sie analysieren möchten, im FormatPRINCIPAL_TYPE:ID
, z. B.user:my-user@example.com
. Eine vollständige Liste der Haupttypen finden Sie unter Haupt-IDs.
Führen Sie den Befehl gcloud asset analyze-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 Analyseergebnissen. Jedes Analyseergebnis enthält eine Reihe von Zugriffen, Identitäten und Ressourcen, die für Ihre Anfrage relevant sind, gefolgt von der zugehörigen IAM-Rollenverknüpfung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, ist das Ergebnis CONDITIONAL
.
Die Rollen, die das Hauptkonto für die angegebene Ressource hat, sind in den Feldern accesses
in der Antwort aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, bei 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 --- ...
Wenn die Anfrage vor Abschluss der Abfrage abläuft, wird der Fehler DEADLINE_EXCEEDED
angezeigt. Um mehr Ergebnisse für diese Abfragen zu erhalten, schreiben Sie
die Ergebnisse mit der Version mit langer Ausführungszeit entweder in BigQuery oder Cloud Storage
von analyze-iam-policy
. Anweisungen finden Sie unter
Schreiben Sie eine Richtlinienanalyse
BigQuery oder
Schreiben Sie eine Richtlinienanalyse
Cloud Storage
REST
Verwenden Sie die Methode analyzeIamPolicy
der Cloud Asset Inventory API, um den Zugriff eines Prinzips auf eine Ressource zu ermitteln.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
RESOURCE_TYPE
: Der Typ der Ressource, auf die Sie die Suche beschränken möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Wert verwendenprojects
,folders
oderorganizations
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Nur An diese Ressource und ihre Nachfolger gebundene IAM-Zulassungsrichtlinien werden analysiert. Projekt-IDs sind alphanumerische Strings, wiemy-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 aller Formate für Ressourcennamen, siehe Ressourcenname Format.PRINCIPAL
: Das Hauptkonto, dessen Zugriff Sie analysieren möchten, im FormatPRINCIPAL_TYPE:ID
, z. B.user:my-user@example.com
. Eine vollständige Liste der Hauptkontotypen finden Sie unter Hauptkonto-Kennungen.
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy
JSON-Text anfordern:
{ "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 Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante
IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in
an diese Bindung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird das Ergebnis als CONDITIONAL
aufgeführt.
Die Rollen des Hauptkontos für die angegebene Ressource sind in der accesses
aufgeführt
in der Antwort. Das folgende Beispiel zeigt eine einzelne Analyse
Ergebnis mit hervorgehobenem Feld accesses
.
... { "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 }, ...
Wenn bei der Anfrage eine Zeitüberschreitung auftritt, bevor die Abfrage abgeschlossen ist, erhalten Sie eine
DEADLINE_EXCEEDED
Fehler. Um mehr Ergebnisse für diese Abfragen zu erhalten, schreiben Sie
die Ergebnisse mit der Version mit langer Ausführungszeit entweder in BigQuery oder Cloud Storage
von analyzeIamPolicy
. Eine Anleitung finden Sie unter Richtlinienanalyse in BigQuery schreiben oder Richtlinienanalyse in Cloud Storage schreiben.
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
Rufen Sie in der Google Cloud Console die Seite Policy Analyzer auf.
Suchen Sie im Abschnitt Richtlinien analysieren den Bereich Benutzerdefinierte Abfrage. Klicken Sie in diesem Bereich auf Benutzerdefinierte Abfrage erstellen.
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.
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:
- Wählen Sie im Feld Parameter 1 aus dem Drop-down-Menü die Option Hauptkonto aus.
- 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.
- Klicken Sie auf Auswahl hinzufügen.
- Wählen Sie im Feld Parameter 2 entweder Rolle oder Berechtigung aus.
- Wählen Sie im Feld Rolle auswählen oder Berechtigung auswählen die Rolle oder Berechtigung aus, die Sie prüfen möchten.
- 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.
Optional: Klicken Sie auf Weiter und wählen Sie alle erweiterten Optionen aus, die Sie für diese Abfrage aktivieren möchten.
Klicken Sie im Bereich Benutzerdefinierte Abfrage auf Analysieren > Abfrage ausführen. Auf der Berichtsseite werden die von Ihnen eingegebenen Abfrageparameter und eine Ergebnistabelle mit allen Ressourcen angezeigt, auf denen das angegebene Hauptkonto die angegebenen Rollen oder Berechtigungen hat.
Richtlinienanalyseabfragen in der Google Cloud Console dauern bis zu einer Minute. Nachher eine Minute lang, stoppt die Google Cloud Console die Abfrage und zeigt alle verfügbaren Ergebnisse an. Wenn die nicht abgeschlossen wurde, wird in der Google Cloud Console ein Banner mit dem Hinweis angezeigt, Ergebnisse sind unvollständig. Wenn Sie mehr Ergebnisse für diese Abfragen erhalten möchten, exportieren Sie die Ergebnisse nach BigQuery.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
RESOURCE_TYPE
: Der Ressourcentyp, auf den die Suche beschränkt werden soll. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Verwenden Sie den Wertproject
,folder
oderorganization
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Nur An diese Ressource und ihre Nachfolger gebundene IAM-Zulassungsrichtlinien werden analysiert. Projekt-IDs sind alphanumerische Strings, wiemy-project
. Ordner- und Organisations-IDs sind numerisch, z. B.123456789012
.PRINCIPAL
: Das Hauptkonto, dessen Zugriff Sie analysieren möchten, im FormatPRINCIPAL_TYPE:ID
, z. B.user:my-user@example.com
. Eine vollständige Liste der Haupttypen finden Sie unter Haupt-IDs.PERMISSIONS
: Eine durch Kommas getrennte Liste der Berechtigungen, nach denen Sie suchen möchten, z. B.compute.instances.get,compute.instances.start
. Wenn Sie mehrere Berechtigungen angeben, wird im Policy Analyzer nach jeder der aufgeführten Berechtigungen gesucht.
Führen Sie den Befehl gcloud asset analyze-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 Analyseergebnissen. Jedes Analyseergebnis enthält eine Reihe von Zugriffen, Identitäten und Ressourcen, die für Ihre Anfrage relevant sind, gefolgt von der zugehörigen IAM-Rollenverknüpfung. Wenn die Rollenbindung bedingt ist, wird das Analyseergebnis
enthält auch das Ergebnis der Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, ist das Ergebnis CONDITIONAL
.
Die Ressourcen, für die der angegebene Hauptbenutzer eine der angegebenen Berechtigungen hat, sind in den resources
-Feldern in der Antwort aufgeführt. Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, bei 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 --- ...
Wenn bei der Anfrage eine Zeitüberschreitung auftritt, bevor die Abfrage abgeschlossen ist, erhalten Sie eine
DEADLINE_EXCEEDED
Fehler. Wenn Sie mehr Ergebnisse für diese Abfragen erhalten möchten, schreiben Sie die Ergebnisse mit der lang laufenden Version von analyze-iam-policy
in BigQuery oder Cloud Storage. Anweisungen finden Sie unter
Schreiben Sie eine Richtlinienanalyse
BigQuery oder
Schreiben Sie eine Richtlinienanalyse
Cloud Storage
REST
Mit den Methoden der Cloud Asset Inventory API ermitteln, auf welche Ressourcen ein Hauptkonto zugreifen kann
analyzeIamPolicy
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
RESOURCE_TYPE
: Der Typ der Ressource, auf die Sie die Suche beschränken möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Wert verwendenprojects
,folders
oderorganizations
.RESOURCE_ID
: Die ID des Google Cloud-Projekt, -Ordner oder -Organisation, auf das bzw. die Sie die Suche beschränken möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre untergeordneten Elemente angehängt sind. Projekt-IDs sind alphanumerische Strings, wiemy-project
. Ordner- und Organisations-IDs sind numerisch, z. B.123456789012
.PRINCIPAL
: Das Hauptkonto, dessen Zugriff Sie analysieren möchten, im FormatPRINCIPAL_TYPE:ID
, z. B.user:my-user@example.com
. Eine vollständige Liste der Haupttypen finden Sie unter Haupt-IDs.PERMISSION_1
,PERMISSION_2
...PERMISSION_N
: Die Berechtigungen, die nach denen gesucht werden soll, z. B.compute.instances.get
. Wenn Sie mehrere überprü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 anfordern:
{ "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 Analyseergebnissen. Jedes Analyseergebnis beschreibt eine relevante
IAM-Rollenbindung und listet dann die Ressource, die Zugriffe und die Hauptkonten in
an diese Bindung. Wenn die Rollenbindung bedingt ist, enthält das Analyseergebnis auch das Ergebnis der Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird das Ergebnis als CONDITIONAL
aufgeführt.
Die Ressourcen, für die das angegebene Hauptkonto eine der angegebenen Berechtigungen hat, sind unter
die resources
-Felder in der Antwort Das folgende Beispiel zeigt ein einzelnes Analyseergebnis, bei 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 }, ...
Wenn die Anfrage vor Abschluss der Abfrage abläuft, wird der Fehler DEADLINE_EXCEEDED
angezeigt. Um mehr Ergebnisse für diese Abfragen zu erhalten, schreiben Sie
die Ergebnisse mit der Version mit langer Ausführungszeit entweder in BigQuery oder Cloud Storage
von analyzeIamPolicy
. Anweisungen finden Sie unter
Schreiben Sie eine Richtlinienanalyse
BigQuery oder
Schreiben Sie eine Richtlinienanalyse
Cloud Storage
Zugriff zu einer bestimmten Zeit 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 Rollenbindungen mit Datums-/Uhrzeitbedingungen korrekt analysieren kann, müssen Sie die Zugriffszeit in der Anfrage angeben.
Policy Analyzer kann auch Ressourcenbedingungen ohne zusätzliche Nutzereingaben analysieren. Weitere Informationen zur Verwendung von Bedingungen in Policy Analyzer finden Sie unter Bedingter Zugriff.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
RESOURCE_TYPE
: Der Ressourcentyp, auf den die Suche beschränkt werden soll. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Verwenden Sie den Wertproject
,folder
oderorganization
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre untergeordneten Elemente angehängt sind. Projekt-IDs sind alphanumerische Strings, wiemy-project
. Ordner- und Organisations-IDs sind numerisch, z. B.123456789012
.PERMISSIONS
: Optional. Eine durch Kommas getrennte Liste der Berechtigungen, die Sie prüfen möchten, z. B.compute.instances.get,compute.instances.start
Wenn Sie mehrere überprü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 aller Formate für Ressourcennamen finden Sie unter Format des Ressourcennamens: PERMISSIONS
: Optional. Eine durch Kommas getrennte Liste der Berechtigungen, nach denen Sie suchen möchten, z. B.compute.instances.get,compute.instances.start
. Wenn Sie mehrere überprüft Policy Analyzer nach allen aufgeführten Berechtigungen.ACCESS_TIME
: Der Zeitraum, den Sie prüfen möchten. Dieser Zeitpunkt muss in der Zukunft liegen. Verwenden Sie einen Zeitstempel im RFC 3339-Format, z. B.2099-02-01T00:00:00Z
.
Führen Sie den gcloud asset Analyzer-iam-policy Befehl:
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 Analyseergebnissen. Jedes Analyseergebnis enthält eine Reihe von Zugriffen, Identitäten und Ressourcen, die für Ihre Anfrage relevant sind, gefolgt von der zugehörigen IAM-Rollenverknüpfung. Wenn die Rollenbindung bedingt ist, wird das Analyseergebnis
enthält auch das Ergebnis der Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, ist das Ergebnis CONDITIONAL
.
Wenn Sie die Zugriffszeit in die Anfrage aufnehmen, kann Policy Analyzer Datum und Uhrzeit auswerten
. Wenn die Bedingung als „false“ ausgewertet wird, ist diese Rolle nicht in der Antwort enthalten. Wenn die Bedingung als wahr ausgewertet wird, wird das Ergebnis der Bedingungsauswertung als TRUE
aufgeführt.
... --- 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 --- ...
Wenn die Anfrage vor Abschluss der Abfrage abläuft, wird der Fehler DEADLINE_EXCEEDED
angezeigt. Um mehr Ergebnisse für diese Abfragen zu erhalten, schreiben Sie
die Ergebnisse mit der Version mit langer Ausführungszeit entweder in BigQuery oder Cloud Storage
von analyze-iam-policy
. Anweisungen finden Sie unter
Schreiben Sie eine Richtlinienanalyse
BigQuery oder
Schreiben Sie eine Richtlinienanalyse
Cloud Storage
REST
Bestimmen, welche Hauptkonten bestimmte Berechtigungen für eine Ressource haben
zu einer bestimmten Zeit befinden, nutzen Sie die Methode
analyzeIamPolicy
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
RESOURCE_TYPE
: Der Typ der Ressource, auf die Sie die Suche beschränken möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die mit dieser Ressource und ihren untergeordneten Elementen verknüpft sind. Wert verwendenprojects
,folders
oderorganizations
.RESOURCE_ID
: Die ID des Google Cloud-Projekts, -Ordners oder der -Organisation, auf die die Suche beschränkt werden soll. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an diese Ressource und ihre untergeordneten Elemente angehängt sind. Projekt-IDs sind alphanumerische Strings, wiemy-project
. Ordner- und Organisations-IDs sind numerisch, z. B.123456789012
.PERMISSION_1
,PERMISSION_2
...PERMISSION_N
: Optional. Die Berechtigungen, nach denen Sie suchen möchten, z. B.compute.instances.get
. Wenn Sie mehrere Berechtigungen angeben, wird im Policy Analyzer nach jeder der aufgeführten Berechtigungen gesucht.-
FULL_RESOURCE_NAME
: Optional. Der vollständige Ressourcenname der Ressource, die deren Zugriff Sie analysieren möchten. Eine Liste aller Formate für Ressourcennamen finden Sie unter Format des Ressourcennamens: 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, sucht Policy Analyzer nach allen aufgeführten Berechtigungen.ACCESS_TIME
: Die gewünschte Uhrzeit um dies zu überprüfen. Dieser Zeitpunkt muss in der Zukunft liegen. Verwenden Sie einen Zeitstempel in RFC 3339-Format – für Beispiel:2099-02-01T00:00:00Z
.
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy
JSON-Text anfordern:
{ "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 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 Bedingungsauswertung. Wenn die Bedingung nicht ausgewertet werden konnte, wird das Ergebnis als CONDITIONAL
aufgeführt.
Wenn Sie die Zugriffszeit in die Anfrage aufnehmen, kann Policy Analyzer Datums-/Uhrzeitbedingungen auswerten. Wenn die Bedingung „false“ ergibt, ist diese Rolle nicht in der Antwort enthalten. Wenn die Bedingung als wahr ausgewertet wird, ist der Wert der Bedingung 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 }, ...
Wenn bei der Anfrage eine Zeitüberschreitung auftritt, bevor die Abfrage abgeschlossen ist, erhalten Sie eine
DEADLINE_EXCEEDED
Fehler. Wenn Sie mehr Ergebnisse für diese Abfragen erhalten möchten, schreiben Sie die Ergebnisse mit der lang laufenden Version von analyzeIamPolicy
in BigQuery oder Cloud Storage. Eine Anleitung finden Sie unter Richtlinienanalyse in BigQuery schreiben oder Richtlinienanalyse in Cloud Storage schreiben.
Optionen aktivieren
Sie können die folgenden Optionen aktivieren, um detailliertere Abfrageergebnisse zu erhalten.
Console
Option | Beschreibung |
---|---|
Ressourcen in Ressource(n) auflisten, die der Abfrage entsprechen | Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen bis zu 1.000 relevante untergeordnete Ressourcen für alle übergeordneten Ressourcen (Projekte, Ordner und Organisationen) in den Abfrageergebnissen aufgeführt. |
Einzelne Nutzer in Gruppen auflisten |
Wenn Sie diese Option aktivieren, werden alle Gruppen in den Abfrageergebnissen in einzelne Mitglieder maximiert. Wenn Sie ausreichende Gruppenberechtigungen haben, werden verschachtelte Gruppen werden ebenfalls erweitert. Diese Erweiterung ist auf 1.000 Mitglieder pro Gruppe. Diese Option ist nur verfügbar, wenn Sie in Ihrem Abfrage. |
Berechtigungen in Rollen auflisten |
Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen alle Berechtigungen in den einzelnen zusätzlich zur Rolle selbst. Diese Option ist nur verfügbar, wenn Sie in Ihrer Abfrage keine Berechtigungen oder Rollen angeben. |
gcloud
In diesem Abschnitt werden mehrere gängige Flags beschrieben, die Sie hinzufügen können, wenn Sie die Methode gcloud CLI zum Analysieren von Zulassungsrichtlinien. 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 Analysen 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 in den Abfrageergebnissen eine Abfrage aus. Mit diesen Abfragen wird analysiert, wer eine der folgenden Berechtigungen für das Dienstkonto hat:
Dies ist ein sehr aufwendiger Vorgang, da automatisch viele Abfragen ausgeführt werden. Wir empfehlen Ihnen dringend,
Exportieren
zu BigQuery oder
exportieren
in Cloud Storage hochladen,
|
--expand-groups |
Wenn Sie diese Option aktivieren, werden alle Gruppen in den Abfrageergebnissen in für einzelne Mitglieder. Wenn Sie entsprechende Gruppenberechtigungen haben, werden auch verschachtelte Gruppen maximiert. Die maximale Anzahl der Mitglieder pro Gruppe ist auf 1.000 begrenzt. Diese Option ist nur wirksam, wenn Sie in Ihrer Abfrage keinen Hauptbenutzer angeben. |
--expand-resources |
Wenn Sie diese Option aktivieren, werden die Abfrageergebnisse bis zu 1.000 relevante Nachfolger Ressourcen für übergeordnete Ressourcen (Projekte, Ordner und Ressourcen) Organisationen) in den Abfrageergebnissen. |
--expand-roles |
Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen alle Berechtigungen in den einzelnen zusätzlich zur Rolle selbst. Diese Option ist nur verfügbar, wenn Sie keine Berechtigungen oder Rollen in Ihrer Abfrage. |
--output-group-edges |
Wenn Sie diese Option aktivieren, geben die Abfrageergebnisse die relevante Mitgliedschaft Beziehungen zwischen Gruppen. |
--output-resource-edges |
Wenn Sie diese Option aktivieren, geben die Abfrageergebnisse das entsprechende übergeordnete/untergeordnete Element aus. Beziehungen zwischen Ressourcen. |
REST
Wenn Sie Optionen aktivieren möchten, fügen Sie Ihrer Analyse zuerst das Feld options
hinzu
Abfrage. 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 gewünschten Optionen.
im Format "OPTION": true
. In der folgenden Tabelle
beschreibt die verfügbaren Optionen:
Option | Beschreibung |
---|---|
analyzeServiceAccountImpersonation |
Wenn diese Option aktiviert ist, führt Policy Analyzer zusätzliche Analysen 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 in den Abfrageergebnissen eine Abfrage aus. Mit diesen Abfragen wird analysiert, wer eine der folgenden Berechtigungen für das Dienstkonto hat:
Dies ist ein sehr aufwendiger Vorgang, da automatisch viele Abfragen ausgeführt werden. Wir empfehlen Ihnen dringend,
Exportieren
zu BigQuery oder
exportieren
in Cloud Storage hochladen,
|
expandGroups |
Wenn Sie diese Option aktivieren, werden alle Gruppen in den Abfrageergebnissen in für einzelne Mitglieder. Wenn Sie entsprechende Gruppenberechtigungen haben, werden auch verschachtelte Gruppen maximiert. Diese Erweiterung ist auf 1.000 Mitglieder pro Gruppe. Diese Option ist nur wirksam, wenn Sie in Ihrem Abfrage. |
expandResources |
Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen bis zu 1.000 relevante untergeordnete Ressourcen für alle übergeordneten Ressourcen (Projekte, Ordner und Organisationen) in den Abfrageergebnissen aufgeführt. |
expandRoles |
Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen neben der Rolle selbst auch alle Berechtigungen innerhalb der einzelnen Rollen aufgeführt. Diese Option ist nur verfügbar, wenn Sie keine Berechtigungen oder Rollen in Ihrer Abfrage. |
outputGroupEdges |
Wenn Sie diese Option aktivieren, geben die Abfrageergebnisse die relevante Mitgliedschaft Beziehungen zwischen Gruppen. |
outputResourceEdges |
Wenn Sie diese Option aktivieren, werden in den Abfrageergebnissen die relevanten über-/untergeordneten Beziehungen zwischen Ressourcen ausgegeben. |
Nächste Schritte
- Weitere Informationen zum Schreiben in BigQuery oder Schreiben in Cloud Storage mit
AnalyzeIamPolicyLongrunning
- Informationen zum Speichern von Abfragen zur Richtlinienanalyse mit der REST API
- Mit den verfügbaren Tools zur Fehlerbehebung bei Zugriffen können Sie herausfinden, warum ein Hauptkonto keinen bestimmten Zugriff hat.