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.
Generare report di Identity and Access Management da Oracle Cloud Infrastructure Audit
Introduzione
I domini di Identity di Oracle Cloud Infrastructure (OCI) sono il successore di Oracle Identity Cloud Service e portano tutte le funzionalità di Oracle Identity Cloud Service in un servizio Oracle Cloud Infrastructure di base. Oracle Identity Cloud Service era un'offerta autonoma simile a SaaS e fornisce report sull'attività degli utenti e simili all'interno del servizio.
A differenza di Oracle Identity Cloud Service, OCI Identity Domains esiste all'interno del contesto OCI più ampio. Un principio di progettazione OCI prevede l'uso di funzionalità di servizio comuni, ove possibile e di conseguenza alcuni dei report resi disponibili in Oracle Identity Cloud Service non sono più validi, poiché i dati utilizzati sono ora disponibili tramite la funzionalità di servizio comune fornita da OCI Audit.
Questa esercitazione descrive come creare i report non più validi dai dati di OCI Audit e renderli disponibili all'interno di OCI Dashboard.
Obiettivi
-
Crea ricerche salvate in OCI Logging per i report IAM OCI.
-
Esporta i report IAM OCI per l'elaborazione offline.
-
Aggiungere tali ricerche al dashboard OCI.
Prerequisiti
- Autorizzazioni per leggere i dati di audit per il compartimento contenente il dominio IAM OCI (che sarà la radice della tenancy per il dominio predefinito).
Task 1: Esplora gli eventi di audit OCI Identity and Access Management
Ogni servizio OCI crea record di audit su un utente o un'azione del servizio e IAM OCI non fa eccezione, creando record di audit sull'accesso utente, nonché qualsiasi modifica o evento che si verifica all'interno di IAM OCI.
-
Accedere al servizio Log sotto le funzionalità di osservabilità e gestione all'interno di OCI Console, quindi selezionare la sezione Cerca.
-
Fare clic su Seleziona log da cercare per impostare il contesto per la ricerca di log nel compartimento contenente il dominio di Identity IAM OCI per il quale si desidera generare il report.
Dopo aver selezionato il compartimento pertinente, è probabile che vengano visualizzate diverse voci per l'attività dell'utente o del servizio, con le voci specifiche che dipendono dal modo in cui viene utilizzata la tenancy. È inoltre possibile visualizzare eventi di login personali o di altro tipo. Se non vengono visualizzate voci, assicurarsi di aver selezionato l'area corretta espandendo Altre opzioni di ricerca oppure espandere la finestra temporale modificando l'impostazione Filtra per ora.
-
Fare clic su Mostra modalità avanzata per visualizzare la possibilità di immettere query in formato testo libero, quindi aggiungere una delle seguenti voci alla fine della query predefinita (dopo 'ordinamento in base a descrizione data e ora') per generare lo stesso contenuto incluso nel report di Oracle Identity Cloud Service.
Report Query Report login riusciti | dove data.additionalDetails.eventId = 'sso.session.create.success' | selezionare data.additionalDetails.domainDisplayName come dominio, data.additionalDetails.actorName come login, data.additionalDetails.eventId come risultato, data.additionalDetails.ssoRp come provider, time_format(datetime, 'yyyy-MM-dd hh:mm:ss z') come data Report login non riusciti | where data.additionalDetails.eventId='sso.authentication.failure' | select data.additionalDetails.domainDisplayName as Domain, data.additionalDetails.actorName as User, data.additionalDetails.eventId as Result, data.message as Comments, time_format(datetime, 'yyyy-MM-dd hh:mm:ss z') as Date Report accessi applicazioni | where data.additionalDetails.eventId = 'sso.session.create.success' or data.additionalDetails.eventId = 'sso.authentication.failure' or data.additionalDetails.eventId = 'sso.session.modify.success' | select data.additionalDetails.domainDisplayName as Domain, data.additionalDetails.actorDisplayName as User, data.additionalDetails.actorName as Login, data.additionalDetails.eventId as "Success/Failure", data.additionalDetails.ssoRp as Application, time_format(datetime, 'yyyy-MM-dd hh:mm:ss z') as Date Report log di audit | where data.additionalDetails.eventId = ‘sso.app.access.success’ or data.additionalDetails.eventId = ‘sso.app.access.failure’ or data.additionalDetails.eventId = ‘sso.session.create.success’ or data.additionalDetails.eventId = ‘sso.authentication.failure’ or data.additionalDetails.eventId = ‘sso.session.delete.success’ or data.additionalDetails.eventId = ‘admin.user.create.success’ or data.additionalDetails.eventId = ‘admin.user.activated.success’ or data.additionalDetails.eventId = ‘admin.user.deactivated.success’ or data.additionalDetails.eventId = ‘admin.user.update.success’ or data.additionalDetails.eventId = ‘admin.user.delete.success’ or data.additionalDetails.eventId = ‘admin.user.password.reset.success’ or data.additionalDetails.eventId = ‘admin.me.password.reset.success’ or data.additionalDetails.eventId = ‘admin.me.password.change.success’ or data.additionalDetails.eventId = ‘admin.policy.create.success’ or data.additionalDetails.eventId = ‘admin.rule.create.success’ or data.additionalDetails.eventId = ‘admin.policy.update.success’ or data.additionalDetails.eventId = ‘admin.rule.update.success’ or data.additionalDetails.eventId = ‘admin.passwordpolicy.create.success’ or data.additionalDetails.eventId = ‘admin.passwordpolicy.update.success’ or data.additionalDetails.eventId = ‘admin.grant.create.success’ or data.additionalDetails.eventId = ‘admin.grant.delete.success’ or data.additionalDetails.eventId = ‘admin.group.create.success’ or data.additionalDetails.eventId = ‘admin.group.add.member.success’ or data.additionalDetails.eventId = ‘admin.group.remove.member.success’ or data.additionalDetails.eventId = ‘admin.group.delete.success’ or data.additionalDetails.eventId = ‘admin.app.create.success’ or data.additionalDetails.eventId = ‘admin.app.update.success’ or data.additionalDetails.eventId = ‘admin.app.delete.success’ or data.additionalDetails.eventId = ‘admin.app.activated.success’ or data.additionalDetails.eventId = ‘admin.app.deactivated.success’ or data.additionalDetails.eventId = ‘notification.delivery.success’ or data.additionalDetails.eventId = ‘notification.delivery.failure’ or data.additionalDetails.eventId = ‘sso.auth.factor.initiated’ or data.additionalDetails.eventId = ‘sso.bypasscode.create.success’ | select time_format(datetime, ‘yyyy-MM-dd hh:mm:ss z’) as Date, data.additionalDetails.domainDisplayName as Domain, data.additionalDetails.actorName as Actor, data.additionalDetails.eventId as “Event Id”, data.message as “Event Description”, data.additionalDetails.adminResourceName as Target Report assegnazioni ruoli applicazione | dove data.additionalDetails.eventId = 'admin.approle.add.member.success' o data.additionalDetails.eventId = 'admin.approle.remove.member.success' | selezionare data.additionalDetails.domainDisplayName come dominio, data.additionalDetails.actorDisplayName come approvatore, data.additionalDetails.adminAppRoleAppName come "Nome applicazione", data.additionalDetails.adminRefResourceName come beneficiario, data.additionalDetails.adminRefResourceType come "Utente/Gruppo", data.additionalDetails.adminResourceName come "Nome ruolo applicazione", time_format(datetime, 'yyyy-MM-dd hh:mm:ss z') come data, data.additionalDetails.eventId come "Aggiunto/rimosso" Ad esempio, per il report
Successful Logins
, l'aspetto della query è simile a quello riportato di seguito. -
Fare clic su Cerca per utilizzare la query aggiornata. Se non restituisce alcun risultato, potrebbe essere necessario modificare il filtro dell'ora.
-
È possibile esportare qualsiasi risultato restituito facendo clic su Esporta dati di log (JSON) nell'elenco a discesa Azioni sopra i risultati.
Nota: Oracle Identity Cloud Service supporta il download come file
CSV
mentre questa esportazione supporta solo l'esportazioneJSON
, tuttavia le istruzioni SELECT utilizzate nelle query precedenti appiattisconoJSON
in un singolo oggetto con attributi, che dovrebbero consentire la conversione tra l'esportazioneJSON
eCSV
, se necessario.
Task 2: Creare una ricerca salvata per il report
Per evitare di reinserire la query ogni volta che si desidera accedere a questi report, è possibile utilizzare la funzionalità Ricerca salvata di OCI Logging.
-
Dopo aver convalidato la query, fare clic su Salva ricerca per consentire il riutilizzo e l'integrazione della query nel dashboard.
-
Immettere un nome per la ricerca, ad esempio 'Successful_Login_Report' o simile, nonché una descrizione, quindi fare clic su Salva.
-
Dall'interfaccia Ricerche salvate è possibile fare clic di nuovo nella ricerca per ottenere il set di dati più recente.
Nota: non è possibile esportare direttamente i risultati dall'interfaccia di ricerca salvata, ma è necessario utilizzare l'opzione Esplora con ricerca log nell'elenco a discesa Azioni, quindi esportare i risultati dalla vista Ricerca.
Task 3: aggiungere il report a un dashboard OCI
Oltre ad accedere ai report dall'interno del servizio OCI Logging, possono essere resi disponibili anche tramite la funzionalità dashboard di OCI, per consentire la revisione centralizzata degli eventi IAM OCI.
-
Andare alla pagina di arrivo di OCI Console, fare clic su Oracle Cloud nel banner superiore, quindi passare alla vista Dashboard.
-
Creare un nuovo dashboard per i report IAM OCI facendo clic su Nuovo dashboard.
-
Selezionare Genera da zero e aggiungere un nome e una descrizione appropriati.
-
Creare un nuovo gruppo di dashboard o assegnare questo dashboard a un gruppo esistente, se necessario.
-
Fare clic su Aggiungi widget, quindi selezionare Tabella dati di log, quindi fare clic su Configura nel nuovo widget.
-
Fornire un nome appropriato, quindi selezionare la ricerca salvata. Aggiungere un periodo di tempo predefinito appropriato.
-
Modificare il layout e aggiungere altre ricerche salvate in base alle esigenze.
Automazione dell'estrazione dei dati del report
Gli approcci di cui sopra offrono la possibilità di eseguire report ad hoc sui dati IAM. Tuttavia, per le operazioni in corso, potrebbe essere necessario automatizzare l'estrazione di questi dati. Per fare ciò, puoi sfruttare l'API OCI, l'interfaccia CLI OCI o uno degli SDK OCI.
L'interfaccia API SearchLogs può essere richiamata utilizzando una richiesta simile alla seguente, modificando l'intervallo di tempo e aggiungendo la query dalla ricerca log iniziale:
POST https://logging.<region>.oci.oraclecloud.com/20190909/search?limit=1000
Body:
{
"timeStart": "2025-01-01T00:00:00.000Z",
"timeEnd": "2025-01-02T00:00:00.000Z",
"searchQuery": "<log search query from Task #1>",
"isReturnFieldInfo": false
}
Il comando CLI OCI equivalente è il seguente:
oci logging-search search-logs --search-query "<log search query from Task #1>" --time-start "2025-01-01T00:00:00.000Z" --time-end "2025-01-02T00:00:00.000Z" --is-return-field-info false
Nota: i caratteri delle virgolette doppie (
"
) nella query di ricerca vengono esclusi dalla barra rovesciata (\
), ovveroas "Success/Failure"
diventaas \"Success/Failure\"
.
Se si preferisce eseguire il push degli eventi di audit in un sistema alternativo, è possibile utilizzare OCI Connector Hub o OCI Events per facilitare l'inoltro dei log, ad esempio in Implementare la sicurezza multi-cloud utilizzando OCI Audit per acquisire gli eventi da OCI Identity and Access Management che include l'inoltro di audit a Azure Sentinel.
Collegamenti correlati
Conferme
- Autori - Manoj Gaddam (Principal Product Manager - OCI Identity/IDCS), Callan Howell-Pavia (Principal Member of Technical Staff - OCI Identity/IDCS)
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.
Generate Identity and Access Management Reports from Oracle Cloud Infrastructure Audit
F89547-02
January 2025