Hinweis:
- Dieses Tutorial erfordert Zugriff auf Oracle Cloud. Informationen zur Registrierung für einen kostenlosen Account finden Sie unter Erste Schritte mit Oracle Cloud Infrastructure Free Tier.
- Es verwendet Beispielwerte für Oracle Cloud Infrastructure-Zugangsdaten, -Mandanten und -Compartments. Ersetzen Sie diese Werte nach Abschluss der Übung durch Werte, die für Ihre Cloud-Umgebung spezifisch sind.
Oracle Cloud Guard-Ereignisse in Oracle Analytics Cloud erfassen
Einführung
In diesem Tutorial werden Oracle Cloud Guard-Ereignisse an Oracle Autonomous JSON Database (AJD) weitergeleitet und in Oracle Analytics Cloud erfasst. In einem nachfolgenden Tutorial werden Cloud Guard-Ereignisse in Oracle Analytics Cloud analysiert und angezeigt.
-
Oracle Cloud Guard: Oracle Cloud Guard ist ein nativer Oracle Cloud Infrastructure-(OCI-)Service, mit dem Kunden Ressourcen über Regionen hinweg überwachen und erkennen können. Dadurch kann ein Cloud-Sicherheitsstatus beibehalten werden, um OCI-Mandanten sicher zu halten. Weitere Informationen finden Sie unter Oracle Cloud Guard.
-
Oracle Analytics Cloud: Oracle Analytics Cloud ist eine vollständig verwaltete cloudbasierte Business Intelligence-(BI-) und Analyseplattform, die als vollständige Plattform konzipiert wurde, mit der Business-Anwender und Analysten Erkenntnisse und Trends aufdecken können, um datengesteuerte Entscheidungen zu treffen. Weitere Informationen finden Sie unter Oracle Analytics Cloud.
Allgemeine Architektur
Ziele
- Erfassen Sie Oracle Cloud Guard-Ereignisse in Oracle Analytics Cloud.
Voraussetzungen
-
Umfassendes Verständnis von OCI, OCI Events Service und Oracle Cloud Guard.
-
Stellen Sie Oracle Autonomous Database und Kenntnisse über Oracle REST Data Services (ORDS) bereit.
-
Grundlegende Kenntnisse zu OCI Functions und Sicherheit.
Aufgabe 1: Oracle Cloud Guard zum Auslösen von Cloud-Ereignissen konfigurieren
Konfigurieren Sie Oracle Cloud Guard, um auf die Detektorrezepte zu reagieren. Die Responder-Regeln müssen sicherstellen, dass der Status für das Oracle Cloud Guard-Ereignis auf Aktiviert gesetzt ist, wie in der folgenden Abbildung dargestellt.
Aufgabe 2: OCI Events Service-Regeln erstellen, um Oracle Cloud Guard-Probleme zu erkennen und OCI Functions aufzurufen
-
Mit OCI Events Service können Sie Automatisierung basierend auf den Statusänderungen von Ressourcen im gesamten Mandanten erstellen. Durch die Verwendung von Ereignissen können Entwicklungsteams automatisch reagieren, wenn eine Ressource ihren Status ändert.
Um die Ereignisse abzurufen, navigieren Sie zu Observability and Management, und klicken Sie auf Events-Service. Erstellen Sie eine neue Regel, und konfigurieren Sie den Ereignistyp, der in die Funktion geschrieben wird, wie in der folgenden Abbildung dargestellt.
-
Klicken Sie auf das Auslassungssymbol (drei vertikale Punkte), um die Oracle Cloud Guard-Ereignisse zu bearbeiten und an eine Funktion zu senden, wie in der folgenden Abbildung dargestellt.
Fügen Sie eine Aktion hinzu, um Cloud Guard-Ereignisse wie unten gezeigt an eine Funktion weiterzuleiten.
Ereignistypen konfigurieren.
Aufgabe 3: Funktion zum Weiterleiten von Ereignissen an AJD erstellen
-
Gehen Sie zur OCI-Konsole, navigieren Sie zu Entwicklerservices, und klicken Sie auf Funktionen.
-
Wählen Sie eine vorhandene Anwendung aus, oder klicken Sie auf Anwendung erstellen. Erstellen Sie eine neue OCI Functions in Ihrer Anwendung. Weitere Informationen finden Sie unter Funktionen QuickStart in Cloud Shell.
Hinweis: Angenommen, Sie haben die Voraussetzungen erfolgreich erfüllt.
-
Führen Sie den folgenden Befehl aus, um die Anwendung in der Anwendungsliste anzuzeigen.
fn ls apps
-
Es wird empfohlen, zuerst eine Boilerplate-Python-Funktion zu erstellen. Mit dem Befehl
fn init – runtime oci-event-to-db
wird ein Ordner namensoci-event-to-db
mit drei Dateien namensfunc.py
,func.yaml
undrequirements.txt
generiert. -
Eine AJD-Tabelle muss vorhanden sein und REST-fähig sein. Wie in der Abbildung unten gezeigt.
-
Aktualisieren Sie den Inhalt der Datei
func.py
mit dem folgenden Code.import io import json import re import requests eventTable="https://mrj6p3vkk4ramuu-cgdata.adb.us-ashburn-1.oraclecloudapps.com/ords/cguser/event/" from fdk import response def handler(ctx, data: io.BytesIO=None): try: bodytxt = data.getvalue() body = json.loads(bodytxt) # print("event type: " + body["eventType"]) # print("compartment name: " + body["data"]["compartmentName"]) headers = {'Content-type': 'application/json', 'accept': 'application/json'} req = requests.post(eventTable, json={ "event": body }, headers=headers) except (Exception, ValueError) as ex: print('ERROR:', ex, flush=True) raise return response.Response( ctx, response_data=[ json.loads(req.text)["id"] ], # response_data=json.loads(req.text), headers={"Content-Type": "application/json"} )
-
Aktualisieren Sie den Inhalt der Datei
func.yaml
mit dem folgenden Code.schema_version: 20180708 name: oci-event-to-db version: 0.0.44 runtime: python build_image: fnproject/python:3.11-dev run_image: fnproject/python:3.11 entrypoint: /python/bin/fdk /function/func.py handler memory: 256
-
Aktualisieren Sie den Inhalt der Datei
requirements.txt
mit dem folgenden Code.Requests oci fdk
-
Führen Sie den folgenden Befehl aus, um Ihre Funktion bereitzustellen.
fn -v deploy -app oci-event-to-db
Aufgabe 4: Datenbank mit ORDS vereinfachen
-
Nachdem die Oracle Cloud Guard-Ereignisse in AJD gespeichert wurden, prüfen Sie die Datenbank auf Oracle Cloud Guard-Aktivitäten, indem Sie die Tabelle Ereignisse prüfen. Führen Sie die folgende SQL-Anweisung aus.
SELECT * FROM EVENTS
-
Da die Oracle Cloud Guard-Ereignisse im Java Script Object Notation-(JSON-)Format gespeichert werden, müssen sie vereinfacht oder in ein relationales Format konvertiert werden, damit Oracle Analytics Cloud die Daten analysieren kann.
So vereinfachen Sie die Datenbank:
-
Erstellen Sie einen Index für die Tabelle Events, und führen Sie die folgende SQL-Anweisung aus, um sie zu vereinfachen.
Create search index event_idx on event (event) for JSON parameters ('DATAGUIDE ON');
-
Erstellen Sie eine Ansicht.
exec dbms_json.create_view_on_path('flat_event', 'event', 'event', '$’);
-
-
Führen Sie die folgende SQL-Anweisung aus, um die in den obigen Schritten erstellten Spalten zu prüfen.
SELECT COLUMN_NAME,DATA_TYPE FROM all_tab_columns where table_name ='FLAT_EVENT' order BY column_id;
Die Spalten sollten zusammen mit dem Datentyp angezeigt werden, wie in der folgenden Abbildung dargestellt.
Aufgabe 5: Verbindung mit Oracle Analytics Cloud herstellen
-
Nachdem die Datenbank aus JSON in ein relationales Format konvertiert wurde, stellen Sie eine Verbindung zu Oracle Analytics Cloud her. Gehen Sie zur OCI-Konsole, navigieren Sie zur AJD-Instanz, und geben Sie die Zugangsdaten an, und laden Sie das Wallet herunter, wie im folgenden Bild dargestellt.
-
Melden Sie sich bei Oracle Analytics Cloud an, klicken Sie auf Neue Verbindung erstellen, klicken Sie auf Oracle Autonomous Data Warehouse, und wählen Sie das Wallet aus, das in Schritt 1 heruntergeladen wurde.
-
Sobald die Verbindung hergestellt ist, zeigt OAC sie wie folgt unter "Verbindungen" an.
-
Doppelklicken Sie auf die Verbindung, um ein neues Dataset in OAC zu erstellen, erweitern Sie das Schema, und ziehen Sie die Tabelle auf die Leinwand.
Danksagungen
-
Autoren – Murtuza Madarwala (Cloud Solution Engineer), Phil Dolbow (Cloud Solution Engineer)
-
Mitwirkender – Kevin Colwell (Cloud Solution Engineer)
Weitere Lernressourcen
Sehen Sie sich andere Übungen zu docs.oracle.com/learn an, oder greifen Sie im Oracle Learning YouTube-Channel auf weitere kostenlose Lerninhalte zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.
Die Produktdokumentation finden Sie im Oracle Help Center.
Capture Oracle Cloud Guard Events into Oracle Analytics Cloud
G27468-01
February 2025
Copyright ©2025, Oracle and/or its affiliates.