Logowanie kontrolne

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:

  1. (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.

  2. Uzyskaj identyfikator projektu Google Cloud, w którym chcesz przechowywać dzienniki. Aby dowiedzieć się, jak uzyskać identyfikator projektu, przeczytaj artykuł o identyfikowaniu projektów.

  3. 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.

  4. Użyj metody updateCustomer() interfejsu API REST, aby zaktualizować ustawienia auditLogSettings, dodając do nich kategorie dzienników, które chcesz włączyć:

    1. 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
    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, które zostały włączone w kroku 3. Prawidłowe wartości to logAdminReadActions, logDataWriteActions i logDataReadActions. 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 w AuditLoggingSettings.

  5. 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.suggestquery.search), wykonaj te dodatkowe czynności:

    1. W przypadku każdej aplikacji wyszukiwania, dla której chcesz włączyć rejestrowanie kontroli, pobierz nazwę. Nazwa musi mieć format searchapplications/<search_application_id>.

    2. Użyj nazwy do wywołania settings.searchapplications.update, gdy parametr enableAuditLog ma wartość true.

  6. 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:

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

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:

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

    Otwórz stronę Eksplorator logów

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

  3. 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:

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

  2. 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"
    }
  3. 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()suggest(). 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ści Query, RequestOptionsDataSourceRestriction. W odpowiedzi są sprawdzane tylko adres URL i metadane (źródło i objectType) dotyczące każdego SearchResult.

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