Visualizzazione degli eventi CloudTrail con la AWS CLI
A partire dal 22 novembre 2021, AWS CloudTrail cambierà il modo in cui è possibile utilizzare i percorsi per catturare eventi di servizio globali. Dopo la modifica, gli eventi creati da CloudFront, IAM e AWS STS saranno registrati nella regione in cui sono stati creati, ovvero la regione Stati Uniti orientali (Virginia settentrionale) us-east-1. Ciò rende il trattamento di questi servizi da parte di CloudTrail coerente con quello di altri servizi globali AWS.
Per continuare a ricevere eventi di assistenza globale al di fuori della regione Stati Uniti orientali (Virginia settentrionale), assicurati di convertire i percorsi a regione singola che utilizzano eventi di assistenza globale al di fuori di Stati Uniti orientali (Virginia settentrionale) in percorsi multiregione. Aggiorna anche la regione delle chiamate API lookup-events
. Per ulteriori informazioni sull'aggiornamento degli eventi di ricerca, incluso un comando CLI di esempio, consulta Ricerca di eventi in base a un attributo più avanti in questa sezione.
Puoi cercare gli eventi CloudTrail relativi agli ultimi 90 giorni utilizzando il comando aws cloudtrail lookup-events. Il comando lookup-events
ha le seguenti opzioni:
-
--max-results
-
--start-time
-
--lookup-attributes
-
--next-token
-
--generate-cli-skeleton
-
--cli-input-json
Queste opzioni vengono spiegate in questo argomento. Per informazioni generali sull'utilizzo di AWS Command Line Interface, consulta la Guida per l'utente di AWS Command Line Interface.
Indice
- Prerequisiti
- Visualizzazione delle informazioni di aiuto della riga di comando
- Ricerca di eventi
- Specifica del numero di eventi da restituire
- Ricerca di eventi in base a un intervallo di tempo
- Ricerca di eventi in base a un attributo
- Specifica della pagina di risultati successiva
- Recupero dell'input JSON da un file
- Campi di output della ricerca
Prerequisiti
-
Per eseguire comandi di AWS CLI, devi installare AWS CLI. Per ulteriori informazioni, consulta Installazione di AWS Command Line Interface.
-
Assicurati che la versione della AWS CLI sia successiva a 1.6.6. Per verificare la versione della CLI, esegui aws --version nella riga di comando.
-
Per impostare l'account, la regione e il formato di output di default per una sessione dell'AWS CLI, utilizza il comando aws configure. Per ulteriori informazioni, consulta Configurazione di AWS Command Line Interface.
I comandi della AWS CLI di CloudTrail fanno distinzione tra lettere maiuscole e minuscole.
Visualizzazione delle informazioni di aiuto della riga di comando
Per visualizzare le informazioni di aiuto della riga di comando per lookup-events
, digita il comando seguente:
aws cloudtrail lookup-events help
Ricerca di eventi
Per visualizzare i dieci eventi più recenti, digita il comando seguente:
aws cloudtrail lookup-events
Un evento restituito è simile al seguente esempio fittizio, che è stato formattato per agevolarne la lettura:
{ "NextToken": "kbOt5LlZe++mErCebpy2TgaMgmDvF1kYGFcH64JSjIbZFjsuvrSqg66b5YGssKutDYIyII4lrP4IDbeQdiObkp9YAlju3oXd12juy3CIZW8=", "Events": [ { "EventId": "0ebbaee4-6e67-431d-8225-ba0d81df5972", "Username": "root", "EventTime": 1424476529.0, "CloudTrailEvent": "{ \"eventVersion\":\"1.02\", \"userIdentity\":{ \"type\":\"Root\", \"principalId\":\"111122223333\", \"arn\":\"arn:aws:iam::111122223333:root\", \"accountId\":\"111122223333\"}, \"eventTime\":\"2015-02-20T23:55:29Z\", \"eventSource\":\"signin.amazonaws.com\", \"eventName\":\"ConsoleLogin\", \"awsRegion\":\"us-east-2\", \"sourceIPAddress\":\"203.0.113.4\", \"userAgent\":\"Mozilla/5.0\", \"requestParameters\":null, \"responseElements\":{\"ConsoleLogin\":\"Success\"}, \"additionalEventData\":{ \"MobileVersion\":\"No\", \"LoginTo\":\"https://console.aws.amazon.com/console/home", \"MFAUsed\":\"No\"}, \"eventID\":\"0ebbaee4-6e67-431d-8225-ba0d81df5972\", \"eventType\":\"AwsApiCall\", \"recipientAccountId\":\"111122223333\"}", "EventName": "ConsoleLogin", "Resources": [] } ] }
Per una spiegazione dei campi correlati alla ricerca nell'output, vedere la sezione Campi di output della ricerca più avanti in questo documento. Per una spiegazione dei campi nell'evento CloudTrail, consulta Contenuti dei record di CloudTrail.
Specifica del numero di eventi da restituire
Per specificare il numero di eventi da restituire, digita il comando seguente:
aws cloudtrail lookup-events --max-results
<integer>
Il valore predefinito per <integer>
è 10. I valori possibili sono da 1 a 50. L'esempio seguente restituisce un risultato.
aws cloudtrail lookup-events --max-results 1
Ricerca di eventi in base a un intervallo di tempo
Gli eventi negli ultimi 90 giorni sono disponibili per la ricerca. Per specificare un intervallo di tempo, digita il comando seguente:
aws cloudtrail lookup-events --start-time
<timestamp>
--end-time<timestamp>
--start-time
specifica che vengano restituiti solo gli eventi che si sono verificati in corrispondenza o dopo l'intervallo di tempo specificato. Se l'ora di inizio specificata è successiva all'ora di fine specificata, viene restituito un errore.<timestamp>
--end-time
specifica che vengano restituiti solo gli eventi che si sono verificati in corrispondenza o prima dell'intervallo di tempo specificato. Se l'ora di fine specificata è anteriore all'ora di inizio specificata, viene restituito un errore.<timestamp>
L'ora di inizio di default è la prima data in cui i dati sono disponibili negli ultimi 90 giorni. L'ora di fine di default è invece l'ora dell'evento che si è verificato più in vicinanza dell'ora corrente.
Formati validi per <timestamp>
Gli attributi --start-time
e --end-time
accettano valori orari UNIX o valori equivalenti validi.
Di seguito vengono illustrati alcuni esempi di formati validi. I valori di data, mese e anno possono essere separati mediante trattini o barre. Le doppie virgolette devono essere utilizzate se sono presenti spazi.
1422317782 1422317782.0 01-27-2015 01-27-2015,01:16PM "01-27-2015, 01:16 PM" "01/27/2015, 13:16" 2015-01-27 "2015-01-27, 01:16 PM"
Ricerca di eventi in base a un attributo
Per filtrare in base a un attributo, digita il comando seguente:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=
<attribute>
,AttributeValue=<string>
Puoi specificare solo una coppia chiave/valore attributo per ogni comando lookup-events. Di seguito sono riportati i valori per AttributeKey
. I nomi dei valori fanno distinzione tra lettere maiuscole e minuscole.
-
AccessKeyId
-
EventId
-
EventName
-
EventSource
-
ReadOnly
-
ResourceName
-
ResourceType
-
Username
Esempi di ricerca in base a un attributo
Il comando di esempio seguente restituisce gli eventi nella regione Stati Uniti orientali (Virginia settentrionale), us-east-1, e consente di visualizzare gli eventi di accesso alla console. Sostituisci ConsoleLogin
con il valore relativo alla tua configurazione.
aws cloudtrail --region us-east-1 lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=
ConsoleLogin
Il comando di esempio seguente restituisce gli eventi in cui il valore di AccessKeyId
è AKIAIOSFODNN7EXAMPLE
.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=AccessKeyId,AttributeValue=AKIAIOSFODNN7EXAMPLE
Il comando di esempio seguente restituisce l'evento per il valore EventId
CloudTrail specificato.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventId,AttributeValue=b5cc8c40-12ba-4d08-a8d9-2bceb9a3e002
Il comando di esempio seguente restituisce gli eventi in cui il valore di EventName
è RunInstances
.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=RunInstances
Il comando di esempio seguente restituisce gli eventi in cui il valore di EventSource
è iam.amazonaws.com
.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventSource,AttributeValue=iam.amazonaws.com
Il comando di esempio seguente restituisce gli eventi di scrittura. Esclude gli eventi di lettura, ad esempio GetBucketLocation
e DescribeStream
.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=ReadOnly,AttributeValue=false
Il comando di esempio seguente restituisce gli eventi in cui il valore di ResourceName
è CloudTrail_CloudWatchLogs_Role
.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=ResourceName,AttributeValue=CloudTrail_CloudWatchLogs_Role
Il comando di esempio seguente restituisce gli eventi in cui il valore di ResourceType
è AWS::S3::Bucket
.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=ResourceType,AttributeValue=AWS::S3::Bucket
Il comando di esempio seguente restituisce gli eventi in cui il valore di Username
è root
.
aws cloudtrail lookup-events --lookup-attributes AttributeKey=Username,AttributeValue=root
Specifica della pagina di risultati successiva
Per visualizzare la pagina di risultati successiva mediante un comando lookup-events
, digita il comando seguente:
aws cloudtrail lookup-events
<same parameters as previous command>
--next-token=<token>
dove il valore di <token>
viene acquisito dal primo campo dell'output del comando precedente.
Quando utilizzi --next-token
in un comando, devi utilizzare gli stessi parametri usati nel comando precedente. Ad esempio, supponiamo che tu abbia eseguito il seguente configurazione:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=Username,AttributeValue=root
Per visualizzare la pagina di risultati successiva, il comando successivo avrà il formato seguente:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=Username,AttributeValue=root --next-token=kbOt5LlZe++mErCebpy2TgaMgmDvF1kYGFcH64JSjIbZFjsuvrSqg66b5YGssKutDYIyII4lrP4IDbeQdiObkp9YAlju3oXd12juy3CIZW8=
Recupero dell'input JSON da un file
L'AWS CLI per alcuni servizi AWS dispone di due parametri (--generate-cli-skeleton
e --cli-input-json
) che puoi utilizzare per generare un modello JSON modificabile e utilizzabile come input del parametro --cli-input-json
. Questa sezione descrive come utilizzare questi parametri con aws cloudtrail lookup-events
. Per ulteriori informazioni generali, consulta l'argomento relativo alla generazione dei parametri JSON per l'input della CLI e per lo skeleton della CLI.
Per cercare eventi CloudTrail recuperando l'input JSON da un file
-
Crea un modello di input da usare con
lookup-events
reindirizzando l'output di--generate-cli-skeleton
in un file, come nell'esempio seguente.aws cloudtrail lookup-events --generate-cli-skeleton > LookupEvents.txt
Il file di modello generato (in questo caso, LookupEvents.txt) sarà simile al seguente:
{ "LookupAttributes": [ { "AttributeKey": "", "AttributeValue": "" } ], "StartTime": null, "EndTime": null, "MaxResults": 0, "NextToken": "" }
-
Utilizza un editor di testo per modificare l'input JSON in base alle esigenze. L'input JSON deve contenere solo i valori specificati.
Importante Tutti i valori vuoti o null devono essere rimossi dal modello prima di utilizzarlo.
L'esempio seguente specifica un intervallo di tempo e il numero massimo di risultati da restituire.
{ "StartTime": "2015-01-01", "EndTime": "2015-01-27", "MaxResults": 2 }
-
Per utilizzare il file modificato come input, utilizza la sintassi
--cli-input-json file://
<filename>
, come nell'esempio seguente:aws cloudtrail lookup-events --cli-input-json file://LookupEvents.txt
Puoi usare altri argomenti sulla stessa riga di comando come --cli-input-json
.
Campi di output della ricerca
- Eventi
-
Un elenco di eventi di ricerca in base all'attributo di ricerca e all'intervallo di tempo specificati. L'elenco di eventi è ordinato in base all'ora, con l'ultimo evento elencato per primo. Ogni voce contiene informazioni sulla richiesta di ricerca e include una rappresentazione di stringa dell'evento CloudTrail recuperato.
Le voci seguenti descrivono i campi in ogni evento di ricerca.
- CloudTrailEvent
-
Stringa JSON contenente una rappresentazione oggetto dell'evento restituito. Per informazioni su ciascuno degli elementi restituiti, consulta l'argomento relativo al contenuto del corpo dei record.
- EventId
-
Stringa contenente il GUID dell'evento restituito.
- EventName
-
Stringa contenente il nome dell'evento restituito.
- EventSource
-
Servizio AWS a cui è stata eseguita la richiesta.
- EventTime
-
Data e ora, in formato UNIX, dell'evento.
- Risorse
-
Elenco delle risorse a cui fa riferimento l'evento restituito. Ogni voce specifica un tipo e un nome di risorsa.
- ResourceName
-
Stringa contenente il nome della risorsa a cui l'evento fa riferimento.
- ResourceType
-
Stringa contenente il tipo di una risorsa a cui l'evento fa riferimento. Quando risulta impossibile determinare il tipo di risorsa, viene restituito un valore null.
- Nome utente
-
Stringa contenente il nome utente dell'account per l'evento restituito.
- NextToken
-
Stringa per visualizzare la pagina di risultati successiva generata da un precedente comando
lookup-events
. Per usare il token, i parametri devono essere uguali a quelli specificati nel comando originale. Se nell'output non è presente alcuna voceNextToken
, significa che non sono presenti altri risultati da restituire.