Mit Policy Analyzer für Zulassungsrichtlinien können Sie herausfinden, welche Hauptkonten (z. B. Nutzer, Dienstkonten, Gruppen und Domains) welchen Zugriff auf welche Google Cloud -Ressourcen haben, basierend auf Ihren IAM-Zulassungsrichtlinien.
Mit dem Policy Analyzer für Zulassungsrichtlinien können Sie Fragen wie die folgenden beantworten:
- Wer kann auf dieses IAM-Dienstkonto zugreifen?
- Wer kann Daten in diesem BigQuery-Dataset lesen, die personenidentifizierbare Informationen enthalten?
- Welche Rollen und Berechtigungen hat die Gruppe
dev-testersauf einer Ressource in diesem Projekt? - Welche Compute Engine-VM-Instanzen kann Tal in Projekt A löschen?
- Wer kann um 19:00 Uhr auf diesen Cloud Storage-Bucket zugreifen?
Funktionsweise von Policy Analyzer für Zulassungsrichtlinien
Wenn Sie Policy Analyzer für Zulassungsrichtlinien verwenden möchten, erstellen Sie eine Analyseabfrage, geben Sie einen Bereich für die Analyse an und führen Sie die Abfrage dann aus.
Analyseabfragen
Um Policy Analyzer zu verwenden, erstellen Sie eine Analyseabfrage, in der Sie ein oder mehrere der folgenden Felder angeben:
- Hauptkonten: Die Identitäten (z. B. Nutzer, Dienstkonten, Gruppen und Domains), deren Zugriff Sie prüfen möchten
- Zugriff: Die Berechtigungen und Rollen, die Sie prüfen möchten
- Ressourcen: Die Ressourcen, für die Sie den Zugriff prüfen möchten
- (Nur API) Kontext der Bedingung: Der Kontext, z. B. die Tageszeit, in dem Sie den Zugriff prüfen möchten
Normalerweise geben Sie ein oder zwei dieser Felder in der Analyseabfrage an und verwenden dann die Abfrageergebnisse, um weitere Informationen zu den Feldern zu erhalten, die Sie nicht angegeben haben. Wenn Sie beispielsweise wissen möchten, wer eine bestimmte Berechtigung für eine bestimmte Ressource hat, geben Sie den Zugriff und die Ressource in der Analyseanfrage an, aber nicht das Hauptkonto.
Weitere Beispiele für Abfragetypen finden Sie unter Häufige Abfragetypen.
Analysebereich
Wenn Sie eine Analyseabfrage ausführen möchten, müssen Sie einen Gültigkeitsbereich für die Analyse angeben. Der Bereich ist eine Organisation, ein Ordner oder ein Projekt, auf das Sie Ihre Analyse beschränken möchten. Es werden nur IAM-Zulassungsrichtlinien analysiert, die an die als Bereich verwendete Ressource und ihre Nachfolgerelemente angehängt sind.
In der REST API und der gcloud CLI geben Sie den Bereich manuell an. In der Google Cloud Console wird der Bereich automatisch anhand des Projekts, Ordners oder der Organisation bestimmt, die Sie verwalten.
Nachdem Sie eine Analyseabfrage erstellt und den Bereich angegeben haben, können Sie die Abfrage ausführen, um Richtlinien in diesem Bereich zu analysieren.
Abfrageergebnisse
Wenn Sie eine Analyseabfrage ausführen, werden im Policy Analyzer alle Rollenbindungen gemeldet, die die Hauptkonten, den Zugriff und die Ressourcen enthalten, die Sie in der Abfrage angegeben haben. Für jede Rollenbindung werden die Hauptkonten in der Bindung, der Zugriff (Rolle und Berechtigungen), den die Bindung gewährt, und die Ressource, auf die die Bindung Zugriff gewährt, angegeben.
Anhand dieser Ergebnisse können Sie den Zugriff in Ihrem Projekt, Ordner oder Ihrer Organisation besser nachvollziehen. Wenn Sie beispielsweise eine Abfrage ausgeführt haben, um herauszufinden, welche Hauptkonten Zugriff auf eine bestimmte Ressource haben, sehen Sie sich die Hauptkonten in den Abfrageergebnissen an.
Sie können die Informationen in Ihren Abfrageergebnissen anpassen, indem Sie Abfrageoptionen aktivieren.
Unterstützte Richtlinientypen
Policy Analyzer für Zulassungsrichtlinien unterstützt nur IAM-Zulassungsrichtlinien.
Der Policy Analyzer für Zulassungsrichtlinien unterstützt die folgenden Formen der Zugriffssteuerung nicht:
- IAM-Ablehnungsrichtlinien
- IAM-Richtlinien zur Begrenzung des Hauptkontozugriffs
- Rollenbasierte Zugriffssteuerung in Google Kubernetes Engine
- Cloud Storage-Zugriffssteuerungslisten
- Verhinderung des öffentlichen Zugriffs auf Cloud Storage
Bei den Abfrageergebnissen von Policy Analyzer werden nicht unterstützte Richtlinientypen nicht berücksichtigt. Angenommen, ein Nutzer hat die Berechtigung iam.roles.get für ein Projekt aufgrund einer Zulassungsrichtlinie, aber eine Ablehnungsrichtlinie verhindert, dass er die Berechtigung verwendet. Policy Analyzer meldet, dass sie die Berechtigung iam.roles.get haben, obwohl die Ablehnungsrichtlinie vorhanden ist.
Übernahme von Richtlinien
Um die Richtlinienübernahme zu berücksichtigen, analysiert Policy Analyzer automatisch alle relevanten Zulassungsrichtlinien im angegebenen Bereich, unabhängig davon, wo sie sich in der Ressourcenhierarchie befinden.
Angenommen, Sie möchten herausfinden, wer auf ein IAM-Dienstkonto zugreifen kann:
- Wenn Sie die Abfrage auf ein Projekt beschränken, analysiert Policy Analyzer die Zulassungsrichtlinie des Dienstkontos und die Zulassungsrichtlinie des Projekts.
- Wenn Sie die Abfrage auf eine Organisation beschränken, analysiert Policy Analyzer die Zulassungsrichtlinie des Dienstkontos, die Zulassungsrichtlinie des Projekts, zu dem das Dienstkonto gehört, die Zulassungsrichtlinien aller Ordner, die das Projekt enthalten, und die Zulassungsrichtlinie der Organisation.
Bedingter Zugriff
Wenn eine Rollenbindung eine Bedingung hat, wird einem Hauptkonto nur dann Zugriff gewährt, wenn diese Bedingung erfüllt ist. Policy Analyzer meldet immer Bedingungen, die an relevante Rollenbindungen angehängt sind. Relevante Rollenbindungen sind Rollenbindungen, die die Hauptkonten, den Zugriff und die Ressourcen enthalten, die Sie in der Analyseabfrage angegeben haben.
In einigen Fällen kann Policy Analyzer auch die Bedingung analysieren und melden, ob sie erfüllt wäre. Mit Policy Analyzer können die folgenden Bedingungstypen analysiert werden:
- Bedingungen basierend auf Ressourcenattributen für Ressourcentypen, die einen Ressourcennamen bereitstellen.
- Datums-/Uhrzeitbedingungen (nur API und gcloud CLI). Damit Policy Analyzer diese Bedingungen analysieren kann, müssen Sie in Ihrer Analyseabfrage die Uhrzeit des Zugriffs (
accessTime) angeben. Informationen dazu, wie Sie diesen Kontext bereitstellen, finden Sie unter Zugriff zu einem bestimmten Zeitpunkt ermitteln.
Wenn eine relevante Rollenbindung eine Bedingung enthält, führt Policy Analyzer einen der folgenden Schritte aus:
Wenn Policy Analyzer die Bedingung analysieren kann, wird eine der folgenden Aktionen ausgeführt:
- Wenn die Bedingung als „true“ ausgewertet wird, nimmt Policy Analyzer die Rollenbindung in die Abfrageergebnisse auf und kennzeichnet die Bedingungsauswertung als
TRUE. - Wenn die Bedingung „false“ ergibt, wird die Rolle nicht in die Abfrageergebnisse aufgenommen.
- Wenn die Bedingung als „true“ ausgewertet wird, nimmt Policy Analyzer die Rollenbindung in die Abfrageergebnisse auf und kennzeichnet die Bedingungsauswertung als
Wenn Policy Analyzer eine Bedingung für eine relevante Rollenbindung nicht analysieren kann, wird die Rolle in die Abfrageergebnisse aufgenommen und die Bedingungsauswertung als
CONDITIONALmarkiert.
Datenaktualität
Policy Analyzer verwendet die Cloud Asset API, die Datenaktualität nach dem Best-Effort-Prinzip bietet. Während fast alle Richtlinienaktualisierungen innerhalb von Minuten in Policy Analyzer angezeigt werden, kann es vorkommen, dass die neuesten Richtlinienaktualisierungen nicht in Policy Analyzer enthalten sind.
Häufige Abfragetypen
In diesem Abschnitt wird beschrieben, wie Sie Analyseabfragen verwenden, um häufige Fragen zum Zugriff zu beantworten.
Welche Hauptkonten können auf diese Ressource zugreifen?
Wenn Sie ermitteln möchten, welche Hauptkonten auf eine Ressource zugreifen können, erstellen Sie eine Analyseabfrage, in der Sie die Ressource und optional die Rollen und Berechtigungen angeben, die Sie prüfen möchten.
Mit diesen Abfragen können Sie Fragen wie die folgenden beantworten:
- Wer hat Zugriff auf dieses IAM-Dienstkonto?
- Wer hat die Berechtigung, dieses IAM-Dienstkonto zu imitieren?
- Wer sind die Abrechnungsadministratoren für Projekt A?
- (Nur API und gcloud CLI): Wer kann Projekt A durch Übernahme der Identität eines Dienstkontos aktualisieren?
Informationen zum Erstellen und Senden dieser Abfragen finden Sie unter Ermitteln, welche Hauptkonten auf eine Ressource zugreifen können.
Welche Hauptkonten haben diese Rollen und Berechtigungen?
Wenn Sie ermitteln möchten, welche Hauptkonten bestimmte Rollen und Berechtigungen haben, erstellen Sie eine Analyseabfrage, in der Sie ein Hauptkonto und eine Reihe von Rollen und Berechtigungen angeben, die Sie prüfen möchten.
Mit diesen Abfragen können Sie Fragen wie die folgenden beantworten:
- Wer ist berechtigt, die Identität der Dienstkonten in meiner Organisation zu übernehmen?
- Wer sind die Abrechnungsadministratoren in meiner Organisation?
- Wer kann Daten in diesem BigQuery-Dataset lesen, die personenidentifizierbare Informationen enthalten?
- (Nur API und gcloud CLI): Wer in meiner Organisation kann ein BigQuery-Dataset lesen, indem er die Identität eines Dienstkontos annimmt?
Informationen zum Erstellen und Senden dieser Anfragen finden Sie unter Ermitteln, welche Hauptkonten bestimmte Rollen oder Berechtigungen haben.
Welche Rollen und Berechtigungen hat dieses Hauptkonto für diese Ressource?
Wenn Sie ermitteln möchten, welche Rollen und Berechtigungen ein Hauptkonto für eine bestimmte Ressource hat, erstellen Sie eine Analyseabfrage, in der Sie ein Hauptkonto und eine Ressource angeben, für die Sie Berechtigungen prüfen möchten.
Mit diesen Abfragen können Sie Fragen wie die folgenden beantworten:
- Welche Rollen und Berechtigungen hat der Nutzer Sasha für dieses BigQuery-Dataset?
- Welche Rollen und Berechtigungen hat die Gruppe
dev-testersauf einer Ressource in diesem Projekt? - (Nur API und gcloud CLI): Welche Rollen und Berechtigungen hat der Nutzer Dana in diesem BigQuery-Dataset, wenn Dana die Identität eines Dienstkontos übernommen hat?
Informationen zum Erstellen und Senden dieser Abfragen finden Sie unter Ermitteln, welchen Zugriff ein Prinzipal auf eine Ressource hat.
Auf welche Ressourcen kann dieses Hauptkonto zugreifen?
Wenn Sie ermitteln möchten, auf welche Ressourcen ein bestimmtes Hauptkonto zugreifen kann, erstellen Sie eine Analyseabfrage, in der Sie ein Hauptkonto sowie die Rollen und Berechtigungen angeben, die Sie prüfen möchten.
Mit diesen Abfragen können Sie Fragen wie die folgenden beantworten:
- Welche BigQuery-Datasets darf der Nutzer Mahan lesen?
- Welche BigQuery-Datasets ist die
dev-testers-Gruppe, deren Inhaber der Dateninhaber ist? - Welche VMs kann Tal in Projekt A löschen?
- (Nur API und gcloud CLI): Welche VMs kann der Nutzer löschen, wenn er ein Dienstkonto ausgibt?
Informationen zum Erstellen und Senden dieser Abfragen finden Sie unter Ermitteln, auf welche Ressourcen ein Prinzipal zugreifen kann.
Gespeicherte Analyseabfragen
Wenn Sie die REST API verwenden, können Sie Analyseabfragen speichern, um sie wiederzuverwenden oder für andere freizugeben. Sie können eine gespeicherte Abfrage genauso ausführen wie jede andere Abfrage.
Weitere Informationen zum Speichern von Abfragen finden Sie unter Gespeicherte Abfragen verwalten.
Abfrageergebnisse exportieren
Mit analyzeIamPolicyLongrunning können Sie Abfragen asynchron ausführen und Abfrageergebnisse nach BigQuery oder Cloud Storage exportieren.
Informationen zum Exportieren von Abfrageergebnissen nach BigQuery finden Sie unter Richtlinienanalyse in BigQuery schreiben.
Informationen zum Exportieren von Abfrageergebnissen nach Cloud Storage finden Sie unter Richtlinienanalyse in Cloud Storage schreiben.
Abfrageoptionen
Policy Analyzer bietet mehrere Optionen, mit denen Sie Ihren Suchergebnissen weitere Details hinzufügen können.
Informationen zum Aktivieren dieser Optionen
Gruppenerweiterung
Wenn Sie die Gruppenerweiterung aktivieren, werden alle Gruppen in den Suchergebnissen in einzelne Mitglieder aufgeschlüsselt. Die maximale Anzahl der Mitglieder pro Gruppe beträgt 1.000. Wenn Sie entsprechende Gruppenberechtigungen haben, werden auch verschachtelte Gruppen maximiert. Diese Option ist nur wirksam, wenn Sie in Ihrer Anfrage keinen Prinzipal angeben.
Angenommen, Sie aktivieren die Gruppenerweiterung für die Anfrage „Wer hat die Berechtigung storage.buckets.delete für project-1?“. Wenn Policy Analyzer Gruppen mit der Berechtigung storage.buckets.delete findet, werden in den Suchergebnissen nicht nur die Gruppen-IDs, sondern auch alle einzelnen Mitglieder der Gruppe aufgeführt.
Mit dieser Option können Sie den Zugriff einzelner Nutzer nachvollziehen, auch wenn dieser Zugriff auf ihrer Mitgliedschaft in einer Gruppe beruht.
Rollenerweiterung
Wenn Sie die Rollenerweiterung 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 in Ihrer Abfrage keine Berechtigungen oder Rollen angeben.
Angenommen, Sie aktivieren die Rollenerweiterung für die Anfrage „Welchen Zugriff hat my-user@example.com auf den Bucket bucket-1?“. Wenn Policy Analyzer Rollen findet, die my-user@example.com Zugriff auf bucket-1 gewähren, werden in den Suchergebnissen nicht nur der Rollenname, sondern auch alle in der Rolle enthaltenen Berechtigungen aufgeführt.
Mit dieser Option können Sie genau sehen, welche Berechtigungen Ihre Hauptkonten haben.
Ressourcenerweiterung
Wenn Sie die Ressourcenerweiterung für eine Policy Analyzer-Abfrage aktivieren, werden in den Abfrageergebnissen alle relevanten untergeordneten Ressourcen für alle übergeordneten Ressourcen (Projekte, Ordner und Organisationen) in den Abfrageergebnissen aufgeführt. Die Erweiterung ist auf 1.000 Ressourcen pro übergeordneter Ressource für Policy Analyzer-Abfragen und auf 100.000 Ressourcen pro übergeordneter Ressource für lang andauernde Policy Analyzer-Abfragen begrenzt.
Sehen Sie sich beispielsweise an, wie sich die Ressourcenerweiterung auf die folgenden Abfragen auswirken würde:
Wer hat die Berechtigung
storage.buckets.deletefürproject-1?Wenn Sie die Ressourcenerweiterung für diese Abfrage aktivieren, werden im Abschnitt „Ressourcen“ der Abfrageergebnisse nicht nur das Projekt, sondern auch alle Speicher-Buckets im Projekt aufgeführt.
Für welche Ressourcen hat
my-user@example.comdie Berechtigungcompute.instances.setIamPolicy?Wenn Sie die Ressourcenerweiterung für diese Abfrage aktivieren und Policy Analyzer feststellt, dass
my-user@example.comeine Rolle auf Projektebene mit dieser Berechtigung hat, werden im Abschnitt „Ressourcen“ der Abfrageergebnisse nicht nur das Projekt, sondern auch alle Compute Engine-Instanzen im Projekt aufgeführt.
Mit dieser Option erhalten Sie einen detaillierten Überblick über die Ressourcen, auf die Ihre Identitäten zugreifen können.
Identitätsübernahme des Dienstkontos
Wenn Sie die REST API oder die gcloud CLI verwenden, können Sie die Analyse der Identitätsübernahme von Dienstkonten aktivieren.
Wenn diese Option aktiviert ist, führt Policy Analyzer zusätzliche Analyseabfragen aus, um zu ermitteln, wer die Dienstkonten mit dem angegebenen Zugriff auf die angegebenen Ressourcen übernehmen kann. 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:
iam.serviceAccounts.actAsiam.serviceAccounts.getAccessTokeniam.serviceAccounts.getOpenIdTokeniam.serviceAccounts.implicitDelegationiam.serviceAccounts.signBlobiam.serviceAccounts.signJwt
Kontingente und Limits
Cloud Asset Inventory erzwingt die Rate der eingehenden Anfragen, einschließlich Richtlinienanalyseanfragen, basierend auf dem Nutzerprojekt. Cloud Asset Inventory schränkt auch die Gruppenerweiterung innerhalb der Gruppenmitgliedschaften und die Ressourcenerweiterung innerhalb der Ressourcenhierarchie ein.
Die Standardkontingente und ‑limits für Policy Analyzer finden Sie in der Cloud Asset Inventory-Dokumentation unter Kontingente und Limits.
Preise
Jede Organisation kann täglich bis zu 20 Analyseabfragen kostenlos ausführen. Dieses Limit umfasst sowohl die Analyse von Zulassungsrichtlinien als auch die Analyse von Organisationsrichtlinien.
Wenn Sie mehr als 20 Analyseabfragen pro Tag ausführen möchten, müssen Sie Security Command Center auf Organisationsebene in der Premium- oder Enterprise-Stufe aktivieren. Weitere Informationen finden Sie unter Fragen zur Abrechnung.
Nächste Schritte
- Hier erfahren Sie, wie Sie mit Policy Analyzer eine Zulassungsrichtlinie analysieren.
- Informationen zum Speichern von Policy Analysis-Abfragen über die REST API