Nota
- Questa esercitazione richiede l'accesso a Oracle Cloud. Per iscriverti a un account gratuito, consulta Inizia a utilizzare Oracle Cloud Infrastructure Free Tier.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
Messaggi di lettura pubblicati in un flusso OCI da Oracle Access Governance Event Data Publisher
Introduzione
Event Data Publishing è un processo per esportare i dati una tantum e pubblicare continuamente eventi di dati in corso in sistemi esterni, come un account cloud Oracle Cloud Infrastructure (OCI). Con Oracle Access Governance, hai la flessibilità di esportare eventi di dati una tantum e di pubblicarli continuamente, come identità, raccolte di identità, criteri, risorse, accesso alle risorse e così via, nella tua tenancy cloud. È possibile utilizzare questi dati per ricavare insight, memorizzare i dati per la conformità o per analizzare i dati di gestione degli accessi e governance.
Un evento fa riferimento a qualsiasi modifica dello stato dei dati che si verifica quando vengono creati, modificati o eliminati i componenti di Oracle Access Governance, ad esempio identità, criteri, risorse e così via. Utilizzando Event Data Publisher, gli amministratori ottengono il controllo completo sui dati di accesso e identità e possono utilizzarli per automatizzare la registrazione degli eventi e semplificare il reporting di conformità.
Il flusso di pubblicazione degli eventi dati utilizza bucket OCI per l'esportazione singola e pubblica gli aggiornamenti successivi nei flussi OCI o nei bucket OCI a seconda della dimensione del file.
In questa esercitazione verrà descritto come gli aggiornamenti utente in OCI vengono acquisiti e pubblicati nei flussi OCI da Oracle Access Governance e come utilizzare e decodificare questi messaggi di flusso utilizzando uno script tramite OCI Cloud Shell.
Nota: Event Data Publisher supporta l'esportazione di identità, raccolte di identità, criteri e risorse, tuttavia questa esercitazione si concentra sull'acquisizione di eventi per le identità.
Panoramica dello script della shell
Lo scopo di questo script shell è recuperare e decodificare i messaggi pubblicati in un flusso OCI. Questi messaggi sono codificati in un modo che li rende illeggibili nel loro formato raw. Eseguendo lo script, puoi visualizzare i messaggi in un formato chiaro e leggibile dall'utente, assicurandoti che le informazioni critiche siano accessibili anche dopo la loro scomparsa dalla console OCI.
In particolare, lo script crea un cursore per contrassegnare un punto di partenza per la lettura dei messaggi dal flusso OCI specificato. Il cursore si basa su un offset specificato e su una partizione i cui valori vengono recuperati producendo un messaggio di flusso di test. Utilizzando il cursore, lo script recupera i messaggi dal flusso OCI. Alla fine, lo script elabora e decodifica ogni messaggio recuperato.
Destinatari
Amministratori di Oracle Access Governance e Oracle Cloud Infrastructure Identity and Access Management (OCI IAM).
Obiettivi
-
Recupera i parametri chiave per il flusso OCI.
-
Modificare alcuni attributi per uno o più utenti OCI dalla console.
-
Eseguire il caricamento dei dati in Oracle Access Governance per OCI.
-
Configurare l'ambiente OCI Cloud Shell per eseguire lo script.
-
Leggere i messaggi di flusso eseguendo lo script.
Prerequisiti
-
Istanza di Oracle Access Governance con diritti amministrativi. Per ulteriori informazioni, vedere Impostazione dell'istanza del servizio e Informazioni sui ruoli applicazione.
-
Una tenancy OCI integrata con Oracle Access Governance. Per ulteriori informazioni, consulta la sezione relativa all'integrazione con Oracle Cloud Infrastructure (OCI) Identity and Access Management (IAM).
-
Evento Data Publisher configurato da Oracle Access Governance a OCI. Per ulteriori informazioni, vedere Configurare Event Data Publisher in Oracle Access Governance.
Task 1: recupero dei parametri chiave per il flusso OCI
In questo task verrà eseguito il login a OCI Console per recuperare i parametri chiave per il flusso.
-
Eseguire il login a OCI Console, passare ad Analytics e AI, Messaggistica e fare clic su Streaming.
-
Assicurarsi di selezionare il compartimento in cui si trova il flusso e fare clic sul flusso per visualizzare i dettagli.
-
Prendere nota dei valori per OCID e endpoint messaggi del flusso.
-
Fare clic su Produci messaggio di test, immettere il messaggio di esempio come Dati e fare clic su Produci. Dovrebbe restituire un messaggio Operazione riuscita.
-
Fare clic su Annulla per chiudere la finestra Test flusso.
-
Fare clic su Carica messaggi per controllare il messaggio di test.
-
Nella sezione Messaggi recenti, annotare i valori Partizione e Offset.
Task 2: Aggiorna attributi utente in OCI
In questo task verranno apportate modifiche agli attributi utente in OCI.
-
Andare a OCI Console, accedere a Identity & Security e fare clic su Domini.
-
Selezionare il dominio e fare clic su Utenti. Fare clic sull'utente che si desidera aggiornare e fare clic su Modifica utente.
-
Aggiornare i valori di Paese, Titolo, Reparto, Centro di costo, Tipo di utente, Numero dipendente e così via.
-
Fare clic su Salva modifiche.
Nota: facoltativamente, è possibile aggiornare alcuni altri utenti, se lo si desidera.
Task 3: Esegui caricamento dati in Oracle Access Governance
In questo task verrà eseguito il caricamento dei dati in Oracle Access Governance per sincronizzare le modifiche OCI.
-
Eseguire il login a Oracle Access Governance, passare a Amministrazione dei servizi e Sistemi orchestrati.
-
Individuare il sistema orchestrato per OCI, fare clic sull'icona a tre punti (⋮) e selezionare Gestisci integrazione.
-
Fare clic su Carica dati ora e attendere il completamento del caricamento dati.
Task 4: configurare OCI Cloud Shell per l'esecuzione di script per l'acquisizione dei messaggi dal flusso
In questo task verrà configurata OCI Cloud Shell e verrà utilizzato lo script fornito per decodificare i messaggi pubblicati da Oracle Access Governance.
-
Andare alla console OCI, fare clic su Cloud Shell nell'angolo superiore destro e attendere l'inizializzazione della finestra della shell cloud shell.
-
Inizializzare i seguenti parametri.
export STREAM_OCID=<STREAM_OCID_VALUE> export ENDPOINT=<MESSAGES_ENDPOINT> export CURSOR_TYPE="AFTER_OFFSET" export PARTITION=<PARTITION> export OFFSET=<OFFSET>
-
Sostituire i parametri
STREAM_OCID
,ENDPOINT
,PARTITION
eOFFSET
per il flusso con i valori acquisiti nel task 1. -
Il valore
CURSOR_TYPE
viene impostato suAFTER_OFFSET
per includere tutti i messaggi generati dopo il valore offset specificato per la lettura. Non modificare questo valore.Nota: dal messaggio di test è possibile ottenere un valore di esempio per l'offset, ma è necessario scegliere un valore al termine del quale si desidera acquisire i messaggi. Questo è ciò che fa
CURSOR_TYPE
comeAFTER_OFFSET
.
-
-
Creare un file di script della shell e renderlo eseguibile.
touch ag-streaming.sh chmod u+x ag-streaming.sh
-
Aprire lo script con l'editor vi.
vi ag-streaming.sh
-
Premere i per accedere alla modalità di inserimento. Incollare il contenuto seguente, quindi premere Esc e :wq! per salvare le modifiche.
#!/bin/bash # Validate required environment variables required_vars=("STREAM_OCID" "ENDPOINT" "CURSOR_TYPE" "PARTITION" "OFFSET") for var in "${required_vars[@]}"; do if [ -z "${!var}" ]; then echo "Error: Environment variable $var is not set." exit 1 fi done # Create a cursor for the OCI Stream # echo "Creating a cursor for the OCI Stream..." oci streaming stream cursor create-cursor \ --partition "$PARTITION" \ --stream-id "$STREAM_OCID" \ --type "$CURSOR_TYPE" \ --offset "$OFFSET" \ --endpoint "$ENDPOINT" > cursor.json # Extract cursor value cursor=$(jq -r '.data.value' cursor.json) if [ -z "$cursor" ]; then echo "Error: Failed to retrieve cursor value." exit 1 fi # Read messages from the OCI Stream echo "Reading messages from the OCI Stream..." messages=$(oci streaming stream message get \ --stream-id "$STREAM_OCID" \ --cursor "$cursor" \ --endpoint "$ENDPOINT") # Check if messages were retrieved if [ -z "$messages" ] || ! echo "$messages" | jq -e '.data[] | select(.key != null)' > /dev/null 2>&1; then echo "No valid messages found." exit 1 fi # Extract and decode the data from messages echo "Processing messages..." # Extract and count the number of messages message_count=$(echo "$messages" | jq -r '.data[] | select(.key != null) | .value' | wc -l) echo "$messages" | jq -r '.data[] | select(.key != null) | .value' | while read -r value; do if [ -n "$value" ]; then counter=$((counter + 1)) echo echo "Decoding message $counter of $message_count..." # Base64 decode the message decoded_message=$(echo "$value" | base64 --decode 2>/dev/null || echo "Error decoding message") final_decoded_message=$(echo "$decoded_message" | base64 --decode 2>/dev/null || echo "Error decoding message further") # Print the decoded message echo "Decoded Message : $final_decoded_message" fi done
-
Eseguire lo script e reindirizzare i messaggi di output in un file (come esempio viene utilizzato messages_dump.txt). In alternativa, è possibile eseguire lo script per visualizzare i messaggi sulla console.
./ag-streaming.sh > messages_dump.txt
-
Scaricare il file
messages_dump.txt
da OCI Cloud Shell per controllare i messaggi decodificati per gli aggiornamenti utente effettuati in precedenza.
In questa esercitazione è stato descritto come leggere i messaggi da un flusso OCI pubblicati dal publisher dei dati degli eventi in Oracle Access Governance. Abbiamo visto come possiamo sfruttare l'interfaccia CLI (Command Line Interface) OCI utilizzando OCI Cloud Shell per leggere i messaggi in base a un offset specificato. Questi messaggi contengono modifiche relative a utenti, gruppi, risorse e associazioni di criteri OCI e sono pertanto importanti dal punto di vista di audit, conformità e reporting.
Passi successivi
Dopo aver completato questa esercitazione, è possibile analizzare il contenuto dei messaggi degli eventi dati pubblicati dai flussi di Oracle Access Governance in OCI. Facoltativamente, è possibile impostare ulteriori processi per analizzare i messaggi di evento in base ai requisiti di audit e conformità. Puoi anche spostare i dati dai flussi al data warehouse autonomo per eseguire analisi e visualizzazione avanzate. È inoltre possibile spostare i dati nello storage degli oggetti OCI per lo storage a lungo termine o per eseguire job Hadoop/Spark.
Collegamenti correlati
Conferme
- Autore - Anuj Tripathi (Principal Cloud Architect, NA Solution Engineering)
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a più contenuti gratuiti sulla formazione su Oracle Learning YouTube channel. Inoltre, visita education.oracle.com/learning-explorer per diventare un Oracle Learning Explorer.
Per la documentazione del prodotto, visita l'Oracle Help Center.
Read Messages Published to an OCI Stream from Oracle Access Governance Event Data Publisher
G20548-01
November 2024