Collecter les journaux d'audit d'administrateur Atlassian Cloud
Ce document explique comment ingérer les journaux d'audit des administrateurs Atlassian Cloud dans Google Security Operations à l'aide d'AWS S3. Le parseur tente d'abord de traiter le message entrant en tant qu'objet JSON. Si cela échoue, il utilise des expressions régulières (modèles Grok) pour extraire les champs de différents formats de journaux Atlassian Jira, en mappant finalement les données extraites au modèle de données unifié (UDM).
Avant de commencer
Assurez-vous de remplir les conditions suivantes :
- Instance Google SecOps
- Accès privilégié à AWS
- Accès privilégié à Atlassian
Configurer AWS IAM et le bucket S3
- Créez un bucket Amazon S3 en suivant ce guide de l'utilisateur : Créer un bucket.
- Connectez-vous à la console AWS.
- Accédez à S3 > Créer un bucket.
- Donnez un nom au bucket (par exemple,
atlassian-admin-audit-logs
). - Conservez les autres valeurs par défaut (ou configurez le chiffrement et le contrôle des versions si nécessaire).
- Cliquez sur Créer.
- Enregistrez le nom et la région du bucket pour référence ultérieure.
- Créez un utilisateur en suivant ce guide de l'utilisateur : Créer un utilisateur IAM.
- Sélectionnez l'utilisateur créé.
- Sélectionnez l'onglet Informations d'identification de sécurité.
- Cliquez sur Créer une clé d'accès dans la section Clés d'accès.
- Sélectionnez Service tiers comme Cas d'utilisation.
- Cliquez sur Suivant.
- Facultatif : Ajoutez un tag de description.
- Cliquez sur Créer une clé d'accès.
- Cliquez sur Télécharger le fichier CSV et conservez l'ID d'accès et la clé secrète d'accès pour référence ultérieure.
- Cliquez sur OK.
- Dans l'onglet Autorisations, sous Règles d'autorisation, cliquez sur Ajouter des autorisations.
- Sélectionnez Joindre directement des règles.
- Recherchez la règle AmazonS3FullAccess.
- Sélectionnez la règle.
- Cliquez sur Suivant.
- Cliquez sur Ajouter des autorisations.
Configurer la clé API dans Atlassian
- Connectez-vous à Atlassian.
- Accédez à Paramètres > Clés API.
- Cliquez sur Créer une clé API en haut à droite.
- Indiquez un nom unique et descriptif pour la clé.
- Sélectionnez une nouvelle date d'expiration sous Expire le.
- Cliquez sur Créer pour enregistrer.
- Copiez et enregistrez votre clé API et votre ID d'organisation.
- Cliquez sur OK.
Configurer les packages requis
Connectez-vous à votre hôte de collecte de journaux (par exemple, une VM AWS) et exécutez la commande suivante pour configurer les identifiants AWS :
pip install boto3 requests aws configure
Créer un script Atlassian Log Puller
Créez le fichier suivant en saisissant
sudo vi area1_to_s3.py
et copiez le code suivant :- Ajustez les éléments suivants :
#!/usr/bin/env python3 import os, requests, boto3, datetime # Settings TOKEN = os.environ["ATL_TOKEN"] ORG_ID = os.environ["ATL_ORG_ID"] AWS_PROFILE = os.getenv("AWS_PROFILE") BUCKET = "atlassian-admin-audit-logs" def fetch_events(cursor=None): url = f"https://api.atlassian.com/admin/v1/orgs/{ORG_ID}/events" headers = {"Authorization":f"Bearer {TOKEN}"} params = {"limit":100, "cursor":cursor} if cursor else {"limit":100} resp = requests.get(url, headers=headers, params=params) resp.raise_for_status() return resp.json() def upload_json(data, filename): session = boto3.Session(profile_name=AWS_PROFILE) if AWS_PROFILE else boto3.Session() session.client("s3").put_object(Bucket=BUCKET, Key=filename, Body=data, ContentType="application/json") print(f"Uploaded {filename}") def main(): today = datetime.datetime.utcnow().strftime("%Y-%m-%d") cursor = None count = 0 while True: resp = fetch_events(cursor) key = f"audits/{today}/events_{count}.json" upload_json(resp["data"], key) count += 1 cursor = resp.get("links",{}).get("next") if not cursor: break if __name__=="__main__": main()
Enregistrez et quittez
vi
en cliquant suresc
> saisissez:wq
**.
Stocker des variables d'environnement
Créez un fichier sécurisé pour stocker les variables d'environnement dans
/etc/atlassian_audit.env
:export ATL_TOKEN="your_atlassian_key" export ATL_ORG_ID="your_org_id" export AWS_PROFILE="atlassian-logs"
Assurez-vous que le fichier est sécurisé :
chmod 600 /etc/atlassian_audit.env
Automatiser avec Cron
Créez un script Wrapper pour Cron en exécutant
sudo vi /usr/local/bin/run_atlassian_audit.sh
, puis copiez le code suivant :#!/usr/bin/env bash source /etc/atlassian_audit.env python3 /opt/scripts/export_atlassian_audit.py
Rendez le fichier exécutable :
chmod +x /usr/local/bin/run_atlassian_audit.sh
Configurez l'exécution quotidienne à 2h UTC :
crontab -e 0 2 * * * /usr/local/bin/run_atlassian_audit.sh >> /var/log/atl_audit.log 2>&1
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.