Contenu d'un événement de journal d'audit
Décrit le contenu d'un événement de journal d'audit.
La section suivante décrit le contenu d'un événement de journal d'audit. Chaque événement de journal d'audit inclut deux parties principales :
- Des enveloppes qui agissent en tant que conteneurs pour tous les messages d'événement
- Des charges utiles qui contiennent des données issues de la ressource émettant le message d'événement
Identificateurs de la ressource
La plupart des types de ressource Oracle Cloud Infrastructure possèdent un identificateur unique affecté par Oracle appelé ID Oracle Cloud (OCID). Pour plus d'informations sur le format OCID et d'autres façons d'identifier vos ressources , reportez-vous à Identificateurs de ressource.
Enveloppe d'événements
Ces attributs d'une enveloppe d'événement sont identiques pour tous les événements. La structure de l'enveloppe suit le format standard du secteur CloudEvents hébergé par Cloud Native Computing Foundation ( CNCF).
Propriété | Description |
---|---|
cloudEventsVersion
|
Version de la spécification CloudEvents. Remarque : Audit utilise la spécification version 0.1 de l'enveloppe d'événement CloudEvents. |
contentType
|
Définissez cette propriété sur application/json . Type de contenu des données se trouvant dans l'attribut data . |
data
|
Charge utile de l'événement. Les informations figurant dans data proviennent de la ressource émettant l'événement. |
eventID
|
UUID de l'événement. Cet identificateur n'est pas un OCID, mais simplement l'ID unique de l'événement. |
eventTime
|
Heure de l'événement, exprimée au format d'horodatage RFC 3339. |
eventType
|
Type de l'événement qui s'est produit. Remarque : Le service qui produit l'événement peut également ajouter ou enlever un champ, ou modifier sa signification. Un service implémentant ces modifications de type publierait une nouvelle version du champ |
eventTypeVersion
|
Version du type d'événement. Cette version s'applique à la charge utile de l'événement, et non à l'enveloppe. Utilisez |
source
|
Ressource ayant généré l'événement. Par exemple, un bucket Autonomous Database ou Object Storage. |
Charge utile
Les données de ces champs dépendent du service qui a généré le journal des événements et du type d'événement qu'il définit.
Data
L'objet data contient les attributs suivants.
Propriété | Description |
---|---|
data.additionalDetails
|
Objet de conteneur pour les attributs propres à la ressource émettant l'événement. |
data.availabilityDomain
|
Domaine de disponibilité dans lequel se trouve la ressource. |
data.compartmentId
|
OCID du compartiment de la ressource émettant l'événement. |
data.compartmentName
|
Nom du compartiment de la ressource émettant l'événement. |
data.definedTags
|
Balises définies ajoutées à la ressource émettant l'événement. |
data.eventGroupingId
|
Cette valeur lie plusieurs événements d'audit qui font partie de la même opération d'API. Par exemple, une opération d'API à longue durée d'exécution qui émet un événement au début et à la fin de l'opération. |
data.eventName
|
Nom de l'opération d'API qui a généré cet événement. Exemple : |
data.freeformTags
|
Balises à format libre ajoutées à la ressource émettant l'événement. |
data.identity
|
Objet de conteneur pour les attributs d'identité. Reportez-vous à Identité. |
data.request
|
Objet de conteneur pour les attributs de demande. Reportez-vous à Demande. |
data.resourceId
|
OCID ou ID de la ressource émettant l'événement. |
data.resourceName
|
Nom de la ressource émettant l'événement. |
data.response
|
Objet de conteneur pour les attributs de réponse. Reportez-vous à Réponse. |
data.stateChange
|
Objet de conteneur pour les attributs de modification d'état. Reportez-vous à Modification de l'état. |
Identité
L'objet identity contient les attributs suivants.
Propriété | Description |
---|---|
data.identity.authType
|
Type d'authentification utilisé. |
data.identity.callerId
|
OCID de l'appelant. Appelant ayant effectué une demande au nom du principal. |
data.identity.callerName
|
Nom de l'utilisateur ou du service émettant la demande. Cette valeur est le nom convivial associé à callerId . |
data.identity.consoleSessionId
|
Cette valeur identifie toute session de la console associée à cette demande. |
data.identity.credentials
|
ID d'information d'identification de l'utilisateur. |
data.identity.ipAddress
|
Adresse IP de la source de la demande. |
data.identity.principalId
|
OCID du principal. |
data.identity.principalName
|
Nom de l'utilisateur ou du service. Cette valeur est le nom convivial associé à principalId . |
data.identity.tenantId
|
OCID du locataire. |
data.identity.userAgent
|
Agent utilisateur du client qui a formulé la demande. |
Demande
L'objet request contient les attributs suivants.
Propriété | Description |
---|---|
data.request.action
|
Méthode HTTP de la demande. Exemple : |
data.request.headers
|
Champs et valeurs d'en-tête HTTP dans la demande. |
data.request.id
|
Identificateur unique d'une demande. |
data.request.parameters
|
Tous les paramètres fournis par l'appelant pendant cette opération. |
data.request.path
|
Chemin complet de la demande d'API. Exemple : |
Réponse
L'objet response contient les attributs suivants.
Propriété | Description |
---|---|
data.response.headers
|
En-têtes de la réponse. |
data.response.message
|
Description conviviale de ce qui s'est produit lors de l'opération. |
data.response.payload
|
Cette valeur est incluse à des fins de compatibilité amont avec le schéma d'audit version 1, dans lequel elle contient les métadonnées d'intérêt de la charge utile de réponse. |
data.response.responseTime
|
Heure de la réponse à la demande soumise à un audit, exprimée au format d'horodatage RFC 3339. |
data.response.status
|
Code de statut de la réponse. |
Modification de l'état
L'objet stateChange contient les attributs suivants.
Propriété | Description |
---|---|
data.stateChange.current
|
Indique l'état en cours des champs qui ont pu changer lors d'une opération. Pour déterminer la façon dont l'opération en cours a modifié une ressource, comparez les informations de cet attribut à data.stateChange.previous . |
data.stateChange.previous
|
Indique l'état précédent des champs qui ont pu changer lors d'une opération. Pour déterminer la façon dont l'opération en cours a modifié une ressource, comparez les informations de cet attribut à data.stateChange.current . |
Exemple de journal d'audit
Voici un exemple d'événement enregistré par le service 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"
}
}
}