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, aus denen in Bezug auf Ihre Ressourcen hervorgeht, wer was wo und wann getan hat. Ihre Cloud-Projekte enthalten nur 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 finden Sie unter Cloud-Audit-Logs. Weitere Informationen finden Sie unter Informationen zu Audit-Logs.
Cloud-Audit-Logs erstellt für jedes Google Cloud-Projekt, jeden Ordner und jede Organisation die folgenden Logs:
- Audit-Logs zur Administratoraktivität: Einträge für Methoden, die Schreibvorgänge für Administratoren ausführen.
- Audit-Logs zum Datenzugriff: Einträge für Methoden, die Lesevorgänge für Administratoren sowie Schreib- und Lesevorgänge für Daten ausführen.
- Audit-Logs zu Systemereignissen
- Audit-Logs zu Richtlinienverstößen
Cloud Search schreibt Audit-Logs zur Administratoraktivität, um Vorgänge aufzuzeichnen, die die Konfiguration oder Metadaten von Ressourcen ändern. Sie können Audit-Logs zu Administratoraktivitäten nicht deaktivieren.
Cloud Search schreibt nur dann Audit-Logs zum Datenzugriff, wenn Sie diese explizit aktivieren. Diese Logs 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 oder Richtlinienverstößen.
Geprüfte Vorgänge
In der folgenden Tabelle ist eine Zusammenfassung der API-Vorgänge zu finden, die dem jeweiligen Audit-Logtyp in Cloud Search entsprechen:
| Audit-Logkategorie | Cloud Search-Vorgänge |
|---|---|
| Administratoraktivität: Schreibvorgang für Administratoren | 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: Lesevorgang für Administratoren | indexing.datasources.getSchema settings.datasources.get settings.datasources.list settings.searchapplications.get settings.searchapplications.list settings.getCustomer cloudsearch.IdentitySourceService.get cloudsearch.IdentitySourceService.list |
| Datenzugriff: Schreibvorgang für Daten | 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: Lesevorgang für Daten | 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 enthalten die folgenden Objekte. Sie können sie in Cloud Logging mit dem Log-Explorer, der Cloud Logging API oder dem gcloud-Befehlszeilentool aufrufen.
Der Logeintrag selbst ist ein
LogEntry
Objekt. Nützliche Felder sind:
logName: die Ressourcen-ID und der Audit-Logtypresource: das Ziel des geprüften VorgangstimeStamp: die Uhrzeit des geprüften VorgangsprotoPayload: die geprüften Informationen
Die Audit-Logging-Daten sind ein
AuditLog
Objekt im protoPayload Feld.
Optionale dienstspezifische Audit-Informationen sind ein dienstspezifisches Objekt. Bei früheren Integrationen befindet sich dieses Objekt im Feld serviceData des Objekts AuditLog. Bei späteren Integrationen wird das Feld metadata verwendet.
Weitere Informationen finden Sie unter Informationen zu Audit-Logs.
Log name
Ressourcennamen von Cloud-Audit-Logs geben Aufschluss über das Projekt oder eine andere Google Cloud-Entität, die Inhaber der Logs ist, sowie über den Audit-Logtyp. Beispiel:
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 alle Audit-Logs von Cloud Search wird der Ressourcentyp audited_resource verwendet. Weitere Ressourcentypen finden Sie unter
Typen überwachter Ressourcen.
Audit-Logging aktivieren
Standardmäßig ist das Audit-Logging für die Cloud Search API deaktiviert. So aktivieren Sie das Audit-Logging für Cloud Search:
- Optional: Wenn Sie noch kein Google Cloud-Projekt zum Speichern von Logs erstellt haben, lesen Sie Zugriff auf die Cloud Search API konfigurieren.
- Rufen Sie die Projekt-ID für das Google Cloud-Projekt ab, in dem Sie Logs speichern möchten. Weitere Informationen finden Sie unter Projekte identifizieren.
- Bestimmen Sie die Logkategorie, die für eine bestimmte API aktiviert werden soll. Weitere Informationen finden Sie unter Geprüfte Vorgänge.
Verwenden Sie die
updateCustomer()REST API-Methode, um dieauditLogSettingsmit den Kategorien zu aktualisieren:- Rufen Sie ein OAuth 2.0-Zugriffstoken ab. Weitere Informationen finden Sie unter
Mit OAuth 2.0 auf Google APIs zugreifen.
Verwenden Sie einen der folgenden Bereiche:
https://www.googleapis.com/auth/cloud_search.settings.indexinghttps://www.googleapis.com/auth/cloud_search.settingshttps://www.googleapis.com/auth/cloud_search
Führen Sie diesen curl-Befehl aus:
bash 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" } }'Ersetzen SieYOUR_ACCESS_TOKEN,PROJECT_IDund die Kategorien (logAdminReadActions,logDataWriteActionsoderlogDataReadActions). Schreibvorgänge für Administratoren sind standardmäßig aktiviert. Wenn Sie Abfragemethoden protokollieren möchten, aktivieren Sie die Kategorie „Daten lesen“.Nachfolgende Anfragen an die Cloud Search API generieren Logs im angegebenen Projekt.
- Rufen Sie ein OAuth 2.0-Zugriffstoken ab. Weitere Informationen finden Sie unter
Mit OAuth 2.0 auf Google APIs zugreifen.
Verwenden Sie einen der folgenden Bereiche:
Für das Audit-Logging von Abfragemethoden ist die Kategorie „Daten lesen“ erforderlich. So aktivieren Sie das Logging für
query.sources.list,query.suggestundquery.search:- Rufen Sie den Namen für jede Suchanwendung im Format
searchapplications/<search_application_id>ab. - Rufen Sie
settings.searchapplications.updateauf und legen SieenableAuditLogauftruefest.
- Rufen Sie den Namen für jede Suchanwendung im Format
Wenn Sie das Audit-Logging für Aufrufe von
cloudsearch.google.comaktivieren möchten, muss die Kategorie „Daten lesen“ aktiviert sein. Aktualisieren Sie außerdemsearchapplications/default.
Sie können Logs im Log-Explorer der Google Cloud Console aufrufen. Verwenden Sie diesen Filter für Cloud Search-Audit-Logs:
protoPayload.serviceName="cloudsearch.googleapis.com"
Weitere Informationen finden Sie unter Log-Explorer – Übersicht.
Berechtigungen für Audit-Logs
Welche Logs Sie ansehen oder exportieren können, wird durch Berechtigungen von Identity and Access Management (IAM) bestimmt. Weitere Informationen finden Sie unter Informationen zu Rollen.
Zum Ansehen von Audit-Logs zu Administratoraktivitäten benötigen Sie eine der folgenden IAM-Rollen:
- Projektinhaber, -bearbeiter oder -betrachter
- Die Rolle Logbetrachter für Logging Logs Viewer
- Eine benutzerdefinierte IAM-Rolle
mit der
logging.logEntries.listBerechtigung.
Wenn Sie Audit-Logs zum Datenzugriff aufrufen möchten, benötigen Sie eine der folgenden Rollen:
- Project Owner.
- Rolle Betrachter privater Logs für Logging
- Eine benutzerdefinierte IAM-Rolle
mit der
logging.privateLogEntries.listIAM-Berechtigung
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
Zum Ansehen von Logs benötigen Sie die ID des Cloud-Projekts, des Ordners oder der Organisation. Sie können auch andere
LogEntry
Felder angeben, z. B. resource.type. Weitere Informationen finden Sie unter
Abfragen im Log-Explorer erstellen.
Audit-Lognamen haben folgendes Format:
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%2Fpolicyfolders/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
- Rufen Sie in der Google Cloud Console die Seite Logging > Log-Explorer auf. Zum Log-Explorer
- Wählen Sie Ihr Projekt aus.
- Wählen Sie im Bereich Abfrage-Tool die Ressource und den Logtyp aus. Weitere Informationen zu Abfragen mit dem neuen Log-Explorer finden Sie unter Abfragen im Log-Explorer erstellen.
gcloud
Führen Sie diesen Befehl für Logs auf Projektebene aus:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
--project=PROJECT_ID
API
- Rufen Sie den Abschnitt Diese API testen für die
entries.listMethode auf. - Verwenden Sie diesen Anfragetext und ersetzen Sie
PROJECT_IDdurch Ihre ausgewählte Projekt-ID:{ "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 wie andere Logs exportieren. Weitere Informationen finden Sie unter Logs exportieren.
- Exportieren Sie Logs nach Cloud Storage, BigQuery oder Pub/Sub, um sie länger aufzubewahren oder erweiterte Suchfunktionen zu nutzen.
- Verwenden Sie aggregierte Senken zum Verwalten von Logs in einer Organisation.
- Schließen Sie Audit-Logs zum Datenzugriff aus, um Logzuweisungen zu verwalten. Weitere Informationen finden Sie unter Logs ausschließen.
Preise und Aufbewahrung
Audit-Logs für Administratoraktivitäten sind in Cloud Logging kostenlos. Für Audit-Logs zum Datenzugriff werden Ihnen jedoch Kosten in Rechnung gestellt. Weitere Informationen finden Sie unter Preise für die Operations Suite von Google Cloud.
Aufbewahrungsfristen für Cloud Search-Audit-Logs:
- Logs zur Administratoraktivität: 400 Tage
- Audit-Logs zum Datenzugriff: 30 Tage
Aktuelle Beschränkungen
Beschränkungen für das Audit-Logging von Cloud Search:
- Die Größe von Logeinträgen muss weniger als 512 KB betragen. Wenn ein Eintrag 512 KB überschreitet, wird das Feld
responseentfernt. Wenn er immer noch 512 KB überschreitet, wird das Feldrequestentfernt. Wenn er immer noch 512 KB überschreitet, wird der gesamte Eintrag gelöscht. - Antworttexte werden für die Methoden
list(),get()undsuggest()nicht protokolliert. - Es werden nur Abfrageaufrufe von
cloudsearch.google.comund von Suchanwendungen von Kunden protokolliert. - Bei
search()-Aufrufen werden in der Anfrage nurQuery,RequestOptionsundDataSourceRestrictionprotokolliert. In der Antwort werden nur die URL und die Metadaten geprüft. - Backend-Aufrufe für den Datenexport werden nicht geprüft.