Auf dieser Seite werden die Audit-Logs beschrieben, die von Cloud Search als Teil von Cloud-Audit-Logs erstellt werden.
Übersicht
Google Cloud-Dienste schreiben Audit-Logs, um Ihnen Antworten auf Fragen wie „Wer hat was wo und wann getan?“ in Bezug auf Ihre Ressourcen zu liefern. Ihre Cloud-Projekte enthalten nur die Audit-Logs für Ressourcen, die sich direkt im Projekt befinden. Andere Entitäten wie Ordner, Organisationen und Cloud-Rechnungskonten enthalten jeweils eigene Audit-Logs.
Eine allgemeine Übersicht über Cloud-Audit-Logs finden Sie unter Cloud-Audit-Logs. Weitere Informationen zu Cloud-Audit-Logs finden Sie unter Audit-Logs verstehen.
Cloud-Audit-Logging erstellt für jedes Google Cloud-Projekt, jeden Ordner und jede Organisation die folgenden Audit-Logs:
- Audit-Logs zu Administratoraktivitäten mit Einträgen, die Methoden für Schreibvorgänge von Administratoren entsprechen Die Methoden, die zu „Administratoraktivität:Administrator-Schreibvorgänge“ gehören, werden im Abschnitt Geprüfte Vorgänge behandelt.
- Audit-Logs zum Datenzugriff mit Einträgen für Methoden, die Vorgänge zum Lesen von Administratordaten, zum Schreiben von Daten und zum Lesen von Daten ausführen. Die Methoden, die den Vorgängen „Datenzugriff:Administrator lesen“, „Datenzugriff:Daten schreiben“ und „Datenzugriff:Daten lesen“ entsprechen, werden im Abschnitt Geprüfte Vorgänge behandelt.
- Audit-Logs zu Systemereignissen
- Audit-Logs zu Richtlinienverstößen
Cloud Search schreibt Audit-Logs zur Administratoraktivität, in denen Vorgänge mit Änderungen der Konfiguration oder der Metadaten einer Ressource aufgezeichnet werden. Sie können Audit-Logs für Administratoraktivitäten nicht deaktivieren.
Cloud Search schreibt nur dann Audit-Logs zum Datenzugriff, wenn diese Option explizit aktiviert ist. Audit-Logs zum Datenzugriff enthalten API-Aufrufe, die die Konfiguration oder Metadaten von Ressourcen lesen, sowie nutzergesteuerte API-Aufrufe, die von Nutzern bereitgestellte Ressourcendaten erstellen, ändern oder lesen.
Cloud Search schreibt keine Audit-Logs zu Systemereignissen.
Cloud Search schreibt keine Audit-Logs zu Richtlinienverstößen.
Geprüfte Vorgänge
Nachfolgend finden Sie eine Zusammenfassung der API-Vorgänge, die dem jeweiligen Audit-Log-Typ in Cloud Search entsprechen:
Audit-Logkategorie | Cloud Search-Vorgänge |
---|---|
Administratoraktivität: Schreiben durch Administrator | indexing.datasources.updateSchema indexing.datasources.deleteSchema settings.datasources.create settings.datasources.delete settings.datasources.update settings.searchapplications.create settings.searchapplications.delete settings.searchapplications.reset settings.searchapplications.update settings.updateCustomer cloudsearch.IdentitySourceService.create cloudsearch.IdentitySourceService.update cloudsearch.IdentitySourceService.delete |
Datenzugriff: Lesen durch Administrator | indexing.datasources.getSchema settings.datasources.get settings.datasources.list settings.searchapplications.get settings.searchapplications.list settings.getCustomer cloudsearch.IdentitySourceService.get cloudsearch.IdentitySourceService.list |
Datenzugriff: Datenschreiben | indexing.datasources.items.delete indexing.datasources.items.deleteQueueItems indexing.datasources.items.index indexing.datasources.items.poll indexing.datasources.items.push indexing.datasources.items.unreserve indexing.datasources.items.upload media.upload |
Datenzugriff: Datenlesevorgänge | indexing.datasources.items.get indexing.datasources.items.list operations.get operations.list debug.datasources.items.checkAccess debug.datasources.items.searchByViewUrl stats.getIndex stats.getQuery stats.getSession stats.getUser stats.index.datasources.get stats.query.searchapplications.get stats.session.searchapplications.get stats.user.search applications.get debug.identitysources.items.listForunmappedidentity debug.identitysources.unmappedids.list debug.datasources.items.unmappedids.list query.sources.list query.suggest query.search stats.getSearchapplication |
Audit-Logformat
Audit-Logeinträge, die in Cloud Logging mit dem Log-Explorer, der Cloud Logging API oder dem gcloud-Befehlszeilentool aufgerufen werden können, umfassen die folgenden Objekte:
Den Logeintrag selbst, ein Objekt vom Typ LogEntry
.
Nützliche Felder sind unter anderem:
logName
enthält die Ressourcen-ID und den Audit-Logtyp.resource
enthält das Ziel zum geprüften Vorgang.timeStamp
enthält die Uhrzeit des geprüften VorgangsprotoPayload
enthält die geprüften Informationen- Die Audit-Logdaten, bei denen es sich um ein AuditLog-Objekt handelt, das sich im Feld „protoPayload“ des Logeintrags befindet.
Optionale dienstspezifische Auditinformationen. Das Objekt ist dienstspezifisch.
Bei früheren Integrationen befindet sich dieses Objekt im Feld serviceData
des AuditLog
-Objekts. Spätere Integrationen verwenden das Feld metadata
.
Informationen zu anderen Feldern in diesen Objekten sowie zu deren Interpretation finden Sie unter Audit-Logs verstehen.
Logname
Ressourcennamen von Cloud-Audit-Logs geben Aufschluss über das Cloud-Projekt oder über eine andere Google Cloud-Entität, die Inhaber der Audit-Logs ist. Sie zeigen außerdem an, ob das Log Audit-Logging-Daten zur Administratoraktivität, zum Datenzugriff, zu abgelehnten Richtlinien oder zu Systemereignissen enthält. Im folgenden Beispiel sind Lognamen für Audit-Logs zur Administratoraktivität auf Projektebene und für die Audit-Logs einer Organisation zum Datenzugriff enthalten. Die Variablen bezeichnen Projekt- und Organisations-IDs.
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
Dienstname
Für Audit-Logs von Cloud Search wird der Dienstname cloudsearch.googleapis.com
verwendet.
Ressourcentypen
Für Audit-Logs von Cloud Search wird der Ressourcentyp audited_resource
für alle Audit-Logs verwendet.
Eine Liste weiterer Ressourcentypen finden Sie unter Überwachte Ressourcentypen.
Audit-Logging aktivieren
Das Audit-Logging ist für die Cloud Search API standardmäßig deaktiviert. So aktivieren Sie das Audit-Logging für die Google Cloud Suche:
Optional: Wenn Sie noch kein Google Cloud-Projekt zum Speichern von Protokollen erstellt haben, lesen Sie den Hilfeartikel Zugriff auf die Google Cloud Search API konfigurieren.
Rufen Sie die Projekt-ID für das Google Cloud-Projekt ab, in dem Sie die Protokolle speichern möchten. Informationen zum Abrufen einer Projekt-ID finden Sie unter Projekte identifizieren.
Wenn Sie das Audit-Logging für eine bestimmte API aktivieren möchten, müssen Sie die zu aktivierende Protokollkategorie angeben. Informationen zu APIs und ihren entsprechenden Kategorien finden Sie weiter oben in diesem Dokument unter Geprüfte Vorgänge.
Verwenden Sie die REST API-Methode
updateCustomer()
, um die auditLogSettings mit den zu aktivierenden Protokollkategorien zu aktualisieren:Rufen Sie ein OAuth 2.0-Zugriffstoken vom Google Authorization Server ab. Informationen zum Abrufen des Tokens finden Sie in Schritt 2 des Hilfeartikels Mit OAuth 2.0 auf Google APIs zugreifen. Verwenden Sie beim Abrufen des Zugriffstokens einen der folgenden OAuth-Bereiche:
https://www.googleapis.com/auth/cloud_search.settings.indexing
https://www.googleapis.com/auth/cloud_search.settings
https://www.googleapis.com/auth/cloud_search
Führen Sie folgenden curl-Befehl aus:
curl --request PATCH \ 'https://cloudsearch.googleapis.com/v1/settings/customer?updateMask=auditLoggingSettings&key=[YOUR_API_KEY]' \ --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \ --header 'Content-Type: application/json' \ --data '{"auditLoggingSettings": { "project": "projects/PROJECT_ID", "CATEGORY1": "true", "CATEGORY2": "true" } }'
Wobei:
YOUR_ACCESS_TOKEN
ist das OAuth 2.0-Zugriffstoken, das in Schritt 4a abgerufen wurde.PROJECT_ID
ist die in Schritt 2 ermittelte Projekt-ID.CATEGORY1
,CATEGORY2
und…
sind die Kategorien, die Sie in Schritt 3 aktiviert haben. Gültige Werte sindlogAdminReadActions
,logDataWriteActions
undlogDataReadActions
. Schreibaktionen für Administratoren sind standardmäßig aktiviert und können nicht deaktiviert werden. Wenn Sie Audit-Logs für Abfragemethoden benötigen, müssen Sie die Kategorie „Datenlesevorgang“ aktivieren.
Nach dem Aktualisieren von
AuditLoggingSettings
generieren weitere Anfragen an die Cloud Search API ein Prüfprotokoll in der inAuditLoggingSettings
angegebenen Projekt-ID.Für das Audit-Logging für Abfragemethoden muss die Kategorie „Daten lesen“ aktiviert sein (siehe Schritt 4). So aktivieren Sie das Audit-Logging für Abfragemethoden (
query.sources.list
,query.suggest
undquery.search
):Rufen Sie für jede Suchanwendung, für die Sie die Protokollierung aktivieren möchten, den Namen ab. Der Name muss das Format
searchapplications/<search_application_id>
haben.Verwenden Sie den Namen, um
settings.searchapplications.update
aufzurufen, wobeienableAuditLog
auftrue
gesetzt wurde.
Wenn Sie Audit-Logs für Aufrufe von
cloudsearch.google.com
aktivieren möchten, muss die Kategorie „Daten lesen“ aktiviert sein (Schritt 4). Führen Sie außerdem Schritt 5b mitname
=searchapplications/default
aus .
Nach der Aktivierung können Sie die Logs im Bereich „Log-Explorer“ der Google Cloud Console aufrufen. Mit dem folgenden Filter können Sie nur Cloud Search-Audit-Logs aufrufen:
protoPayload.serviceName="cloudsearch.googleapis.com"
Informationen zum Anzeigen von Logs finden Sie in der Übersicht zum Log-Explorer.
Berechtigungen für Audit-Logs
Welche Audit-Logs Sie ansehen oder exportieren können, wird durch Berechtigungen und Rollen von Identity and Access Management (IAM) bestimmt. Logs befinden sich in Cloud-Projekten und in einigen anderen Entitäten wie Organisationen, Ordnern und Cloud-Rechnungskonten. Weitere Informationen finden Sie unter Informationen zu Rollen.
Zum Ansehen von Audit-Logs zu Administratoraktivitäten benötigen Sie eine der folgenden IAM-Rollen im Projekt, das die Audit-Logs enthält:
- Projektinhaber, Projektbearbeiter oder Projektbetrachter
- Die Rolle Logbetrachter für Logging
- Eine benutzerdefinierte IAM-Rolle mit der IAM-Berechtigung
logging.logEntries.list
Wenn Sie Audit-Logs zum Datenzugriff aufrufen möchten, benötigen Sie in dem Projekt, das Ihre Audit-Logs enthält, eine der folgenden Rollen:
- Project Owner
- Rolle Betrachter privater Logs für Logging
- Eine benutzerdefinierte IAM-Rolle mit der IAM-Berechtigung
logging.privateLogEntries.list
Wenn die verwendeten Audit-Logs nicht aus einem Cloud-Projekt, sondern einer Entität wie einer Organisation stammen, ändern Sie die Projektrollen in geeignete Organisationsrollen.
Logs ansehen
Wenn Sie Audit-Logs suchen und ansehen möchten, müssen Sie die ID des Cloud-Projekts, des Ordners oder der Organisation kennen, für die Sie Audit-Logging-Informationen abrufen möchten. Sie können weitere indexierte LogEntry
-Felder angeben, z. B. „resource.type“. Weitere Informationen finden Sie unter Abfragen im Log-Explorer erstellen.
Im Folgenden finden Sie die Namen der Audit-Logs. Sie enthalten Variablen für die IDs des Cloud-Projekts, des Ordners oder der Organisation.
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy
Sie haben mehrere Möglichkeiten, Ihre Audit-Logeinträge aufzurufen.
Console
Sie können mit dem Log-Explorer in der Cloud Console die Audit-Logeinträge für Ihr Cloud-Projekt abrufen:
Rufen Sie in der Cloud Console die Seite Logging > Log-Explorer auf.
Wählen Sie auf der Seite Log-Explorer ein vorhandenes Cloud-Projekt aus.
Führen Sie im Bereich Query Builder folgende Schritte aus:
Wählen Sie unter Ressource den Google Cloud-Ressourcentyp aus, dessen Audit-Logs angezeigt werden sollen.
Wählen Sie unter Logname den Audit-Logtyp aus, den Sie sehen möchten:
- Wählen Sie für Audit-Logs zu Administratoraktivitäten die Option activity aus.
- Wählen Sie für Audit-Logs zum Datenzugriff die Option data_access aus.
- Wählen Sie für Audit-Logs zu Systemereignissen die Option system_event aus.
- Wählen Sie für Audit-Logs zu Richtlinienverstößen die Option policy aus.
Wenn diese Optionen nicht angezeigt werden, sind im Cloud-Projekt keine Audit-Logs dieses Typs verfügbar.
Weitere Informationen zu Abfragen mit dem neuen Log-Explorer finden Sie unter Abfragen im Log-Explorer erstellen.
gcloud
gcloud bietet eine Befehlszeile für die Logging API. Geben Sie dabei in jedem Lognamen eine gültige PROJECT_ID
, FOLDER_ID
oder ORGANIZATION_ID
an.
Führen Sie den folgenden Befehl aus, um Ihre Audit-Logeinträge auf Google Cloud-Projektebene zu lesen:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \ --project=PROJECT_ID
Führen Sie den folgenden Befehl aus, um Ihre Audit-Logeinträge auf Ordnerebene zu lesen:
gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \ --folder=FOLDER_ID
Führen Sie den folgenden Befehl aus, um Ihre Audit-Logeinträge auf Organisationsebene zu lesen:
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \ --organization=ORGANIZATION_ID
Weitere Informationen zur Verwendung des gcloud-Tools finden Sie unter gcloud logging read
.
API
Ersetzen Sie beim Erstellen Ihrer Abfragen die Variablen durch gültige Werte, ersetzen Sie den entsprechenden Audit-Lognamen oder die entsprechenden Kennungen auf Projektebene, Ordnerebene oder Organisationsebene, wie in den Audit-Lognamen aufgeführt. Wenn die Abfrage beispielsweise eine PROJECT_ID enthält, muss sich die von Ihnen angegebene Projekt-ID auf das aktuell ausgewählte Cloud-Projekt beziehen.
So rufen Sie Ihre Audit-Logeinträge mit der Logging API auf:
Rufen Sie den Abschnitt Diese API testen in der Dokumentation für die Methode
entries.list
auf.Geben Sie im Teil Anfragetext des Formulars Diese API testen Folgendes ein. Wenn Sie auf dieses vorausgefüllte Formular klicken, wird der Anfragetext automatisch übernommen. Sie müssen jedoch in jedem der Lognamen eine gültige
PROJECT_ID
angeben.{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }
Klicken Sie auf Ausführen.
Weitere Informationen zu Abfragen finden Sie unter Logging-Abfragesprache.
Ein Beispiel für einen Audit-Logeintrag und wie Sie die wichtigsten Informationen darin finden, ist in Audit-Logs verstehen enthalten.
Audit-Logs exportieren
Sie können Audit-Logs genauso wie andere Arten von Logs exportieren. Weitere Informationen zum Exportieren von Logs finden Sie unter Logs exportieren. Im Folgenden erfahren Sie mehr über Möglichkeiten zum Exportieren von Audit-Logs:
Sie können Kopien von Audit-Logs in Cloud Storage, BigQuery oder Pub/Sub exportieren, um Audit-Logs über einen längeren Zeitraum hinweg aufzubewahren oder leistungsfähigere Suchfunktionen zu verwenden. Mit Pub/Sub haben Sie die Möglichkeit, die Logs in andere Anwendungen, andere Repositories und Systeme von Drittanbietern zu exportieren.
Zum organisationsübergreifenden Verwalten Ihrer Audit-Logs erstellen Sie zusammengefasste Senken, mit denen sich Logs aus beliebigen oder allen Cloud-Projekten in der Organisation exportieren lassen.
Wenn die aktivierten Audit-Logs zum Datenzugriff dazu führen, dass Ihre Cloud-Projekte ihr Logkontingent überschreiten, können Sie die Audit-Logs zum Datenzugriff aus Logging exportieren und ausschließen. Weitere Informationen finden Sie unter Logs ausschließen.
Preise und Bindung
In Cloud Logging werden Ihnen Audit-Logs, die nicht deaktiviert werden können, und sämtliche Audit-Logs zur Administratoraktivität nicht in Rechnung gestellt. Audit-Logs zum Datenzugriff, die Sie explizit anfordern, werden Ihnen jedoch von Cloud Logging in Rechnung gestellt.
Weitere Informationen zu den Preisen für Audit-Logs finden Sie unter Preise für die Operations-Suite von Google Cloud.
Die Speicherdauer für Cloud Search-Audit-Logs ist:
- Logs zu Administratoraktivitäten (oder Administratorschreibvorgängen): Diese Logs werden 400 Tage lang aufbewahrt.
- Datenzugriffslogs (Lesen durch den Administrator, Daten schreiben und Daten lesen): Diese Logs werden 30 Tage aufbewahrt.
Weitere Informationen zur Speicherdauer finden Sie unter Aufbewahrungsdauer von Logs.
Aktuelle Beschränkungen
Für das Audit-Logging in Cloud Search gelten derzeit die folgenden Einschränkungen:
Die Größe des Logeintrags darf 512 KB nicht überschreiten. Wenn die Größe 512 KB überschreitet, wird die Antwort aus dem Logeintrag entfernt. Wenn die Größe dadurch nicht auf 512 KB oder weniger reduziert wird, wird die Anfrage abgelehnt. Wenn die Größe immer noch 512 KB überschreitet, wird der Logeintrag gelöscht.
Antwortkörper werden für die Methoden
list()
,get()
undsuggest()
nicht protokolliert. Es sind jedoch Antwortstatus verfügbar.Es werden nur Query API-Aufrufe von
cloudsearch.google.com
(falls aktiviert) und Suchanwendungen von Kunden protokolliert.Bei
search()
-Aufrufen werden nurQuery
,RequestOptions
undDataSourceRestriction
in der Anfrage protokolliert. In der Antwort werden nur die URL und die Metadaten (Quelle undobjectType
) für jedeSearchResult
geprüft.Aufrufe an das Cloud Search-Backend, die dem Datenexport entsprechen, werden nicht geprüft.