Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
databaseActivityEventAfficher le tableau JSON pour les flux d'activité de base de données
La charge utile du journal d'audit est un tableau JSON databaseActivityEventList
chiffré. Ci-dessous, les tableaux répertorient par ordre alphabétique les champs de chaque événement d'activité dans le tableau DatabaseActivityEventList
déchiffré d'un journal d'audit. Les champs diffèrent selon que vous utilisez Aurora PostgreSQL ou Aurora MySQL. Consultez la table qui s'applique à votre moteur de base de données.
Important
Il se peut que la structure d'événement change. Il se peut qu'Aurora ajoute de nouveaux champs aux événements d'activité à l'avenir. Dans les applications qui analysent les données JSON, assurez-vous que votre code peut ignorer ou prendre les mesures appropriées pour les noms de champs inconnus.
databaseActivityEventListe des champs pour Aurora PostgreSQL
Les databaseActivityEventList
champs suivants concernent Aurora PostgreSQL.
Champ | Type de données | Description |
---|---|---|
class |
chaîne |
La classe d'un événement d'activité. Les valeurs possibles pour Aurora PostgreSQL sont les suivantes :
|
clientApplication |
chaîne | Application utilisée par le client pour se connecter, telle que signalée par le client. Le client n'a pas à fournir cette information, la valeur peut être « null ». |
command |
chaîne | Nom de la commande SQL sans aucun détail sur la commande |
commandText |
chaîne |
Instruction SQL réelle transmise par l'utilisateur. Pour Aurora PostgreSQL, la valeur est identique à l'instruction SQL d'origine. Ce champ est utilisé pour tous les types d'enregistrements, excepté pour les enregistrements de connexion ou de déconnexion, auxquels cas la valeur est « null ». ImportantLe texte SQL complet de chaque instruction est visible dans le journal d'audit du flux d'activité, y compris les données sensibles. Cependant, les mots de passe des utilisateurs de la base de données sont masqués si Aurora peut les deviner suivant le contexte, comme le montre l'exemple suivant.
|
databaseName |
chaîne | Base de données à laquelle l'utilisateur s'est connecté. |
dbProtocol |
chaîne | Le protocole de base de données, par exemple Postgres 3.0 . |
dbUserName |
chaîne | L'utilisateur de la base de données avec lequel le client s'est authentifié. |
errorMessage (enregistrements d'activité de base de données version 1.1 uniquement) |
chaîne |
En cas d'erreur, ce champ contient le message d'erreur qui aurait été généré par le serveur de base de données. La valeur Une erreur est définie comme étant une activité quelconque qui produirait un événement de journal d'erreurs PostgreSQL visible par le client avec un niveau de gravité égal ou supérieur à Les erreurs internes du serveur PostgreSQL, telles que les erreurs de processus du pointeur de contrôle en arrière-plan, ne génèrent pas de message d'erreur. Cependant, des enregistrements sont toujours émis pour des événements de ce type, quel que soit le paramètre du niveau de gravité du journal. Cela empêche les pirates informatiques de désactiver la journalisation pour tenter d'éviter la détection. Voir aussi le champ |
exitCode |
int | Valeur utilisée pour l'enregistrement en sortie de session. En cas de sortie sans problème, elle contient le code de sortie. Un code de sortie ne peut pas toujours être obtenu dans certains scénarios d'échec. Par exemple, si PostgreSQL effectue un exit() ou si un opérateur exécute une commande telle que kill -9 .Si une erreur s'est produite, le champ Voir aussi le champ |
logTime |
chaîne | Horodatage, tel qu'il est enregistré dans l'audit du chemin du code. Cela représente l'heure de fin d'exécution de l'instruction SQL. Voir aussi le champ startTime . |
netProtocol |
chaîne | Protocole de communication réseau. |
objectName |
chaîne | Nom de l'objet de la base de données si l'instruction SQL agit sur l'un d'eux. Ce champ n'est utilisé que lorsque l'instruction SQL agit sur un objet de base de données. Si l'instruction SQL n'agit pas sur un objet, la valeur est « null ». |
objectType |
chaîne | Type de l'objet de base de données, par exemple, table, index, vue, etc. Ce champ n'est utilisé que lorsque l'instruction SQL agit sur un objet de base de données. Si l'instruction SQL n'agit pas sur un objet, la valeur est « null ». Les valeurs valides sont notamment les suivantes :
|
paramList |
chaîne | Tableau de paramètres séparés par des virgules, transmis à l'instruction SQL. Si l'instruction SQL n'a pas de paramètres, la valeur est un tableau vide. |
pid |
int | ID du processus de backend qui est dédié au service de la connexion du client. |
remoteHost |
chaîne | L'adresse IP du client ou le nom d'hôte. Pour Aurora PostgreSQL, le paramètre log_hostname de la base de données détermine lequel est utilisé. La remoteHost valeur inclut également [local] et localhost qui indiquent l'activité de l'rdsadmin utilisateur. |
remotePort |
chaîne | Numéro de port du client. |
rowCount |
int | Numéro des lignes de la table affectées ou récupérées par l'instruction SQL. Ce champ n'est utilisé que pour les instructions SQL qui sont des instructions en langage de manipulation de données (DML). Si l'instruction SQL n'est pas une instruction DML, la valeur est « null ». |
serverHost |
chaîne | Adresse IP de l'hôte du serveur de base de données. La serverHost valeur inclut également [local] et localhost qui indiquent l'activité de l'rdsadmin utilisateur. |
serverType |
chaîne | Type du serveur de base de données, par exemple PostgreSQL . |
serverVersion |
chaîne | Version du serveur de base de données, par exemple 2.3.1 pour Aurora PostgreSQL. |
serviceName |
chaîne | Nom du service, par exemple Amazon Aurora PostgreSQL-Compatible edition . |
sessionId |
int | Identifiant de session à pseudo unique. |
sessionId |
int | Identifiant de session à pseudo unique. |
startTime (enregistrements d'activité de base de données version 1.1 uniquement) |
chaîne |
Heure à laquelle l'exécution a commencé pour l'instruction SQL. Pour calculer le temps d'exécution approximatif de l'instruction SQL, utilisez |
statementId |
int | Identificateur de l'instruction SQL du client. Le compteur se trouve au niveau de la session et s'incrémente avec chaque instruction SQL entrée par le client. |
substatementId |
int | Identificateur d'une sous-instruction SQL. Cette valeur compte le nombre de sous-instructions pour chaque instruction identifiée par le champ statementId . |
type |
chaîne | Type d'événement. Les valeurs valides sont record ou heartbeat . |
databaseActivityEventListe des champs pour Aurora MySQL
Les databaseActivityEventList
champs suivants concernent Aurora MySQL.
Champ | Type de données | Description |
---|---|---|
class |
chaîne |
La classe d'un événement d'activité. Les valeurs possibles pour Aurora MySQL sont les suivantes :
|
clientApplication |
chaîne | Application utilisée par le client pour se connecter, telle que signalée par le client. Le client n'a pas à fournir cette information, la valeur peut être « null ». |
command |
chaîne |
Catégorie générale de l'instruction SQL. Les valeurs de ce champ dépendent de la valeur de Lorsque
Lorsque
|
commandText |
chaîne |
Pour les événements dont la valeur Pour les événements dont la valeur Pour Aurora MySQL, les caractères tels que les guillemets sont précédés d'une barre oblique inverse, représentant un caractère d'échappement. ImportantLe texte SQL complet de chaque instruction est visible dans le journal d'audit, y compris les données sensibles. Cependant, les mots de passe des utilisateurs de la base de données sont masqués si Aurora peut les deviner suivant le contexte, comme le montre l'exemple suivant.
NoteSpécifiez un mot de passe autre que celui indiqué ici, en tant que bonne pratique de sécurité. |
databaseName |
chaîne | Base de données à laquelle l'utilisateur s'est connecté. |
dbProtocol |
chaîne | Protocole de la base de données. Actuellement, cette valeur est toujours MySQL pour Aurora MySQL. |
dbUserName |
chaîne | L'utilisateur de la base de données avec lequel le client s'est authentifié. |
endTime (enregistrements d'activité de base de données version 1.2 uniquement) |
chaîne |
Heure à laquelle l'exécution a fini pour l'instruction SQL. Il est représenté au format UTC (temps universel coordonné). Pour calculer le temps d'exécution de l'instruction SQL, utilisez |
errorMessage (enregistrements d'activité de base de données version 1.1 uniquement) |
chaîne |
En cas d'erreur, ce champ contient le message d'erreur qui aurait été généré par le serveur de base de données. La valeur Une erreur est définie comme étant une activité quelconque qui produirait un événement de journal d'erreurs MySQL visible par le client avec un niveau de gravité égal ou supérieur à Les erreurs internes du serveur MySQL, telles que les erreurs de processus du pointeur de contrôle en arrière-plan, ne génèrent pas de message d'erreur. Cependant, des enregistrements sont toujours émis pour des événements de ce type, quel que soit le paramètre du niveau de gravité du journal. Cela empêche les pirates informatiques de désactiver la journalisation pour tenter d'éviter la détection. Voir aussi le champ |
exitCode |
int | Valeur utilisée pour l'enregistrement en sortie de session. En cas de sortie sans problème, elle contient le code de sortie. Un code de sortie ne peut pas toujours être obtenu dans certains scénarios d'échec. Dans de tels cas, cette valeur peut être nulle ou vide. |
logTime |
chaîne | Horodatage, tel qu'il est enregistré dans l'audit du chemin du code. Il est représenté au format UTC (temps universel coordonné). Pour connaître la méthode la plus précise de calculer la durée de l'instruction, veuillez consulter les champs startTime et endTime . |
netProtocol |
chaîne | Protocole de communication réseau. Actuellement, cette valeur est toujours TCP pour Aurora MySQL. |
objectName |
chaîne | Nom de l'objet de la base de données si l'instruction SQL agit sur l'un d'eux. Ce champ n'est utilisé que lorsque l'instruction SQL agit sur un objet de base de données. Si l'instruction SQL n'agit pas sur un objet, cette valeur est vide. Pour construire le nom complet de l'objet, combinez databaseName et objectName . Si la requête comprend plusieurs objets, ce champ peut être une liste de noms séparés par des virgules. |
objectType |
chaîne |
Type de l'objet de base de données, par exemple, table, index, etc. Ce champ n'est utilisé que lorsque l'instruction SQL agit sur un objet de base de données. Si l'instruction SQL n'agit pas sur un objet, la valeur est « null ». Les valeurs valides pour Aurora MySQL sont notamment les suivantes :
|
paramList |
chaîne | Ce champ n'est pas utilisé pour Aurora MySQL et est toujours « null ». |
pid |
int | ID du processus de backend qui est dédié au service de la connexion du client. Lorsque le serveur de base de données est redémarré, les modifications pid et le compteur du champ statementId redémarrent. |
remoteHost |
chaîne | L'adresse IP ou le nom d'hôte du client qui a émis l'instruction SQL. Pour Aurora MySQL, le paramètre skip_name_resolve de la base de données détermine lequel est utilisé. La valeur localhost indique l'activité de l'utilisateur spécial rdsadmin . |
remotePort |
chaîne | Numéro de port du client. |
rowCount |
int | Nombre de lignes renvoyées par l'instruction SQL. Par exemple, si une instruction SELECT renvoie 10 lignes, rowCount est égal à 10. Pour les instructions INSERT ou UPDATE, rowCount est égal 0. |
serverHost |
chaîne | Identificateur d'instance du serveur de base de données. |
serverType |
chaîne | Type du serveur de base de données, par exemple MySQL . |
serverVersion |
chaîne | Version du serveur de base de données. Actuellement, cette valeur est toujours MySQL 5.7.12 pour Aurora MySQL. |
serviceName |
chaîne | Nom du service. Actuellement, cette valeur est toujours Amazon Aurora MySQL pour Aurora MySQL. |
sessionId |
int | Identifiant de session à pseudo unique. |
startTime (enregistrements d'activité de base de données version 1.1 uniquement) |
chaîne |
Heure à laquelle l'exécution a commencé pour l'instruction SQL. Il est représenté au format UTC (temps universel coordonné). Pour calculer le temps d'exécution de l'instruction SQL, utilisez |
statementId |
int | Identificateur de l'instruction SQL du client. Le compteur s'incrémente avec chaque instruction SQL saisie par le client. Le compteur est réinitialisé lorsque l'instance de base de données est redémarrée. |
substatementId |
int | Identificateur d'une sous-instruction SQL. Cette valeur est 1 pour les événements de classe MAIN et 2 pour les événements de classe AUX . Utilisez le champ statementId pour identifier tous les événements générés par la même instruction. |
transactionId (enregistrements d'activité de base de données version 1.2 uniquement) |
int | Identificateur d'une transaction. |
type |
chaîne | Type d'événement. Les valeurs valides sont record ou heartbeat . |