Comment Exporter les Journaux d’Audit de Google Workspace

Comment Exporter les Journaux d’Audit de Google Workspace

SOC Prime Team
SOC Prime Team linkedin icon Suivre

Dans la console d’administration Google, Rapports → Audit et investigation contient les journaux (Connexion, Admin, Drive, OAuth et plus), et chacun peut être exporté de là. Pour JSON, utilisez l’API Admin SDK Reports, méthode activities.list. Pour une seule fois, vous n’avez même pas besoin de code : la page de référence de l’API a un panneau « Essayer cette méthode » qui exécute l’appel pour vous. La plupart des données d’audit Workspace sont conservées pendant six mois.

Les journaux d’audit Workspace montrent qui s’est connecté d’où, quelles applications tierces ont eu accès aux e-mails et fichiers, et quels documents ont été soudainement partagés avec le monde extérieur. Prime Core a {N} règles de détection pour les données Google Workspace, mappées à {M} techniques MITRE ATT&CK. Parmi elles : abus de comptes cloud (T1078.004), octrois OAuth malveillants (T1528) et redirections d’emails vers les adresses externes (T1114.003).

Commencez gratuitement

Avant de commencer

Autorisations. Un super administrateur ou un rôle d’administrateur avec le privilège Rapports.

Choisissez le bon journal. Dans l’API, chaque journal est un applicationName : login, admin, drive, token (octrois OAuth), user_accounts, saml, groups et autres. Les journaux de messages Gmail ne font pas partie de cette API. Pour ceux-ci, utilisez la recherche de journal de messagerie dans la console d’administration, ou l’export BigQuery si votre édition le permet.

Rétention et délai. La plupart des journaux d’audit remontent à environ six mois. Les nouveaux événements peuvent prendre de quelques minutes à plusieurs heures pour apparaître, selon le journal.

Un court script Python

Pour des exports répétables, un compte de service avec délégation étendue du domaine se fait passer pour un administrateur. Il a besoin de google-api-python-client et 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)

La délégation étendue du domaine est puissante. N’accordez-lui que ce champ en lecture seule, conservez le fichier de clé hors des disques partagés, et supprimez la délégation lorsque vous avez terminé. Exécutez le script une fois par applicationName dont vous avez besoin.

À quoi faire attention

Journal et événementPourquoi c’est important
login : vagues de failures de connexion, tout suspicious_loginDevinement de mot de passe, ou Google lui-même signalant une connexion
token : authorizeUne application tierce a reçu des autorisations ; vérifiez ce qu’elle peut lire
admin : assignations de rôles, création d’utilisateur, modifications de la politique de vérification en deux étapesChangements de privilèges et affaiblissement des paramètres de sécurité
drive : changements d’accès ou de visibilité vers l’extérieur ou « toute personne ayant le lien »Données ouvertes à l’extérieur
user_accounts : 2SV désactivée, mot de passe modifiéNettoyage après prise de contrôle de compte, ou préparation

Télécharger, désinfecter et examiner dans LogTotal

  1. Télécharger. Ouvrir logtotal.com et déposez le fichier .jsonl.
  2. Désinfecter. 
  3. Examiner. 

Lorsque cela tourne mal

SymptômeCause probableFix
403 ou permissions insuffisantesL’administrateur n’a pas le privilège Rapports, ou la portée déléguée n’est pas autoriséeVérifiez le rôle de l’administrateur ; vérifiez l’entrée de délégation à l’échelle du domaine
Résultats videsMauvais applicationName, événements trop récents, ou au-delà de la rétentionVérifiez le nom ; attendez ; vérifiez les dates
S’arrête à 1 000 événementsPagination non suivieUtilisez pageToken ou list_next
Pas d’événements de messages GmailPas partie de l’API RapportsUtilisez la recherche de journal de messagerie ou BigQuery

FAQ

Puis-je obtenir ces journaux via Google Cloud à la place ?

Si votre organisation partage des données Workspace avec Google Cloud, les journaux d’audit apparaissent dans Cloud Logging au niveau de l’organisation, et notre [guide des journaux d’audit Google Cloud] s’applique.

Le centre d’alertes n’est-il pas suffisant ?

Le centre d’alertes montre ce que Google a décidé de signaler. Les journaux d’audit montrent tout, y compris ce qui n’a pas été signalé.

Rejoignez la plateforme Detection as Code de SOC Prime pour améliorer la visibilité sur les menaces les plus pertinentes pour votre entreprise. Pour vous aider à démarrer et à générer une valeur immédiate, planifiez dès maintenant une réunion avec des experts de SOC Prime.