Na tej stronie opisujemy logi kontrolne tworzone przez Cloud Search w ramach logów kontrolnych Cloud.
Przegląd
Usługi Google Cloud zapisują logi kontrolne, aby pomóc Ci odpowiedzieć na pytania „kto, co, gdzie i kiedy” w odniesieniu do działań dotyczących Twoich zasobów. Projekty Cloud zawierają logi kontrolne tylko w przypadku zasobów znajdujących się bezpośrednio w projekcie. Inne podmioty, takie jak foldery, organizacje i konta rozliczeniowe Cloud, zawierają własne dzienniki audytu.
Ogólne omówienie znajdziesz w artykule Logi kontrolne Cloud. Więcej informacji znajdziesz w artykule Omówienie dzienników kontrolnych.
Cloud Audit Logs udostępnia te logi dla każdego projektu, folderu i organizacji w Google Cloud:
- Logi kontrolne aktywności administratora: wpisy dotyczące metod wykonujących operacje zapisu administratora.
- Logi kontrolne dostępu do danych: wpisy dotyczące metod wykonujących operacje odczytu przez administratora, zapisu danych i odczytu danych.
- Logi kontrolne zdarzeń systemowych
- Logi kontrolne odrzuconych zasad
Cloud Search zapisuje logi kontrolne aktywności administratora, aby rejestrować operacje, które modyfikują konfigurację lub metadane zasobów. Logów kontrolnych aktywności administratora nie można wyłączyć.
Cloud Search zapisuje logi kontrolne dostępu do danych tylko wtedy, gdy jawnie je włączysz. Zawierają one wywołania interfejsu API, które odczytują konfigurację lub metadane zasobów, a także wywołania interfejsu API przez użytkowników, które tworzą, modyfikują lub odczytują dane zasobów przekazywanych przez użytkowników.
Cloud Search nie zapisuje logów kontrolnych Zdarzenie systemowe ani Odrzucona zasada.
Skontrolowane operacje
W tabeli poniżej znajdziesz podsumowanie operacji interfejsu API odpowiadających poszczególnym typom dzienników kontrolnych w Cloud Search:
| Kategoria logów kontrolnych | Operacje Cloud Search |
|---|---|
| Aktywność administratora: zapis przez administratora | 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 |
| Dostęp do danych: odczyt przez administratora | indexing.datasources.getSchema settings.datasources.get settings.datasources.list settings.searchapplications.get settings.searchapplications.list settings.getCustomer cloudsearch.IdentitySourceService.get cloudsearch.IdentitySourceService.list |
| Dostęp do danych: zapis danych | 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 |
| Dostęp do danych: odczyt danych | 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 |
Format dziennika kontrolnego
Wpisy w dzienniku kontrolnym zawierają te obiekty: Możesz je wyświetlać w Cloud Logging za pomocą eksploratora logów, interfejsu Cloud Logging API lub narzędzia wiersza poleceń gcloud.
Sam wpis w logu jest obiektem LogEntry. Przydatne pola:
logName: identyfikator zasobu i typ dziennika kontrolnego.resource: cel audytowanej operacji.timeStamp: czas operacji podlegającej kontroli.protoPayload: informacje poddane kontroli.
Dane logowania kontrolnego to obiekt AuditLog w polu protoPayload.
Opcjonalne informacje o kontroli dotyczące konkretnej usługi to obiekt specyficzny dla usługi. W przypadku wcześniejszych integracji ten obiekt znajduje się w polu serviceData obiektu AuditLog, a w przypadku późniejszych integracji – w polu metadata.
Więcej informacji znajdziesz w artykule Omówienie dzienników kontrolnych.
Nazwa logu
Nazwy zasobów Cloud Audit Logs wskazują projekt lub inny podmiot Google Cloud, który jest właścicielem logów, oraz typ logów kontrolnych. Na przykład:
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
Nazwa usługi
Logi kontrolne Cloud Search używają nazwy usługicloudsearch.googleapis.com.
Typy zasobów
Logi kontrolne Cloud Search używają typu zasobu audited_resource
we wszystkich logach. Więcej typów zasobów znajdziesz w artykule Typy monitorowanych zasobów.
Włączanie logowania kontrolnego
Domyślnie rejestrowanie kontrolne jest wyłączone w przypadku interfejsu Cloud Search API. Aby włączyć logowanie kontrolne w Cloud Search:
- (Opcjonalnie) Jeśli nie masz projektu Google Cloud do przechowywania logów, zapoznaj się z artykułem Konfigurowanie dostępu do interfejsu Cloud Search API.
- Uzyskaj identyfikator projektu Google Cloud, w którym chcesz przechowywać logi. Zobacz Identyfikowanie projektów.
- Określ kategorię logów, którą chcesz włączyć w przypadku konkretnego interfejsu API. Zobacz kontrolowane operacje.
Użyj metody interfejsu API REST
updateCustomer(), aby zaktualizowaćauditLogSettingso kategorie:- Uzyskaj token dostępu OAuth 2.0. Zobacz Używanie protokołu OAuth 2.0 na potrzeby dostępu do interfejsów API Google.
Użyj jednego z tych zakresów:
https://www.googleapis.com/auth/cloud_search.settings.indexinghttps://www.googleapis.com/auth/cloud_search.settingshttps://www.googleapis.com/auth/cloud_search
Uruchom to polecenie curl:
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" } }'ZastąpYOUR_ACCESS_TOKEN,PROJECT_IDi kategorie (logAdminReadActions,logDataWriteActionslublogDataReadActions). Domyślnie włączone są działania zapisu administratora. Aby rejestrować metody zapytań, włącz kategorię Odczyt danych.Kolejne żądania do interfejsu Cloud Search API generują logi w określonym projekcie.
- Uzyskaj token dostępu OAuth 2.0. Zobacz Używanie protokołu OAuth 2.0 na potrzeby dostępu do interfejsów API Google.
Użyj jednego z tych zakresów:
Rejestrowanie w dzienniku kontrolnym metod zapytań wymaga kategorii Odczyt danych. Aby włączyć logowanie w przypadku dostawców
query.sources.list,query.suggestiquery.search:- Pobierz nazwę każdej wyszukiwarki w formacie
searchapplications/<search_application_id>. - Zadzwoń pod numer
settings.searchapplications.update, ustawiającenableAuditLognatrue.
- Pobierz nazwę każdej wyszukiwarki w formacie
Aby włączyć logowanie kontrolne wywołań z usługi
cloudsearch.google.com, upewnij się, że kategoria Odczyt danych jest włączona, i zaktualizujsearchapplications/default.
Wyświetl logi w Eksploratorze logów w konsoli Google Cloud. Użyj tego filtra w przypadku dzienników kontrolnych Cloud Search:
protoPayload.serviceName="cloudsearch.googleapis.com"
Więcej informacji znajdziesz w artykule z omówieniem eksploratora logów.
Uprawnienia do logów kontrolnych
Uprawnienia zarządzania tożsamościami i dostępem (IAM) określają, które dzienniki możesz wyświetlać lub eksportować. Więcej informacji znajdziesz w artykule Role.
Aby wyświetlać logi kontrolne aktywności administratora, musisz mieć jedną z tych ról uprawnień:
- Właściciel, Edytujący lub Wyświetlający w odniesieniu do projektu.
- rolę Logowanie Wyświetlający logi.
- Niestandardowa rola uprawnień z uprawnieniem
logging.logEntries.list.
Aby wyświetlać logi kontrolne dostępu do danych, musisz mieć jedną z tych ról:
- Właściciel projektu
- rolę Wyświetlający logi prywatne w usłudze Logging.
- Niestandardowa rola uprawnień z uprawnieniem
logging.privateLogEntries.list
Jeśli używasz dzienników kontrolnych z podmiotu innego niż projekt, np. organizacji, zmień role projektu Cloud na odpowiednie role organizacji.
Wyświetl logi
Aby wyświetlić logi, musisz mieć identyfikator projektu, folderu lub organizacji w Google Cloud. Możesz określić inne pola, np. LogEntry resource.type. Zobacz Tworzenie zapytań w eksploratorze logów.
Nazwy dzienników kontrolnych mają ten 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
Wpisy w logu kontrolnym możesz wyświetlać na kilka sposobów.
Konsola
- W konsoli Google Cloud otwórz stronę Logowanie > Eksplorator logów. Otwórz Eksplorator logów
- Wybierz projekt.
- W panelu Konstruktor zapytań wybierz zasób i typ logu. Więcej informacji o wykonywaniu zapytań za pomocą nowego eksploratora logów znajdziesz w artykule Tworzenie zapytań w eksploratorze logów.
gcloud
Aby wyświetlić logi na poziomie projektu, uruchom to polecenie:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
--project=PROJECT_ID
Interfejs API
- Otwórz sekcję Wypróbuj ten interfejs API dla metody
entries.list. - Użyj tego treści żądania, zastępując
PROJECT_IDwybranym identyfikatorem projektu:{ "resourceNames": ["projects/PROJECT_ID"], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" } - Kliknij Wykonaj.
Więcej informacji o generowaniu zapytań znajdziesz w artykule Język zapytań usługi Logging.
Przykładowy wpis w dzienniku kontrolnym i informacje o tym, jak znaleźć w nim najważniejsze dane, znajdziesz w artykule Omówienie dzienników kontrolnych.
Eksportowanie dzienników kontrolnych
Dzienniki kontrolne możesz eksportować tak samo jak inne dzienniki. Zobacz Eksportowanie logów.
- Eksportowanie do Cloud Storage, BigQuery lub Pub/Sub w celu dłuższego przechowywania lub zaawansowanego wyszukiwania.
- Używaj zagregowanych miejsc docelowych do zarządzania logami w całej organizacji.
- Wyklucz logi dostępu do danych, aby zarządzać przydziałami logów. Zobacz sekcję Wykluczanie logów.
Ceny i utrzymanie
Cloud Logging nie nalicza opłat za logi kontrolne aktywności administratora. Cloud Logging nalicza opłaty za logi kontrolne dostępu do danych. Zobacz cennik pakietu operacyjnego Google Cloud.
Okresy przechowywania logów kontrolnych Cloud Search:
- Historia aktywności administratorów: 400 dni.
- Logi dostępu do danych: 30 dni.
Obecne ograniczenia
Ograniczenia logów kontrolnych Cloud Search:
- Rozmiar wpisu w logu musi być mniejszy niż 512 KB. Jeśli wpis przekracza 512 KB, pole
responsejest usuwane. Jeśli nadal przekracza 512 KB, polerequestzostanie usunięte. Jeśli nadal przekracza 512 KB, cały wpis zostanie odrzucony. - Treści odpowiedzi nie są rejestrowane w przypadku metod
list(),get()isuggest(). - Rejestrowane są tylko wywołania zapytań z
cloudsearch.google.comi aplikacji do wyszukiwania klientów. - W przypadku połączeń
search()w żądaniu rejestrowane są tylko wartościQuery,RequestOptionsiDataSourceRestriction. Odpowiedź zawiera tylko sprawdzenie adresu URL i metadanych. - Wywołania backendu na potrzeby eksportu danych nie są kontrolowane.