Remarques :
- Ce tutoriel nécessite un accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, reportez-vous à Introduction au niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeurs pour les informations d'identification, la location et les compartiments Oracle Cloud Infrastructure. Lorsque vous terminez votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Récupération des rapports de problèmes Oracle Cloud Guard à l'aide d'un script Python
Introduction
Alors que les entreprises migrent de plus en plus leurs workloads critiques vers le cloud, la sécurisation des infrastructures cloud est devenue primordiale. Oracle Cloud Infrastructure (OCI) offre un ensemble complet de services de sécurité pour protéger les environnements cloud. Oracle Cloud Guard est l'un des outils les plus remarquables de la suite de sécurité d'OCI.
Oracle Cloud Guard aide les entreprises à protéger leurs ressources OCI en fournissant une visibilité en temps réel sur la posture de sécurité, la détection des menaces, la gestion des vulnérabilités et les vérifications de conformité. Une fonctionnalité clé d'Oracle Cloud Guard est sa capacité à générer des rapports sur les problèmes, ce qui peut être précieux pour les entreprises qui cherchent à maintenir une posture de sécurité robuste.
Actuellement, la console Oracle Cloud Guard ne prend pas en charge l'export direct des rapports de problèmes. Ce tutoriel fournit un script Python pour générer et télécharger ces rapports aux formats JSON et CSV. Une fois qu'un problème est détecté, Oracle Cloud Guard génère un rapport de problème qui inclut des détails tels que la description du problème, le niveau de risque, les ressources affectées, etc.
A l'aide de ce script, les clients peuvent :
-
Effectuer une analyse hors ligne des données problématiques.
-
Des rapports de chargement ad hoc vers les solutions SIEM (Security Information and Event Management) pour une détection et une corrélation améliorées des menaces.
-
Effectuer une intégration aux tableaux de bord analytiques ou à d'autres outils de reporting pour identifier les modèles, les tendances et les causes premières.
Cette approche garantit non seulement l'efficacité opérationnelle, mais permet également aux clients d'obtenir des informations plus approfondies et de maintenir des postures de sécurité robustes.
Objectifs
- Récupérez le rapport de problèmes Oracle Cloud Guard à l'aide d'un script Python.
Prérequis
-
Droits d'accès dans Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) pour visualiser Oracle Cloud Guard. Pour plus d'informations, reportez-vous à Activation d'Oracle Cloud Guard.
-
Accès à un environnement OCI Cloud Shell. Pour plus d'informations, reportez-vous à Stratégie IAM requise pour OCI Cloud Shell.
Exécution du script Python dans OCI Cloud Shell
-
Connectez-vous à la console OCI.
-
Cliquez sur Cloud Shell pour ouvrir OCI Cloud Shell.
-
Copiez le script Python suivant et enregistrez-le sur votre ordinateur local en tant que
report.py
pour l'exécuter dans OCI Cloud Shell.import oci from datetime import datetime import json import csv config = oci.config.from_file() #print(config['tenancy']) #today = datetime.today() #print("Current date: ") #print(today) #firstdate = (today - timedelta(days=180)) #print("Time first detected is: ") #print(firstdate) cloud_guard_client = oci.cloud_guard.CloudGuardClient(config) list_problems_response = cloud_guard_client.list_problems( compartment_id=config['tenancy'], compartment_id_in_subtree=True, access_level="ACCESSIBLE", #time_first_detected_greater_than_or_equal_to=firstdate, limit=1000000) response = list_problems_response.data #print(response) string = str(response) res_data = json.loads(string) output_file = "problem_report.json" with open(output_file, 'w') as json_file: json.dump(res_data, json_file) with open('problem_report.json') as json_file: data = json.load(json_file) prob_data = data['items'] csv_file = open("problem_report.csv", "w", newline="") csv_writer = csv.writer(csv_file) count = 0 for res in prob_data: if count == 0: # Writing headers of CSV file header = res.keys() csv_writer.writerow(header) count += 1 # Writing data of CSV file csv_writer.writerow(res.values()) print("Script executed successfully") print("\nReports are generated and saved")
-
Cliquez sur l'icône Paramètres, puis sur Télécharger pour télécharger le fichier de script Python à partir de votre ordinateur local.
-
Exécutez le script Python à l'aide de la commande suivante.
python3 report.py
-
Une fois l'exécution réussie, vous pouvez voir les deux fichiers créés dans le dossier nommé
problem_report.json
etproblem_report.csv
. -
Pour télécharger le rapport, cliquez sur l'icône des paramètres et sur Télécharger. Entrez le chemin et le nom de fichier du rapport.
Remarque : le script s'exécute et fournit le rapport qui affiche les problèmes survenus au cours des 180 derniers jours. Cette opération est exécutée dans le compartiment racine. Le sous-compartiment visible est défini sur True, la hiérarchie des compartiments est parcourue et tous les compartiments et sous-compartiments de la location sont renvoyés.
Etapes suivantes
Pour les entreprises qui utilisent OCI, l'utilisation des rapports de problèmes Oracle Cloud Guard doit faire partie intégrante de votre stratégie de sécurité cloud. La révision régulière de ces rapports et leur application vous aideront à protéger vos ressources OCI, à assurer la conformité et à maintenir la confiance de vos clients et parties prenantes.
Liens connexes
Remerciements
- Auteur - Samratha S P (Ingénieur Cloud senior)
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à d'autres contenus de formation gratuits sur le canal Oracle Learning YouTube. De plus, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir la documentation produit, consultez le site Oracle Help Center.
Retrieve Oracle Cloud Guard Problem Reports using a Python Script
G23005-01
December 2024