Jak eksportować logi audytowe Google Workspace

Jak eksportować logi audytowe Google Workspace

SOC Prime Team
SOC Prime Team linkedin icon Śledź

W konsoli administracyjnej Google, Raportowanie → Audyt i dochodzenie przechowuje logi (Login, Admin, Dysk, OAuth i inne), a każdy z nich można wyeksportować stamtąd. Dla JSON użyj Admin SDK Reports API, metody activities.list. Dla jednorazowego użycia nie potrzebujesz nawet kodu: strona referencyjna API posiada panel „Wypróbuj tę metodę”, który wykonuje wywołanie jako ty. Większość danych audytu Workspace jest przechowywana przez sześć miesięcy.

Logi audytu Workspace pokazują, kto się zalogował, z jakiego miejsca, które aplikacje trzecie uzyskały dostęp do poczty i plików oraz które dokumenty nagle zostały udostępnione na zewnątrz. Prime Core ma {N} reguł detekcji dla danych Google Workspace, powiązanych z {M} MITRE ATT&CK technikami. Wśród nich: nadużycie kont w chmurze (T1078.004), złośliwe przyznawanie OAuth (T1528) i przekazywanie poczty na zewnętrzne adresy (T1114.003).

Zacznij za darmo

Zanim zaczniesz

Uprawnienia. Superadmin lub rola administracyjna z przywilejem Raportów.

Wybierz odpowiedni log. W API każdy log to applicationName: login, admin, drive, token (przyznania OAuth), user_accounts, saml, groups i inne. Logi wiadomości Gmail nie są częścią tego API. Dla nich użyj wyszukiwania logów e-mail w konsoli administracyjnej lub eksportu BigQuery, jeśli twoja edycja go posiada.

Zatrzymywanie i opóźnienie. Większość logów audytu sięga około sześciu miesięcy wstecz. Nowe zdarzenia mogą pojawić się od kilku minut do kilku godzin, zależnie od logu.

Krótki skrypt w Pythonie

Dla powtarzalnych eksportów, konto serwisowe z delegacją na poziomie domeny udaje administratora. Potrzebuje google-api-python-client i google-auth:

import json

from google.oauth2 import service_account

from googleapiclient.discovery import build


creds = service_account.Credentials.from_service_account_file(

"sa.json",

scopes=["https://www.googleapis.com/auth/admin.reports.audit.readonly"],

subject="admin@example.com",

)

svc = build("admin", "reports_v1", credentials=creds)


with open("workspace_login_1019.jsonl", "w") as out:

req = svc.activities().list(

userKey="all", applicationName="login",

startTime="2026-10-19T00:00:00Z", endTime="2026-10-20T00:00:00Z",

maxResults=1000,

)

while req is not None:

resp = req.execute()

for item in resp.get("items", []):

out.write(json.dumps(item) + "n")

req = svc.activities().list_next(req, resp)

Delegacja domenowa jest potężna. Przyznaj jej tylko ten zasięg do odczytu, przechowuj plik klucza poza wspólnymi dyskami i usuń delegację po zakończeniu. Uruchom skrypt raz na każdy potrzebny applicationName.

Na co zwrócić uwagę

Log i zdarzenieDlaczego to ważne
login: serie nieudanych logowań, jakiekolwiek podejrzane logowaniaZgadzywanie haseł lub Google samo oznaczające logowanie
token: autoryzacjaAplikacja trzecia uzyskała przywileje; sprawdź co może odczytać
admin: przypisywanie ról, tworzenie użytkowników, zmiany polityki weryfikacji dwuetapowejZmiany przywilejów i osłabione ustawienia bezpieczeństwa
drive: zmiany dostępu lub widoczności na zewnątrz lub „każdy z linkiem”Dane otwierane dla zewnętrznych użytkowników
user_accounts: wyłączona weryfikacja dwuetapowa, zmienione hasłoPorządki po przejęciu konta lub przygotowania do przejęcia

Prześlij, oczyść i oceń w LogTotal

  1. Prześlij. Otwórz logtotal.com i upuść plik .jsonl.
  2. Oczyść. 
  3. Oceń. 

Gdy coś idzie nie tak

ObjawPrawdopodobna przyczynaFix
403 lub niewystarczające uprawnieniaAdministrator nie ma przywileju Raportów lub delegowany zasięg nie jest autoryzowanySprawdź rolę administratora; sprawdź wpis delegacji na poziomie domeny
Puste wynikiZła nazwa applicationName, zdarzenia zbyt świeże lub poza okres retencjiSprawdź nazwę; poczekaj; sprawdź daty
Zatrzymuje się przy 1,000 zdarzeńBrak obsługi stronicowaniaUżyj pageToken lub list_next
Brak zdarzeń wiadomości GmailNie jest częścią Reports APIUżyj wyszukiwania logów Email lub BigQuery

FAQ

Czy mogę uzyskać te logi przez Google Cloud?

Jeśli twoja organizacja dzieli się danymi Workspace z Google Cloud, logi audytu pojawiają się w Cloud Logging na poziomie organizacji, a nasz [przewodnik po logach audytu Google Cloud] ma zastosowanie.

Czy centrum alertów nie jest wystarczające?

Centrum alertów pokazuje, co Google zdecydowało się oznaczyć. Logi audytu pokazują wszystko, w tym to, co nie zostało oznaczone.

Dołącz do platformy Detection as Code firmy SOC Prime aby zwiększyć widoczność zagrożeń najbardziej istotnych dla Twojego biznesu. Aby pomóc Ci rozpocząć i natychmiast uzyskać wartość, umów się teraz na spotkanie z ekspertami SOC Prime.