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 zasobów. Twoje projekty Cloud zawierają logi kontrolne tylko w przypadku zasobów znajdujących się bezpośrednio w projekcie. Inne jednostki, takie jak foldery, organizacje i konta rozliczeniowe Cloud, mają własne logi kontrolne.
Ogólne informacje znajdziesz w artykule Logi kontrolne Cloud. Więcej szczegółów znajdziesz w artykule Omówienie logów kontrolnych.
Logi kontrolne Cloud udostępniają te logi dla każdego projektu w chmurze, folderu i organizacji 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 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. Nie możesz wyłączyć logów kontrolnych aktywności administratora.
Cloud Search zapisuje logi kontrolne dostępu do danych tylko wtedy, gdy je jawnie włączysz. Te logi zawierają 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 zdarzeń systemowych ani odrzuconych zasad.
Skontrolowane operacje
W tabeli poniżej znajdziesz podsumowanie, które operacje interfejsu API odpowiadają poszczególnym typom logów kontrolnych w Cloud Search:
| Kategoria logów kontrolnych | Operacje Cloud Search |
|---|---|
| Aktywność administratora: zapis 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 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 logu kontrolnego
Wpisy logów kontrolnych zawierają te obiekty. Możesz je wyświetlić w Cloud Logging za pomocą eksploratora logów, interfejsu Cloud Logging API lub narzędzia wiersza poleceń gcloud.
Sam wpis logu jest
LogEntry
obiektem. Przydatne pola to:
logName: identyfikator zasobu i typ logu kontrolnego.resource: cel skontrolowanej operacji.timeStamp: czas skontrolowanej operacji.protoPayload: skontrolowane informacje.
Dane logów kontrolnych to
AuditLog
obiekt w polu protoPayload.
Opcjonalne informacje kontrolne dotyczące 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 logów kontrolnych.
Nazwa logu
Nazwy zasobów logów kontrolnych Cloud wskazują projekt lub inną jednostkę Google Cloud, która jest właścicielem logów, oraz typ logu kontrolnego. 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ługi cloudsearch.googleapis.com.
Typy zasobów
Logi kontrolne Cloud Search używają typu zasobu audited_resource w przypadku wszystkich logów. Więcej typów zasobów znajdziesz w artykule
Typy monitorowanych zasobów.
Włączanie logów kontrolnych
Domyślnie logi kontrolne są wyłączone w przypadku interfejsu Cloud Search API. Aby włączyć logi kontrolne w Cloud Search:
- (Opcjonalnie) Jeśli nie masz projektu w chmurze Google Cloud do przechowywania logów, przeczytaj artykuł 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 Skontrolowane operacje.
Użyj metody
updateCustomer()interfejsu REST API, aby zaktualizowaćauditLogSettingso te 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). Działania zapisu administratora są domyślnie włączone. 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:
Logi kontrolne metod zapytań wymagają kategorii Odczyt danych. Aby włączyć logowanie w przypadku metod
query.sources.list,query.suggestiquery.search:- Pobierz nazwę każdej aplikacji do wyszukiwania w formacie
searchapplications/<search_application_id>. - Wywołaj metodę
settings.searchapplications.update, ustawiając wartośćenableAuditLognatrue.
- Pobierz nazwę każdej aplikacji do wyszukiwania w formacie
Aby włączyć dziennik kontrolny wywołań z
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 logów kontrolnych Cloud Search:
protoPayload.serviceName="cloudsearch.googleapis.com"
Więcej informacji znajdziesz w artykule Omówienie eksploratora logów.
Uprawnienia do logów kontrolnych
Uprawnienia zarządzania tożsamościami i dostępem (IAM) określają, które logi możesz wyświetlać lub eksportować. Więcej informacji znajdziesz w artykule Omówienie ról.
Aby wyświetlać logi kontrolne aktywności administratora, musisz mieć jedną z tych ról IAM:
- Właściciel projektu, Edytujący lub Wyświetlający.
- Rola Wyświetlający logi w usłudze Logging.
- Niestandardowa rola IAM
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.
- Rola Wyświetlający logi prywatne w usłudze Logging.
- Niestandardowa rola IAM z uprawnieniem
logging.privateLogEntries.list.
Jeśli używasz dzienników kontrolnych z jednostki innej niż projekt, np. organizacji, zmień role projektu w chmurze na odpowiednie role organizacji.
Wyświetlanie logów
Aby wyświetlić dzienniki, musisz mieć identyfikator projektu w chmurze, folderu lub organizacji. Możesz określić inne
LogEntry
pola, np. resource.type. Zobacz
Tworzenie zapytań w eksploratorze logów.
Nazwy logó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
Masz kilka opcji wyświetlania wpisów logów kontrolnych.
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 wysyłaniu 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
- W przypadku metody
entries.listotwórz sekcję Wypróbuj ten interfejs API. - 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 wysyłaniu zapytań znajdziesz w artykule Język zapytań usługi Logging.
Przykładowy wpis logu kontrolnego i informacje o tym, jak znaleźć w nim najważniejsze informacje, znajdziesz w artykule Omówienie logów kontrolnych.
Eksportowanie logów kontrolnych
Logi kontrolne możesz eksportować tak samo jak inne logi. Zobacz Eksportowanie logów.
- Eksportuj do Cloud Storage, BigQuery lub Pub/Sub, aby dłużej przechowywać dane lub korzystać z wyszukiwania zaawansowanego.
- Używaj zagregowanych miejsc docelowych aby zarządzać logami w całej organizacji.
- Wyklucz logi dostępu do danych, aby zarządzać przydziałami logów. Zobacz Wykluczanie logów.
Ceny i okres przechowywania
Cloud Logging nie pobiera opłat za logi kontrolne aktywności administratora. Cloud Logging pobiera opłaty za logi kontrolne dostępu do danych. Zobacz Cennik pakietu operacyjnego Google Cloud.
Okresy przechowywania logów kontrolnych Cloud Search:
- Logi aktywności administratora: 400 dni.
- Logi dostępu do danych: 30 dni.
Aktualne ograniczenia
Ograniczenia logów kontrolnych Cloud Search:
- Rozmiar wpisu logu nie może przekraczać 512 KB. Jeśli wpis przekracza 512 KB, pole
responsejest usuwane. Jeśli nadal przekracza 512 KB, polerequestjest usuwane. Jeśli nadal przekracza 512 KB, cały wpis jest odrzucany. - 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 wywołań
search()w żądaniu rejestrowane są tylkoQuery,RequestOptionsiDataSourceRestriction. Odpowiedź kontroluje tylko adres URL i metadane. - Wywołania backendu dotyczące eksportu danych nie są kontrolowane.