Na tej stronie opisano logi kontrolne tworzone przez Cloud Search w ramach logów kontrolnych Cloud.
Omówienie
Usługi Google Cloud tworzą 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ą tylko logi kontrolne dotyczące zasobów znajdujących się bezpośrednio w projekcie. Inne elementy, takie jak foldery, organizacje i konta Cloud Billing, zawierają dzienniki kontrolne dotyczące danego elementu.
Ogólne informacje o logach kontrolnych Cloud znajdziesz w artykule Logi kontrolne Cloud. Aby dowiedzieć się więcej o logach kontrolnych Cloud, przeczytaj artykuł Omówienie dzienników kontrolnych.
Logi kontrolne Cloud zawierają te logi kontrolne dla każdego projektu, folderu i organizacji w Google Cloud:
- Logi kontrolne aktywności administratora zawierające wpisy odpowiadające metodom wykonującym operacje zapisu administratora. Metody odpowiadające działaniom Aktywność administratora:operacje zapisu administratora zostaną omówione w nadchodzącej sekcji Sprawdzone operacje.
- Logi kontrolne dostępu do danych zawierające wpisy odpowiadające metodom wykonującym operacje odczytu przez administratora, zapisu danych i odczytu danych. Metody odpowiadające operacjom dostępu do danych: odczyt przez administratora, zapis danych i odczyt danych są opisane w sekcji Operacje objęte kontrolą.
- Logi kontrolne zdarzeń systemowych
- Logi kontrolne odrzuconej zasady
wyszukiwarka Google Cloud zapisuje logi kontrolne aktywności administratora, które rejestrują operacje modyfikujące konfigurację lub metadane zasobu. Logów kontrolnych działań administracyjnych nie można wyłączyć.
Tylko jeśli jest to wyraźnie włączone, Cloud Search zapisuje logi kontrolne dostępu do danych. Logi kontrolne dostępu do danych 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.
Cloud Search nie zapisuje logów kontrolnych odrzuconych zasad.
Operacje objęte kontrolą
Poniżej znajdziesz podsumowanie, które operacje interfejsu API odpowiadają 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, które można wyświetlać w Logowaniu w chmurze za pomocą Eksploratora logów, interfejsu Cloud Logging API lub narzędzia wiersza poleceń gcloud, obejmują te obiekty:
sam wpis w logu, który jest obiektem typu LogEntry
;
Przydatne pola to:
- Wartość
logName
zawiera identyfikator zasobu i typ dziennika kontrolnego. - Atrybut
resource
zawiera element docelowy kontrolowanej operacji. - Wartość
timeStamp
zawiera czas operacji objętej kontrolą. - Plik
protoPayload
zawiera zweryfikowane informacje. - Dane logowania kontrolnego, które są obiektem AuditLog przechowywanym w polu protoPayload wpisu w dzienniku.
Opcjonalne informacje kontrolne dotyczące usługi, które są obiektem związanym z daną usługą.
W przypadku wcześniejszych integracji ten obiekt jest przechowywany w polu serviceData
obiektu AuditLog
; późniejsze integracje używają pola metadata
.
Informacje o innych polach tych obiektów oraz o tym, jak je interpretować, znajdziesz w artykule Omówienie dzienników kontrolnych.
Nazwa logu
Nazwy zasobów logów kontrolnych Cloud wskazują projekt Cloud lub inny element Google Cloud, któremu przypisany jest log kontrolny, oraz informują, czy log zawiera dane logowania kontrolnego aktywności administratora, dostępu do danych, odmowy wykonania zasad lub zdarzeń systemowych. Na przykład poniższy obraz przedstawia nazwy logów kontrolnych aktywności administratora na poziomie projektu i logów kontrolnych dostępu do danych organizacji. Zmienne oznaczają identyfikatory projektu i organizacji.
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
Dzienniki kontrolne Cloud Search używają typu zasobu audited_resource
we wszystkich dziennikach kontrolnych.
Listę innych typów zasobów znajdziesz w artykule Typy monitorowanych zasobów.
Włączanie logowania w celu kontroli
Domyślnie rejestrowanie kontroli jest wyłączone w przypadku interfejsu Cloud Search API. Aby włączyć rejestrowanie logów kontrolnych w Google Cloud Search:
(opcjonalnie) Jeśli nie masz jeszcze utworzonego projektu Google Cloud Platform, w którym będą przechowywane logi, zapoznaj się z artykułem Konfigurowanie dostępu do interfejsu Google Cloud Search API.
Uzyskaj identyfikator projektu Google Cloud, w którym chcesz przechowywać dzienniki. Aby dowiedzieć się, jak uzyskać identyfikator projektu, przeczytaj artykuł o identyfikowaniu projektów.
Aby włączyć rejestrowanie kontroli dla konkretnego interfejsu API, musisz określić kategorię dziennika, którą chcesz włączyć. Informacje o interfejsach API i ich odpowiednich kategoriach znajdziesz w sekcji Sprawdzone operacje we wcześniejszej części tego dokumentu.
Użyj metody
updateCustomer()
interfejsu API REST, aby zaktualizować ustawienia auditLogSettings, dodając do nich kategorie dzienników, które chcesz włączyć:Uzyskaj token dostępu OAuth 2.0 z serwera autoryzacji Google. Informacje o uzyskiwaniu tokena znajdziesz w kroku 2 artykułu Używanie protokołu OAuth 2.0 na potrzeby dostępu do interfejsów API Google. Podczas uzyskiwania tokena dostępu użyj jednego z tych zakresów uprawnień OAuth:
https://www.googleapis.com/auth/cloud_search.settings.indexing
https://www.googleapis.com/auth/cloud_search.settings
https://www.googleapis.com/auth/cloud_search
Uruchom to polecenie curl.
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" } }'
Gdzie:
YOUR_ACCESS_TOKEN
to token dostępu OAuth 2.0 uzyskany w kroku 4a.PROJECT_ID
to identyfikator projektu uzyskany w kroku 2.CATEGORY1
,CATEGORY2
,…
to kategorie, które zostały włączone w kroku 3. Prawidłowe wartości tologAdminReadActions
,logDataWriteActions
ilogDataReadActions
. Działania zapisu wykonywane przez administratora są domyślnie włączone i nie można ich wyłączyć. Jeśli chcesz prowadzić logowanie kontrolne metod zapytań, musisz włączyć kategorię odczytu danych.
Po zaktualizowaniu
AuditLoggingSettings
kolejne żądania do interfejsu Cloud Search API będą generować dziennik kontroli w identyfikatorze projektu określonym wAuditLoggingSettings
.Logowanie kontrolne w przypadku metod zapytań wymaga włączenia kategorii Odczyt danych (zrobione w kroku 4). Aby włączyć rejestrowanie kontroli w przypadku metod zapytań (
query.sources.list
,query.suggest
iquery.search
), wykonaj te dodatkowe czynności:W przypadku każdej aplikacji wyszukiwania, dla której chcesz włączyć rejestrowanie kontroli, pobierz nazwę. Nazwa musi mieć format
searchapplications/<search_application_id>
.Użyj nazwy do wywołania
settings.searchapplications.update
, gdy parametrenableAuditLog
ma wartośćtrue
.
Aby włączyć rejestrowanie kontroli w przypadku wywołań z
cloudsearch.google.com
, upewnij się, że kategoria Odczyt danych jest włączona (krok 4). Dodatkowo wykonaj krok 5b, podając wartośćname
równąsearchapplications/default
.
Po włączeniu logi można wyświetlać w sekcji Eksplorator logów w konsoli Google Cloud. Aby wyświetlić tylko dzienniki kontrolne Cloud Search, użyj tego filtra:
protoPayload.serviceName="cloudsearch.googleapis.com"
Informacje o wyświetlaniu logów znajdziesz w artykule Omówienie eksploratora logów.
Uprawnienia do logów kontrolnych
Uprawnienia i role związane z usługą Identity and Access Management określają, które dzienniki kontrolne możesz wyświetlać lub eksportować. Logi znajdują się w projektach Cloud i niektórych innych elementach, takich jak organizacje, foldery i konta rozliczeniowe Cloud. Więcej informacji znajdziesz w artykule Informacje o rolach.
Aby wyświetlać logi kontrolne aktywności administratora, musisz mieć w projekcie, który zawiera Twoje logi kontrolne, jedną z tych ról uprawnień IAM:
- Właściciel projektu, Edytujący projekt lub Wyświetlający projekt.
- Rola 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 projekcie zawierającym Twoje logi kontrolne:
- Właściciel projektu
- Logowanie – wyświetlający logi prywatne
- Niestandardowa rola uprawnień z uprawnieniami
logging.privateLogEntries.list
Jeśli używasz dzienników kontrolnych z podmiotu spoza projektu, np. organizacji, zmień role projektu Cloud na odpowiednie role organizacji.
Wyświetl logi
Aby znaleźć i wyświetlić dzienniki audytu, musisz znać identyfikator projektu, folderu lub organizacji Cloud, dla których chcesz wyświetlić informacje z dziennika audytu. Możesz też określić inne indeksowane pola LogEntry
, takie jak resource.type. Więcej informacji znajdziesz w artykule Tworzenie zapytań w eksploratorze logów.
Poniżej podajemy nazwy dzienników kontrolnych, które zawierają zmienne dla identyfikatorów projektu, folderu lub organizacji w Google Cloud:
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
Możesz wyświetlać wpisy w logu kontroli na kilka sposobów.
Konsola
Aby pobrać wpisy dziennika kontrolnego dotyczące Twojego projektu Cloud, możesz użyć Eksploratora logów w Cloud Console:
W konsoli Cloud otwórz stronę Logowanie > Eksplorator logów.
Na stronie Eksplorator logów wybierz istniejący projekt w chmurze.
W panelu Konstruktor zapytań wykonaj te czynności:
W sekcji Zasób wybierz typ zasobu Google Cloud, którego logi kontrolne chcesz wyświetlić.
W polu Nazwa logu wybierz typ dziennika kontrolnego, który chcesz wyświetlić:
- W przypadku logów kontrolnych aktywności administratora wybierz Aktywność.
- W przypadku logów kontrolnych dostępu do danych wybierz data_access.
- W przypadku logów kontrolnych zdarzeń systemowych wybierz system_event.
- W przypadku dzienników kontrolnych Odrzucona zasada wybierz zasada.
Jeśli nie widzisz tych opcji, oznacza to, że w projekcie w chmurze nie ma żadnych logów audytu tego typu.
Więcej informacji o zapytaniach w nowym eksploratorze logów znajdziesz w artykule Tworzenie zapytań w eksploratorze logów.
gcloud
gcloud udostępnia interfejs wiersza poleceń do interfejsu Logging API. W każdej nazwie pliku dziennika podaj prawidłową wartość PROJECT_ID
, FOLDER_ID
lub ORGANIZATION_ID
.
Aby odczytać wpisy w logach kontrolnych na poziomie projektu Google Cloud, uruchom to polecenie:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \ --project=PROJECT_ID
Aby odczytać wpisy dziennika kontrolnego na poziomie folderu, uruchom to polecenie:
gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \ --folder=FOLDER_ID
Aby odczytać wpisy dziennika kontrolnego na poziomie organizacji, uruchom to polecenie:
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \ --organization=ORGANIZATION_ID
Więcej informacji o używaniu narzędzia gcloud znajdziesz w artykule gcloud logging read
.
Interfejs API
Podczas tworzenia zapytań zastąp zmienne prawidłowymi wartościami, a także odpowiednią nazwę lub identyfikator dziennika inspekcji na poziomie projektu, folderu lub organizacji, zgodnie z wymaganiami podanymi w nazwach dzienników inspekcji. Jeśli na przykład zapytanie zawiera parametr PROJECT_ID, podany identyfikator projektu musi odnosić się do aktualnie wybranego projektu Cloud.
Aby za pomocą interfejsu Logging API wyświetlić wpisy dziennika kontrolnego, wykonaj te czynności:
Przejdź do sekcji Wypróbuj ten interfejs API w dokumentacji metody
entries.list
.Wpisz te informacje w polu Treść żądania w formularzu Wypróbuj to API. Po kliknięciu tego wstępnie wypełnionego formularza treść żądania zostanie automatycznie wypełniona, ale w każdym z nazwów logów musisz podać prawidłową wartość
PROJECT_ID
.{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }
Kliknij Wykonaj.
Więcej informacji o wykonywaniu 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 informacje, znajdziesz w artykule Omówienie dzienników kontrolnych.
Eksportowanie dzienników kontrolnych
Dzienniki kontrolne możesz eksportować w taki sam sposób jak inne rodzaje dzienników. Szczegółowe informacje o eksportowaniu dzienników znajdziesz w artykule Eksportowanie dzienników. Oto kilka zastosowań eksportowania dzienników kontrolnych:
Aby przechowywać logi kontrolne przez dłuższy czas lub korzystać z bardziej zaawansowanych funkcji wyszukiwania, możesz eksportować kopie logów kontrolnych do Cloud Storage, BigQuery lub Pub/Sub. Za pomocą Pub/Sub możesz eksportować logi do innych aplikacji, innych repozytoriów i do firm zewnętrznych.
Aby zarządzać logami kontrolnymi w całej organizacji, możesz utworzyć zbiorcze miejsca docelowe, które mogą eksportować logi z dowolnego lub wszystkich projektów Cloud w organizacji.
Jeśli włączone logi kontrolne dostępu do danych powodują, że projekty Cloud przekraczają przydział logów, możesz wyeksportować logi kontrolne dostępu do danych i wykluczyć je z rejestrowania. Szczegółowe informacje znajdziesz w sekcji Wykluczanie dzienników.
Ceny i utrzymanie
Cloud Logging nie nalicza opłat za logi kontrolne, których nie można wyłączyć, w tym za wszystkie logi kontrolne działań administracyjnych. Cloud Logging obciąża Cię opłatami za logi kontrolne dostępu do danych, które zostały utworzone na Twoją prośbę.
Więcej informacji o cenach dzienników kontrolnych znajdziesz w cenniku pakietu operacyjnego Google Cloud.
Czas przechowywania powiązany z dziennikami kontrolnymi Cloud Search:
- Logi aktywności administratora (czyli operacje zapisu wykonywane przez administratora) – są one przechowywane przez 400 dni.
- Logi dostępu do danych (czytanie przez administratora, zapis danych i odczyt danych) – są one przechowywane przez 30 dni.
Więcej informacji o czasie przechowywania danych znajdziesz w artykule Okres przechowywania dzienników.
Obecne ograniczenia
Logowanie kontroli Cloud Search ma obecnie te ograniczenia:
Rozmiar wpisu w logu musi być mniejszy niż 512 KB. Jeśli rozmiar przekroczy 512 KB, odpowiedź zostanie usunięta z rekordu dziennika. Jeśli nie uda się zmniejszyć rozmiaru pliku do 512 KB lub mniej, żądanie zostanie odrzucone. Jeśli rozmiar nadal przekracza 512 KB, wpis w dzienniku jest odrzucany.
Treści odpowiedzi nie są rejestrowane w przypadku metod
list()
,get()
isuggest()
. Dostępne są jednak stany odpowiedzi.Rejestrowane są tylko wywołania interfejsu Query API z usług
cloudsearch.google.com
(jeśli są włączone) i aplikacji wyszukiwania klienta.W przypadku wywołań
search()
w żądaniu są rejestrowane tylko wartościQuery
,RequestOptions
iDataSourceRestriction
. W odpowiedzi są sprawdzane tylko adres URL i metadane (źródło iobjectType
) dotyczące każdegoSearchResult
.Wywołania wysyłane do backendu Cloud Search i odpowiadające eksportowi danych nie są sprawdzane.