Na tej stronie opisano logi kontrolne tworzone przez usługę Firebase w ramach logów kontrolnych Cloud.
Omówienie
Usługi Firebase tworzą kopie logów kontrolnych, aby pomóc Ci odpowiedzieć na pytania „kto, co, gdzie i kiedy?”. Są to logi audytu Clouda udostępniane w ramach projektu Google Cloud połączonego z Twoim projektem Firebase.
Twoje projekty Firebase zawierają tylko logi kontrolne zasobów znajdujących się bezpośrednio w projekcie.
Ogólne informacje o logach kontrolnych Cloud znajdziesz w artykule Omówienie logów kontrolnych Cloud. Więcej informacji o formacie dziennika kontrolnego znajdziesz w artykule Omówienie dzienników kontrolnych.
Dostępne dzienniki kontrolne
W usłudze Firebase Data Connect dostępne są te typy dzienników kontrolnych:
-
Logi kontrolne działania administratora
Obejmuje operacje „zapisu przez administratora”, które zapisują metadane lub informacje o konfiguracji.
Logów kontrolnych działań administracyjnych nie można wyłączyć.
-
Logi kontrolne dostępu do danych
Obejmuje operacje „odczyt przez administratora”, które wiążą się z odczytem metadanych lub informacji o konfiguracji. Obejmuje też operacje „odczyt danych” i „zapis danych”, które odczytują lub zapisują dane przekazywane przez użytkowników.
Aby otrzymywać logi kontrolne dostępu do danych, musisz je wyraźnie włączyć.
Pełniejsze opisy typów dzienników kontrolnych znajdziesz w artykule Typy dzienników kontrolnych.
Operacje objęte kontrolą
Poniżej znajdziesz podsumowanie, które operacje interfejsu API odpowiadają poszczególnym typom dzienników kontrolnych w Firebase Data Connect:
Typ uprawnień | Metody |
---|---|
ADMIN_READ |
google.firebase.dataconnect.v1alpha.FirebaseDataConnect.GetConnector google.firebase.dataconnect.v1alpha.FirebaseDataConnect.GetSchema google.firebase.dataconnect.v1alpha.FirebaseDataConnect.GetService google.firebase.dataconnect.v1alpha.FirebaseDataConnect.ListConnectors google.firebase.dataconnect.v1alpha.FirebaseDataConnect.ListSchemas google.firebase.dataconnect.v1alpha.FirebaseDataConnect.ListServices |
ADMIN_WRITE |
google.firebase.dataconnect.v1alpha.FirebaseDataConnect.CreateConnector google.firebase.dataconnect.v1alpha.FirebaseDataConnect.CreateSchema google.firebase.dataconnect.v1alpha.FirebaseDataConnect.CreateService google.firebase.dataconnect.v1alpha.FirebaseDataConnect.DeleteConnector google.firebase.dataconnect.v1alpha.FirebaseDataConnect.DeleteSchema google.firebase.dataconnect.v1alpha.FirebaseDataConnect.DeleteService google.firebase.dataconnect.v1alpha.FirebaseDataConnect.UpdateConnector google.firebase.dataconnect.v1alpha.FirebaseDataConnect.UpdateSchema google.firebase.dataconnect.v1alpha.FirebaseDataConnect.UpdateService |
Format dziennika kontrolnego
Wpisy w dzienniku kontrolnym 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.
- Wartość
Dane logowania kontrolnego, które są obiektem
AuditLog
przechowywanym w poluprotoPayload
wpisu w logu.Opcjonalne informacje kontrolne dotyczące usługi, które są obiektem usługi. W przypadku starszych integracji ten obiekt jest przechowywany w polu
serviceData
obiektuAuditLog
; nowsze integracje używają polametadata
.
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 Firebase lub inny podmiotGoogle Cloud będący właścicielem logów kontrolnych oraz informują, czy log zawiera dane z logowania kontrolnego aktywności administratora, dostępu do danych, odmowy dostępu na podstawie zasad lub zdarzeń systemowych. Poniżej podano przykłady nazw logów kontrolnych aktywności administratora na poziomie projektu i logów kontrolnych dostępu do danych organizacji. Zmienne oznaczają identyfikatory projektu i organizacji Firebase.
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
Nazwa usługi
Dzienniki kontrolne Firebase Data Connect używają nazwy usługi.firebasedataconnect.googleapis.com
Pełną listę nazw wszystkich usług interfejsu Cloud Logging API wraz z odpowiadającymi im typami monitorowanych zasobów znajdziesz w artykule Mapowanie usług na zasoby.
Typy zasobów
Logi kontrolne Firebase Data Connect używają typu zasobu audited_resource
dla wszystkich logów kontrolnych.
Listę wszystkich typów monitorowanych zasobów Cloud Logging oraz informacje opisowe znajdziesz w artykule Typy monitorowanych zasobów.
Włączanie logowania w celu kontroli
Logi kontrolne aktywności administratora są zawsze włączone i nie można ich wyłączyć.
Logi kontrolne dostępu do danych są domyślnie wyłączone i nie są zapisywane, chyba że zostaną jawnie włączone (wyjątkiem są logi kontrolne dostępu do danych w BigQuery, których nie można wyłączyć).
Instrukcje dotyczące włączania niektórych lub wszystkich logów kontrolnych dostępu do danych znajdziesz w artykule Konfigurowanie logów dostępu do danych.
Uprawnienia i role
Uprawnienia i role Cloud IAM określają Twoją zdolność do uzyskiwania dostępu do danych logów kontrolnych w zasobach Google Cloud.
Wybierając uprawnienia i role związane z rejestrowaniem, które będą odpowiednie w Twoim przypadku użycia, weź pod uwagę te kwestie:
Rola wyświetlającego logi (
roles/logging.viewer
) daje dostęp tylko do odczytu do logów kontrolnych Aktywność administratora, Odmowa zasad i Zdarzenie systemowe. Jeśli masz tylko tę rolę, nie możesz wyświetlać logów kontrolnych dostępu do danych znajdujących się w puli_Default
.Rola Przeglądający dzienniki prywatne
(roles/logging.privateLogViewer
obejmuje uprawnienia zawarte w poziomieroles/logging.viewer
oraz możliwość odczytu dzienników kontrolnych dostępu do danych w zasośniku_Default
.Pamiętaj, że jeśli te prywatne logi są przechowywane w definiowanych przez użytkownika zbiorach, każdy użytkownik, który ma uprawnienia do odczytu logów w tych zbiorach, może odczytać te prywatne logi. Więcej informacji o zasobach logów znajdziesz w artykule Omówienie routingu i miejsca na dane.
Więcej informacji o uprawnieniach i rolach Cloud IAM, które mają zastosowanie do danych logów kontrolnych, znajdziesz w artykule Kontrola dostępu.
Wyświetl logi
Aby znaleźć i wyświetlić dzienniki kontroli, musisz znać identyfikator projektu Firebase, folderu lub organizacji, dla których chcesz wyświetlić informacje z dzienników kontroli. Możesz też określić inne indeksowane pola LogEntry
, np. resource.type
. Więcej informacji znajdziesz w artykule Szybkie wyszukiwanie wpisów w dzienniku.
Poniżej znajdziesz nazwy logów kontrolnych, które zawierają zmienne dla identyfikatorów projektu, folderu lub organizacji Firebase:
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
Logi audytu w Cloud Logging możesz wyświetlać za pomocą konsoli Google Cloud, narzędzia wiersza poleceń gcloud
lub interfejsu Logging API.
Konsola
Aby pobrać wpisy dziennika kontrolnego dotyczące Twojego projektu Firebase, folderu lub organizacji w Firebase, możesz użyć Eksploratora logów w konsoli Google Cloud:
W konsoli Google Cloud otwórz stronę Logowanie > Eksplorator logów.
Na stronie Eksplorator dzienników wybierz istniejący projekt, folder lub organizację Firebase.
W panelu Konstruktor zapytań wykonaj te czynności:
W sekcji Typ zasobu wybierz zasób Google Cloud, którego dzienniki inspekcji 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, folderze lub organizacji Firebase nie ma żadnych logów inspekcji tego typu.
Więcej informacji o wykonywaniu zapytań za pomocą eksploratora logów znajdziesz w artykule Tworzenie zapytań dotyczących logów.
gcloud
Narzędzie wiersza poleceń gcloud
zapewnia interfejs wiersza poleceń dla interfejsu Cloud 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 Firebase, 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 Czytanie wpisów w dzienniku.
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 ich listą w nazwach dzienników inspekcji. Jeśli np. zapytanie zawiera element PROJECT_ID, podany identyfikator projektu musi odnosić się do aktualnie wybranego projektu Firebase.
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ład wpisu w dzienniku kontrolnym i informacje o tym, jak znaleźć w nim najważniejsze informacje, znajdziesz w artykule Przykładowy wpis w dzienniku kontrolnym.
Przekierowywanie dzienników kontrolnych
Dzienniki kontrolne możesz kierować do obsługiwanych miejsc docelowych w taki sam sposób, w jaki kierujesz inne rodzaje dzienników. Oto kilka powodów, dla których możesz chcieć przekierowywać dzienniki kontroli:
Aby przechowywać logi audytowe przez dłuższy czas lub korzystać z bardziej zaawansowanych funkcji wyszukiwania, możesz przekazywać kopie logów audytowych do Google Cloud Storage, BigQuery lub Google Cloud Pub/Sub. Za pomocą Cloud Pub/Sub możesz kierować dane do innych aplikacji, innych repozytoriów i do firm zewnętrznych.
Aby zarządzać logami kontroli w całej organizacji, możesz utworzyć zbiorcze miejsca docelowe, które mogą przekierowywać logi z dowolnego lub wszystkich projektów Firebase w organizacji.
- Jeśli włączone przez Ciebie logi kontrolne dostępu do danych powodują, że projekty Firebase przekraczają limity logów, możesz utworzyć odbiorniki, które wykluczą z logowania logi kontrolne dostępu do danych.
Instrukcje dotyczące kierowania dzienników znajdziesz w artykule Konfigurowanie odbiorników.
Ceny
Logi kontrolne działań administracyjnych i logi kontrolne zdarzeń systemowych są bezpłatne.
Logi kontrolne dostępu do danych i logi kontrolne odrzuconej zasady są płatne.
Więcej informacji o cenach Cloud Logging znajdziesz w artykule Cennik pakietu operacyjnego Google Cloud: Cloud Logging.