Auf dieser Seite wird erläutert, wie Sie Richtlinien für die Identitäts- und Zugriffsverwaltung asynchron analysieren und die Ergebnisse in Cloud Storage schreiben. Die Funktion entspricht weitgehend der Analyse von IAM-Richtlinien, mit dem Unterschied, dass das Analyseergebnis in einen Cloud Storage-Bucket geschrieben wird.
Hinweis
Enable the Cloud Asset API.
Sie müssen die API in dem Projekt oder der Organisation aktivieren, mit dem bzw. der Sie die Abfrage senden. Dabei muss es sich nicht um die Ressource handeln, auf die Sie den Bereich der Abfrage beschränken.
Erforderliche Rollen und Berechtigungen
Die folgenden Rollen und Berechtigungen sind erforderlich, um eine Richtlinienanalyse auszuführen und die Ergebnisse in Cloud Storage zu exportieren.
Erforderliche IAM-Rollen
Um die Berechtigungen zu erhalten, die Sie zum Analysieren einer Richtlinie und zum Exportieren der Ergebnisse nach BigQuery benötigen, müssen Sie Ihren Administrator bitten, Ihnen die folgenden IAM-Rollen für das Projekt, den Ordner oder die Organisation zuzuweisen, auf die sich Ihre Abfrage beziehen soll:
-
Cloud-Asset-Betrachter (
roles/cloudasset.viewer
) -
Storage-Objekt-Ersteller (
roles/storage.objectCreator
) -
So analysieren Sie Richtlinien mit benutzerdefinierten IAM-Rollen:
Rollenbetrachter (
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 Richtlinie und zum Exportieren der Ergebnisse nach BigQuery erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um eine Richtlinie zu analysieren und die Ergebnisse in BigQuery zu exportieren:
-
cloudasset.assets.analyzeIamPolicy
-
cloudasset.assets.searchAllResources
-
cloudasset.assets.searchAllIamPolicies
-
storage.objects.create
-
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 sehen möchten, ob ein Hauptkonto damit bestimmte Rollen oder Berechtigungen hat
ihrer Mitgliedschaft in einer Google Workspace-Gruppe benötigen Sie die groups.read
Google Workspace-Berechtigung. Diese Berechtigung ist in der Rolle „Gruppen-Leser-Administrator“ und in leistungsfähigeren Rollen wie „Gruppenadministrator“ oder „Super Admin“ enthalten. Weitere Informationen finden Sie unter Bestimmte Administratorrollen zuweisen.
Informationen.
Richtlinien analysieren und Ergebnisse exportieren
Mit der Methode AnalyzeIamPolicyLongrunning
können Sie eine Analyseanfrage senden und Ergebnisse im angegebenen Cloud Storage-Bucket abrufen.
gcloud
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
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. Verwenden Sie den Wertproject
,folder
oderorganization
.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 Hauptkontotypen finden Sie unter Hauptkonto-Kennungen.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 überprüft Policy Analyzer nach allen aufgeführten Berechtigungen.STORAGE_OBJECT_URI
: Die eindeutige Ressourcen-ID des Cloud Storage-Objekts, in das Sie Analyseergebnisse exportieren möchten, im Formatgs://BUCKET_NAME/OBJECT_NAME
, z. B.gs://my-bucket/analysis.json
.
Führen Sie den Befehl gcloud asset analyze-iam-policy-longrunning aus:
Linux, macOS oder Cloud Shell
gcloud asset analyze-iam-policy-longrunning --RESOURCE_TYPE=RESOURCE_ID \ --full-resource-name=FULL_RESOURCE_NAME \ --identity=PRINCIPAL \ --permissions='PERMISSIONS' \ --gcs-output-path=STORAGE_OBJECT_URI
Windows (PowerShell)
gcloud asset analyze-iam-policy-longrunning --RESOURCE_TYPE=RESOURCE_ID ` --full-resource-name=FULL_RESOURCE_NAME ` --identity=PRINCIPAL ` --permissions='PERMISSIONS' ` --gcs-output-path=STORAGE_OBJECT_URI
Windows (cmd.exe)
gcloud asset analyze-iam-policy-longrunning --RESOURCE_TYPE=RESOURCE_ID ^ --full-resource-name=FULL_RESOURCE_NAME ^ --identity=PRINCIPAL ^ --permissions='PERMISSIONS' ^ --gcs-output-path=STORAGE_OBJECT_URI
Sie sollten eine Antwort ähnlich der folgenden erhalten:
Analyze IAM Policy in progress. Use [gcloud asset operations describe projects/my-project/operations/AnalyzeIamPolicyLongrunning/1195028485971902504711950280359719028666] to check the status of the operation.
REST
Analysieren Sie eine IAM-Zulassungsrichtlinie und exportieren Sie die Ergebnisse nach
Cloud Storage, verwenden Sie die
analyzeIamPolicyLongrunning
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
RESOURCE_TYPE
: Der Ressourcentyp, auf den die Suche beschränkt werden soll. Nur IAM-Zulassungsrichtlinien die an diese Ressource und ihre Nachfolger angehängt sind, analysiert werden. Verwenden Sie den Wertprojects
,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
.-
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: PRINCIPAL
: Optional. 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.PERMISSION_1
,PERMISSION_2
...PERMISSION_N
: Optional. Die Berechtigungen, die Sie prüfen möchten, z. B.compute.instances.get
. Wenn Sie mehrere Berechtigungen angeben, wird im Policy Analyzer nach jeder der aufgeführten Berechtigungen gesucht.STORAGE_OBJECT_URI
: Die eindeutige Ressource Kennzeichnung des Cloud Storage-Objekts, in das Sie die Analyseergebnisse exportieren möchten, im Feld ausgs://BUCKET_NAME/OBJECT_NAME
, z. B.gs://my-bucket/analysis.json
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicyLongrunning
JSON-Text anfordern:
{ "analysisQuery": { "resourceSelector": { "fullResourceName": "FULL_RESOURCE_NAME" }, "identitySelector": { "identity": "PRINCIPAL" }, "accessSelector": { "permissions": [ "PERMISSION_1", "PERMISSION_2", "PERMISSION_N" ] }, "outputConfig": { "gcsDestination": { "uri": "STORAGE_OBJECT_URI" } } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
{ "name": "projects/my-project/operations/AnalyzeIamPolicyLongrunning/1206385342502762515812063858425027606003", "metadata": { "@type": "type.googleapis.com/google.cloud.asset.v1.AnalyzeIamPolicyLongrunningMetadata", "createTime": "2022-04-12T21:31:10.753173929Z" } }
Ergebnisse der IAM-Richtlinienanalyse aufrufen
So rufen Sie die Analyse der IAM-Richtlinien auf:
Rufen Sie in der Google Cloud Console die Seite Buckets auf.
Öffnen Sie die neue Datei, in die Sie die Analyse exportiert haben.
In den Ergebnissen werden Tupel von {identity, role(s)/permission(s), resource}
zusammen mit IAM-Richtlinien aufgelistet, die diese Tupel generieren.