Contenuto di un evento log di audit

Descrive il contenuto di un evento log di audit.

Di seguito viene descritto il contenuto di un evento log di audit. Ogni evento del log di audit include due parti principali: 

  • Buste che fungono da contenitore per tutti i messaggi evento
  • Payload che contengono dati dalla risorsa che emette il messaggio di evento

Identificativi risorsa

La maggior parte dei tipi di risorse Oracle Cloud Infrastructure ha un identificativo univoco assegnato da Oracle chiamato OCID (Oracle Cloud ID). Per informazioni sul formato OCID e su altri modi per identificare le risorse, vedere Identificativi delle risorse.

Busta evento

Questi attributi per una busta evento sono uguali per tutti gli eventi. La struttura della busta segue il formato standard del settore CloudEvents ospitato da Cloud Native Computing Foundation ( CNCF).

Proprietà descrizione;
cloudEventsVersion

La versione della specifica CloudEvents.

Nota: l'audit utilizza la specifica della versione 0.1 dell'envelope evento CloudEvents.

contentType Impostare su application/json. Il tipo di contenuto dei dati contenuti nell'attributo data.
data Il payload dell'evento. Le informazioni contenute in data provengono dalla risorsa che emette l'evento.
eventID

L'UUID dell'evento. Questo identificativo non è un OCID, ma solo un ID univoco per l'evento.

eventTime L'ora dell'evento, espressa nel formato dell'indicatore orario RFC 3339.
eventType

Tipo dell'evento che si è verificato.

Nota: il servizio che produce l'evento può anche aggiungere, rimuovere o modificare il significato di un campo. Un servizio che implementa queste modifiche al tipo pubblicherà una nuova versione di un file eventType e rivedrà il campo eventTypeVersion.

eventTypeVersion

Versione del tipo di evento. Questa versione si applica al payload dell'evento, non all'envelope. Utilizzare cloudEventsVersion per determinare la versione dell'envelope.

source La risorsa che ha prodotto l'evento. Ad esempio, un Autonomous Database o un bucket di storage degli oggetti.

Payload

I dati in questi campi dipendono dal servizio che ha prodotto il log eventi e dal tipo di evento definito.

Dati

L'oggetto dati contiene gli attributi riportati di seguito.

Proprietà Descrizione
data.additionalDetails Oggetto contenitore per gli attributi univoci della risorsa che emette l'evento.
data.availabilityDomain Il dominio di disponibilità in cui risiede la risorsa.
data.compartmentId OCID del compartimento della risorsa che emette l'evento.
data.compartmentName Nome del compartimento della risorsa che emette l'evento.
data.definedTags Tag definite aggiunte alla risorsa che emette l'evento.
data.eventGroupingId

Questo valore collega più eventi di audit che fanno parte della stessa operazione API. Ad esempio, un'operazione API con tempi di esecuzione lunghi che emette un evento all'inizio e alla fine dell'operazione.

data.eventName

Nome dell'operazione API che ha generato questo evento.

Esempio: LaunchInstance

data.freeformTags Tag in formato libero aggiunte alla risorsa che emette l'evento.
data.identity Oggetto contenitore per gli attributi di identità. Vedere Identità.
data.request Oggetto contenitore per gli attributi di richiesta. Vedere Richiesta.
data.resourceId OCID o ID della risorsa che emette l'evento.
data.resourceName Nome della risorsa che emette l'evento.
data.response Oggetto contenitore per gli attributi di risposta. Vedere Risposta.
data.stateChange Oggetto contenitore per gli attributi di modifica dello stato. Vedere Modifica stato.

Identità

L'oggetto identità contiene i seguenti attributi.

Proprietà descrizione;
data.identity.authType Il tipo di autenticazione utilizzato.
data.identity.callerId OCID del chiamante. Il chiamante che ha fatto una richiesta per conto del principale.
data.identity.callerName Nome dell'utente o del servizio che ha emesso la richiesta. Questo valore è il nome descrittivo associato a callerId.
data.identity.consoleSessionId Questo valore identifica qualsiasi sessione della console associata a questa richiesta.
data.identity.credentials L'ID credenziale dell'utente.
data.identity.ipAddress L'indirizzo IP dell'origine della richiesta.
data.identity.principalId OCID del principal.
data.identity.principalName Nome dell'utente o del servizio. Questo valore è il nome descrittivo associato a principalId.
data.identity.tenantId OCID del tenant.
data.identity.userAgent L'user agent del client che ha effettuato la richiesta.

Richiesta

L'oggetto richiesta contiene i seguenti attributi.

Proprietà descrizione;
data.request.action

Metodo HTTP della richiesta.

Esempio: GET

data.request.headers I campi e i valori dell'intestazione HTTP nella richiesta.
data.request.id L'identificativo univoco di una richiesta.
data.request.parameters Tutti i parametri forniti dal chiamante durante questa operazione.
data.request.path

Il percorso completo della richiesta API.

Esempio: /20160918/instances/ocid1.instance.oc1.phx.<unique_ID>

Risposta

L'oggetto risposta contiene i seguenti attributi.

Proprietà Descrizione
data.response.headers Le intestazioni della risposta.
data.response.message Descrizione amichevole di ciò che è successo durante l'operazione.
data.response.payload Questo valore viene incluso per la compatibilità con le versioni precedenti dello schema Audit versione 1, in cui conteneva metadati di interesse dal payload della risposta.
data.response.responseTime L'ora della risposta alla richiesta sottoposta ad audit, espressa nel formato dell'indicatore orario RFC 3339.
data.response.status Codice di stato della risposta.

Modifica stato

L'oggetto di modifica dello stato contiene gli attributi riportati di seguito.

Proprietà Descrizione
data.stateChange.current Fornisce lo stato corrente dei campi che potrebbero essere stati modificati durante un'operazione. Per determinare come l'operazione corrente ha modificato una risorsa, confrontare le informazioni in questo attributo con data.stateChange.previous.
data.stateChange.previous Fornisce lo stato precedente dei campi che potrebbero essere stati modificati durante un'operazione. Per determinare come l'operazione corrente ha modificato una risorsa, confrontare le informazioni in questo attributo con data.stateChange.current.

Un log di controllo di esempio

Di seguito è riportato un esempio di evento registrato dal servizio di audit.

{
	"eventType": "com.oraclecloud.ComputeApi.GetInstance",
	"cloudEventsVersion": "0.1",
	"eventTypeVersion": "2.0",
	"source": "ComputeApi",
	"eventId": "<unique_ID>",
	"eventTime": "2019-09-18T00:10:59.252Z",
	"contentType": "application/json",
	"data": {
		"eventGroupingId": null,
		"eventName": "GetInstance",
		"compartmentId": "ocid1.tenancy.oc1..<unique_ID>",
		"compartmentName": "compartmentA",
		"resourceName": "my_instance",
		"resourceId": "ocid1.instance.oc1.phx.<unique_ID>",
		"availabilityDomain": "<availability_domain>",
		"freeformTags": null,
		"definedTags": null,
		"identity": {
			"principalName": "ExampleName",
			"principalId": "ocid1.user.oc1..<unique_ID>",
			"authType": "natv",
			"callerName": null,
			"callerId": null,
			"tenantId": "ocid1.tenancy.oc1..<unique_ID>",
			"ipAddress": "172.24.80.88",
			"credentials": null,
			"userAgent": "Jersey/2.23 (HttpUrlConnection 1.8.0_212)",
			"consoleSessionId": null
		},
		"request": {
			"id": "<unique_ID>",
			"path": "/20160918/instances/ocid1.instance.oc1.phx.<unique_ID>",
			"action": "GET",
			"parameters": {},
			"headers": {
				"opc-principal": [
					"{\"tenantId\":\"ocid1.tenancy.oc1..<unique_ID>\",\"subjectId\":\"ocid1.user.oc1..<unique_ID>\",\"claims\":[{\"key\":\"pstype\",\"value\":\"natv\",\"issuer\":\"authService.oracle.com\"},{\"key\":\"h_host\",\"value\":\"iaas.r2.oracleiaas.com\",\"issuer\":\"h\"},{\"key\":\"h_opc-request-id\",\"value\":\"<unique_ID>\",\"issuer\":\"h\"},{\"key\":\"ptype\",\"value\":\"user\",\"issuer\":\"authService.oracle.com\"},{\"key\":\"h_date\",\"value\":\"Wed, 18 Sep 2019 00:10:58 UTC\",\"issuer\":\"h\"},{\"key\":\"h_accept\",\"value\":\"application/json\",\"issuer\":\"h\"},{\"key\":\"authorization\",\"value\":\"Signature headers=\\\"date (request-target) host accept opc-request-id\\\",keyId=\\\"ocid1.tenancy.oc1..<unique_ID>/ocid1.user.oc1..<unique_ID>/8c:b4:5f:18:e7:ec:db:08:b8:fa:d2:2a:7d:11:76:ac\\\",algorithm=\\\"rsa-pss-sha256\\\",signature=\\\"<unique_ID>\\\",version=\\\"1\\\"\",\"issuer\":\"h\"},{\"key\":\"h_(request-target)\",\"value\":\"get /20160918/instances/ocid1.instance.oc1.phx.<unique_ID>\",\"issuer\":\"h\"}]}"
				],
				"Accept": [
					"application/json"
				],
				"X-Oracle-Auth-Client-CN": [
					"splat-proxy-se-02302.node.ad2.r2"
				],
				"X-Forwarded-Host": [
					"compute-api.svc.ad1.r2"
				],
				"Connection": [
					"close"
				],
				"User-Agent": [
					"Jersey/2.23 (HttpUrlConnection 1.8.0_212)"
				],
				"X-Forwarded-For": [
					"172.24.80.88"
				],
				"X-Real-IP": [
					"172.24.80.88"
				],
				"oci-original-url": [
					"https://iaas.r2.oracleiaas.com/20160918/instances/ocid1.instance.oc1.phx.<unique_ID>"
				],
				"opc-request-id": [
					"<unique_ID>"
				],
				"Date": [
					"Wed, 18 Sep 2019 00:10:58 UTC"
				]
			}
		},
		"response": {
			"status": "200",
			"responseTime": "2019-09-18T00:10:59.278Z",
			"headers": {
				"ETag": [
					"<unique_ID>"
				],
				"Connection": [
					"close"
				],
				"Content-Length": [
					"1828"
				],
				"opc-request-id": [
					"<unique_ID>"
				],
				"Date": [
					"Wed, 18 Sep 2019 00:10:59 GMT"
				],
				"Content-Type": [
					"application/json"
				]
			},
			"payload": {
				"resourceName": "my_instance",
				"id": "ocid1.instance.oc1.phx.<unique_ID>"
			},
			"message": null
		},
		"stateChange": {
			"previous": null,
			"current": null
		},
		"additionalDetails": {
			"imageId": "ocid1.image.oc1.phx.<unique_ID>",
			"shape": "VM.Standard1.1",
			"type": "CustomerVmi"
		}
	}
}