Logowanie kontrolne

Na tej stronie opisujemy logi kontrolne tworzone przez Cloud Search w ramach logów kontrolnych Cloud.

Opis

Usługi Google Cloud tworzą logi kontrolne, aby pomóc Ci odpowiedzieć na pytania „kto, co, gdzie i kiedy” w odniesieniu do zasobów. Twoje projekty Cloud zawierają tylko logi kontrolne zasobów, które znajdują się bezpośrednio w projekcie. Inne elementy, takie jak foldery, organizacje i konta rozliczeniowe Cloud, zawierają logi kontrolne danej jednostki.

Ogólne informacje o logach kontrolnych Cloud znajdziesz w artykule na temat logów kontrolnych Cloud. Więcej informacji o logach kontrolnych Cloud znajdziesz w omówieniu logów kontrolnych.

Logi kontrolne Cloud zawierają następujące logi kontrolne dla każdego projektu, folderu i organizacji Cloud:

  • Logi kontrolne aktywności administratora zawierające wpisy odpowiadające metodom wykonującym operacje zapisu przez administratora. Metody odpowiadające działaniom administratora:operacje zapisu przez administratora zostaną omówione w nadchodzącej sekcji Operacje poddawane kontroli.
  • Logi kontrolne dostępu do danych zawierające wpisy odpowiadające metodom wykonywania operacji odczytu przez administratora, zapisu danych i odczytu danych. Metody dostępu do danych:odczyt administratora, dostęp do danych:zapis, dostęp do danych:operacje odczytu danych, zostaną omówione w nadchodzącej sekcji Operacje poddawane kontroli.
  • Logi kontrolne zdarzeń systemowych
  • Logi kontrolne odrzucone przez zasady

Cloud Search zapisuje logi kontrolne aktywności administratora, które rejestrują operacje modyfikujące konfigurację lub metadane zasobu. Logów kontrolnych aktywności administratora nie można wyłączyć.

Cloud Search zapisuje logi kontrolne dostępu do danych tylko wtedy, gdy jest wyraźnie włączona. Logi kontrolne dostępu do danych zawierają wywołania interfejsu API odczytujące konfigurację lub metadane zasobów oraz wywołania interfejsu API oparte na użytkownikach, 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 odmowy zgodności z zasadami.

Operacje podlegające kontroli

Poniżej podsumowaliśmy, które operacje interfejsu API odpowiadają poszczególnym typom logów kontrolnych w Cloud Search:

Kategoria dzienników kontrolnych Operacje w Cloud Search
Aktywność administratora: zapis danych przez administratora segmentation.datasources.updateSchema
indexing.datasources.deleteSchema
settings.datasources.create
settings.datasources.delete
settings.datasources.update
settings.searchapplications.create
settings.searchapplications.delete
settings.searchapplications.reset
settings.searchIdentityapplications.update
settings.updateCustomer
cloudsearch.updateSourceService.create
sourcesearch.IdentitySourceService.create.
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 zindeksowanie.datasources.items.get
indexing.datasources.items.list
operations.get
operations.list
debug.datasources.items.searchByViewUrl
stats.getIndex
stats.getQuery
stats.getsessionsource.datasources.getUser
stats.getSession











Format dziennika kontrolnego

Wpisy logu kontrolnego, które można wyświetlać w Cloud Logging za pomocą eksploratora logów, interfejsu Cloud Logging API lub narzędzia wiersza poleceń gcloud: zawierają te obiekty:

Sam wpis logu, który jest obiektem typu LogEntry. Przydatne pola to między innymi:

  • logName zawiera identyfikator zasobu i typ logu kontrolnego.
  • Pole resource zawiera obiekt docelowy kontrolowanej operacji.
  • Pole timeStamp zawiera czas kontroli.
  • protoPayload zawiera informacje objęte audytem.
  • Dane logowania kontrolnego, które są obiektem AuditLog, przechowywanym w polu protoPayload wpisu logu.

Opcjonalne informacje o kontroli usługi, które są obiektem tej usługi. W przypadku wcześniejszych integracji ten obiekt jest przechowywany w polu serviceData obiektu AuditLog. Późniejsze integracje korzystają z pola metadata.

Informacje o innych polach w tych obiektach i o tym, jak je interpretować, znajdziesz w artykule Omówienie logów kontrolnych.

Nazwa logu

Nazwy zasobów logów kontrolnych Cloud wskazują, do którego projektu Cloud lub innej encji Google Cloud należy projekt, a także czy dziennik zawiera dane dotyczące aktywności administratora, dostępu do danych, odmowy zgodności z zasadami lub zdarzeń systemowych. Poniżej znajdziesz na przykład nazwy logów kontrolnych aktywności administratora na poziomie projektu i logów kontrolnych dostępu do danych organizacji. Zmienne te identyfikują identyfikatory projektów 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

Wszystkie logi kontrolne Cloud Search używają typu zasobu audited_resource.

Listę innych typów zasobów znajdziesz w artykule Monitorowane typy zasobów.

Włącz logowanie kontrolne

Domyślnie logowanie kontrolne w Cloud Search API jest wyłączone. Aby włączyć logowanie kontrolne w Google Cloud Search:

  1. (Opcjonalnie) Jeśli nie masz utworzonego projektu Google Cloud Platform do przechowywania logów, zapoznaj się z artykułem Konfigurowanie dostępu do interfejsu Google Cloud Search API.

  2. Uzyskaj identyfikator projektu Google Cloud, w którym chcesz przechowywać logi. Informacje o tym, jak uzyskać identyfikator projektu, znajdziesz w artykule Identyfikowanie projektów.

  3. Aby włączyć logowanie kontrolne dla określonego interfejsu API, musisz wybrać jego kategorię logów. Informacje o interfejsach API i odpowiadających im kategoriach znajdziesz w sekcji Operacje poddawane kontroli w poprzedniej części tego dokumentu.

  4. Użyj metody updateCustomer() interfejsu API REST, aby zaktualizować audytLogSettings przy użyciu kategorii logów, które umożliwiają:

    1. Uzyskaj token dostępu OAuth 2.0 z serwera autoryzacji Google. Informacje o uzyskiwaniu tokena znajdziesz w kroku 2 w artykule Korzystanie z protokołu OAuth 2.0 do uzyskiwania dostępu do interfejsów API Google. Aby uzyskać token dostępu, użyj jednego z tych zakresów 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
    2. 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 wybrane przez Ciebie w kroku 3. Prawidłowe wartości to logAdminReadActions, logDataWriteActions i logDataReadActions. Działania zapisu przez administratora są domyślnie włączone i nie można ich wyłączyć. Jeśli chcesz korzystać z logów kontrolnych metod zapytań, musisz włączyć kategorię Odczyt danych.

    Po zaktualizowaniu AuditLoggingSettings kolejne żądania wysyłane do Cloud Search API generują log kontrolny w identyfikatorze projektu określonym w AuditLoggingSettings.

  5. Logowanie kontrolne w przypadku metod zapytań wymaga włączenia kategorii odczytu danych (wykonane w kroku 4). Aby włączyć logowanie kontrolne w przypadku metod zapytań (query.sources.list, query.suggest i query.search), wykonaj te dodatkowe czynności:

    1. Pobierz nazwę każdej wyszukiwarki, dla której chcesz włączyć logowanie kontrolne. Nazwa musi mieć format searchapplications/<search_application_id>.

    2. Użyj nazwy, aby wywołać funkcję settings.searchapplications.update z wartością enableAuditLog ustawioną na true.

  6. Aby włączyć logowanie kontrolne połączeń z instancji cloudsearch.google.com, włącz kategorię Odczyt danych (krok 4). Dodatkowo wykonaj krok 5b z name o wartości searchapplications/default .

Po włączeniu logi można wyświetlać w sekcji eksploratora logów w konsoli Google Cloud. Aby wyświetlić tylko logi kontrolne Cloud Search, użyj tego filtra:

protoPayload.serviceName="cloudsearch.googleapis.com"

Więcej informacji o wyświetlaniu logów znajdziesz w artykule Omówienie eksploratora logów.

Uprawnienia logu kontrolnego

Uprawnienia i role Identity and Access Management określają, które logi kontrolne możesz wyświetlać lub eksportować. Logi znajdują się w projektach Cloud i w niektórych innych jednostkach, takich jak organizacje, foldery i konta rozliczeniowe Cloud. Więcej informacji znajdziesz w artykule Omówienie ról.

Aby wyświetlać logi kontrolne aktywności administratora, musisz mieć w projekcie, który zawiera logi kontrolne, jedną z tych ról uprawnień:

Aby wyświetlać logi kontrolne dostępu do danych, musisz mieć w projekcie, który zawiera logi kontrolne, jedną z tych ról:

Jeśli używasz logów kontrolnych z jednostki niebędącej projektem, takiej jak organizacja, zmień role w projekcie Cloud na odpowiednie role w organizacji.

Wyświetlanie logów

Aby znaleźć i wyświetlić logi kontrolne, musisz znać identyfikator projektu, folderu lub organizacji Cloud, w przypadku których chcesz wyświetlić informacje dotyczące logów kontrolnych. Możesz dokładniej określić inne zindeksowane pola LogEntry, np. resource.type. Szczegółowe informacje znajdziesz w artykule Tworzenie zapytań w eksploratorze logów.

Poniżej znajdziesz nazwy logów kontrolnych, które zawierają zmienne identyfikatorów projektu, folderu lub organizacji 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

Istnieje kilka opcji wyświetlania wpisów dziennika kontrolnego.

Konsola

Wpisy logu kontrolnego dotyczące projektu Cloud możesz pobrać za pomocą eksploratora logów w konsoli Cloud:

  1. W konsoli Cloud otwórz stronę Logowanie > Eksplorator logów.

    Otwórz stronę eksploratora logów

  2. Na stronie Eksplorator logów wybierz istniejący projekt Cloud.

  3. W panelu Kreator zapytań wykonaj te czynności:

    • W sekcji Zasób wybierz typ zasobu Google Cloud, którego logi kontrolne chcesz wyświetlić.

    • W sekcji Nazwa dziennika wybierz typ dziennika kontrolnego, który chcesz wyświetlić:

      • W sekcji Logi kontrolne aktywności administratora wybierz Aktywność.
      • W przypadku logów kontrolnych dostępu do danych wybierz data_access.
      • W dziennikach kontrolnych zdarzeń systemowych wybierz system_event.
      • W przypadku dzienników kontrolnych odrzuconych zasad wybierz zasada.

    Jeśli nie widzisz tych opcji, oznacza to, że w projekcie Cloud nie ma żadnych logów kontrolnych tego typu.

    Więcej informacji o zapytaniach za pomocą nowego eksploratora logów znajdziesz w artykule Tworzenie zapytań w eksploratorze logów.

gcloud

gcloud udostępnia interfejs wiersza poleceń interfejsu Logging API. Podaj prawidłową nazwę PROJECT_ID, FOLDER_ID lub ORGANIZATION_ID w każdej nazwie logu.

Aby odczytać wpisy logu kontrolnego 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 w dzienniku kontrolnym na poziomie organizacji, uruchom to polecenie:

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \
    --organization=ORGANIZATION_ID

Więcej informacji o korzystaniu z narzędzia gcloud: gcloud logging read.

API

Podczas tworzenia zapytań zastąp zmienne prawidłowymi wartościami oraz zastąp odpowiednią nazwę logu kontrolnego na poziomie projektu, folderu lub organizacji bądź odpowiednie identyfikatory podane w nazwach logów kontrolnych. Jeśli na przykład zapytanie zawiera element PROJECT_ID, podany przez Ciebie identyfikator projektu musi się odnosić do obecnie wybranego projektu Cloud.

Aby przejrzeć wpisy logu kontrolnego za pomocą interfejsu Logging API, wykonaj te czynności:

  1. Przejdź do sekcji Wypróbuj ten interfejs API w dokumentacji metody entries.list.

  2. W sekcji Treść żądania formularza Wypróbuj ten interfejs API umieść ten kod. Kliknięcie tego wstępnie wypełnionego formularza automatycznie wypełnia treść żądania, ale musisz podać prawidłową wartość PROJECT_ID w każdej nazwie logu.

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. Kliknij Execute (Wykonaj).

Więcej informacji o wykonywaniu zapytań znajdziesz w artykule Język zapytań dotyczących logów.

Przykładowy wpis w logu kontrolnym i informacje o tym, jak znaleźć w nim najważniejsze informacje, znajdziesz w artykule Omówienie logów kontrolnych.

Eksportowanie dzienników kontrolnych

Dzienniki kontrolne możesz eksportować w taki sam sposób, w jaki eksportujesz inne rodzaje dzienników. Szczegółowe informacje o eksportowaniu logów znajdziesz w artykule Eksportowanie logów. Oto kilka zastosowań eksportu dzienników kontrolnych:

  • Aby przechowywać logi kontrolne przez dłuższy czas lub korzystać z bardziej zaawansowanych możliwości wyszukiwania, możesz wyeksportować kopie logów kontrolnych do Cloud Storage, BigQuery lub Pub/Sub. Korzystając z Pub/Sub, możesz eksportować dane do innych aplikacji, repozytoriów lub firm zewnętrznych.

  • Aby zarządzać logami kontrolnymi w całej organizacji, możesz utworzyć zbiorcze ujścia, które umożliwią eksportowanie logów z dowolnych lub wszystkich projektów Cloud w organizacji.

  • Jeśli włączone logi kontrolne dostępu do danych kierują Twoje projekty Cloud do przydziałów logów, możesz je eksportować i wykluczać z usługi Logging. Szczegółowe informacje znajdziesz w artykule o wykluczaniu logó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 aktywności administratora. Cloud Logging nalicza opłaty za logi kontrolne dostępu do danych, o które bezpośrednio poprosisz.

Więcej informacji o cenach logów kontrolnych znajdziesz w cenniku pakietu operacyjnego Google Cloud.

Czas przechowywania powiązany z logami kontrolnymi Cloud Search:

  • Dzienniki aktywności administratora (lub zapisy wykonywane przez administratora) – te dzienniki są przechowywane przez 400 dni.
  • Logi dostępu do danych (odczyt przez administratora, zapis danych i odczyt danych) – są przechowywane przez 30 dni.

Więcej informacji o czasie przechowywania logów znajdziesz w artykule Okresy przechowywania logów.

Bieżące ograniczenia

Logowanie kontrolne w Cloud Search ma następujące ograniczenia:

  • Rozmiar wpisu logu musi być mniejszy niż 512 KB. Jeśli rozmiar przekroczy 512 KB, odpowiedź zostanie usunięta z wpisu logu. Jeśli nie zmniejszy to rozmiaru do 512 KB lub mniej, żądanie zostanie odrzucone. Jeśli rozmiar nadal przekracza 512 KB, wpis logu jest usuwany.

  • Treść odpowiedzi nie jest logowana w przypadku metod list(), get() i suggest(). Dostępne są jednak stany odpowiedzi.

  • Rejestrowane są tylko wywołania interfejsu Query API z cloudsearch.google.com (jeśli ta opcja jest włączona) i z aplikacji do wyszukiwania klientów.

  • W przypadku wywołań funkcji search() w żądaniu rejestrowane są tylko wywołania Query, RequestOptions i DataSourceRestriction. W odpowiedzi sprawdzane są tylko adres URL i metadane (źródło i objectType) każdego elementu SearchResult.

  • Wywołania wysyłane do backendu Cloud Search i odpowiadające eksportowi danych nie są kontrolowane.