Prise en charge du plugin d'audit MariaDB pour MySQL - Amazon Relational Database Service

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.

Prise en charge du plugin d'audit MariaDB pour MySQL

Amazon RDS propose un plug-in d'audit pour les instances de base de données MySQL basé sur le plug-in d'audit MariaDB open source. Pour plus d'informations, consultez le référentiel GitHub Audit Plugin for MySQL Server.

Note

Le plug-in d'audit pour MySQL est basé sur le plug-in d'audit MariaDB. Tout au long de cet article, nous l'appelons Plug-in d'audit MariaDB.

Le plugin d'audit MariaDB enregistre l'activité de la base de données, y compris la connexion des utilisateurs à la base de données et les requêtes exécutées sur la base de données. L'enregistrement de l'activité de la base de données est stocké dans un fichier journal.

Note

Actuellement, le plug-in d'audit MariaDB est uniquement pris en charge pour les versions RDS for MySQL suivantes :

  • MySQL 8.0.28 et versions 8.0 ultérieures

  • Toutes les versions MySQL 5.7

Paramètres de l'option du plugin d'audit

Amazon RDS prend en charge les paramètres suivants pour l'option de plugin d'audit MariaDB.

Paramètre d'option Valeurs valides Valeur par défaut Description

SERVER_AUDIT_FILE_PATH

/rdsdbdata/log/audit/

/rdsdbdata/log/audit/

Emplacement du fichier journal. Le fichier journal contient l'enregistrement de l'activité spécifiée dans SERVER_AUDIT_EVENTS. Pour de plus amples informations, veuillez consulter Liste et affichage des fichiers journaux de base de données et Fichiers journaux de base de données MySQL.

SERVER_AUDIT_FILE_ROTATE_SIZE

1–1000000000

1000000

Taille en octets qui, lorsqu'elle est atteinte, entraîne la rotation du fichier. Pour plus d'informations, consultez Présentation des journaux de base de données RDS for MySQL.

SERVER_AUDIT_FILE_ROTATIONS

0–100

9

Nombre de rotations de journaux à enregistrer quand server_audit_output_type=file. S'il est défini sur 0, le fichier journal ne pivote jamais. Pour plus d'informations, consultez Présentation des journaux de base de données RDS for MySQL et Téléchargement d'un fichier journal de base de données.

SERVER_AUDIT_EVENTS

CONNECT, QUERY, QUERY_DDL, QUERY_DML, QUERY_DML_NO_SELECT, QUERY_DCL

CONNECT, QUERY

Types d'activités à enregistrer dans le journal. L'installation du plugin d'audit MariaDB est elle-même enregistrée.

  • CONNECT : Permet d'enregistrer les connexions à la base de données, réussies ou non, et les déconnexions de la base de données.

  • QUERY : Permet d'enregistrer le texte de toutes les requêtes exécutées sur la base de données.

  • QUERY_DDL : semblable à l'événement QUERY, mais renvoie uniquement les requêtes en langage de définition de données (DDL) (CREATE, ALTER, etc.).

  • QUERY_DML : semblable à l'événement QUERY, mais renvoie uniquement les requêtes en langage de manipulation de données (DML) (INSERT, UPDATE, SELECT, etc.).

  • QUERY_DML_NO_SELECT : Similaire à l'événement QUERY_DML, mais ne journalise pas les requêtes SELECT.

    Le paramètre QUERY_DML_NO_SELECT n'est pris en charge que pour RDS for MySQL 5.7.34 et versions 5.7 ultérieures et 8.0.25 et versions 8.0 ultérieures.

  • QUERY_DCL : semblable à l'événement QUERY, mais renvoie uniquement les requêtes en langage de contrôle de données (DCL) (GRANT, REVOKE, etc.).

Pour MySQL, TABLE n'est pas pris en charge.

SERVER_AUDIT_INCL_USERS

Plusieurs valeurs séparées par des virgules

Aucune

Incluez uniquement l'activité des utilisateurs spécifiés. Par défaut, l'activité est enregistrée pour tous les utilisateurs. SERVER_AUDIT_INCL_USERS et SERVER_AUDIT_EXCL_USERS sont mutuellement exclusifs. Si vous ajoutez des valeurs à SERVER_AUDIT_INCL_USERS, assurez-vous qu'aucune valeur n'est ajoutée à SERVER_AUDIT_EXCL_USERS.

SERVER_AUDIT_EXCL_USERS

Plusieurs valeurs séparées par des virgules

Aucune

Excluez l'activité des utilisateurs spécifiés. Par défaut, l'activité est enregistrée pour tous les utilisateurs. SERVER_AUDIT_INCL_USERS et SERVER_AUDIT_EXCL_USERS sont mutuellement exclusifs. Si vous ajoutez des valeurs à SERVER_AUDIT_EXCL_USERS, assurez-vous qu'aucune valeur n'est ajoutée à SERVER_AUDIT_INCL_USERS.

L'utilisateur rdsadmin interroge la base de données par seconde pour vérifier l'intégrité de la base de données. En fonction de vos autres paramètres, cette activité peut éventuellement provoquer un accroissement considérable et rapide de la taille de votre fichier journal. Si vous n'avez pas besoin d'enregistrer cette activité, ajoutez l'utilisateur rdsadmin à la liste SERVER_AUDIT_EXCL_USERS.

Note

CONNECTL'activité est toujours enregistrée pour tous les utilisateurs, même si l'utilisateur est spécifié pour ce paramètre d'option.

SERVER_AUDIT_LOGGING

ON

ON

La journalisation est active. La seule valeur valide est ON. Amazon RDS ne prend pas en charge la désactivation de la journalisation. Si vous souhaitez désactiver la journalisation, supprimez le plugin d'audit MariaDB. Pour plus d'informations, consultez Suppression du plugin d'audit MariaDB.

SERVER_AUDIT_QUERY_LOG_LIMIT

0–2147483647

1 024

Limite de longueur de la chaîne de requête dans un enregistrement.

Ajout du plugin d'audit MariaDB

Le processus général pour ajouter le plug-in d'audit MariaDB à une instance de base de données est le suivant :

  • Créez un groupe d'options ou copiez ou modifiez un groupe d'options existant.

  • Ajouter l'option au groupe d'options

  • Associer un groupe d'options à une instance de base de données

Une fois que vous ajoutez le plug-in d'audit MariaDB, vous n'avez pas besoin de redémarrer votre instance de base de données. Dès que le groupe d'options est actif, l'audit commence immédiatement.

Important

L'ajout du plug-in d'audit MariaDB à une instance de base de données peut entraîner une interruption de service. Nous vous recommandons d'ajouter le plug-in d'audit MariaDB pendant une fenêtre de maintenance ou lorsque la charge de travail de base de données est faible.

Pour ajouter le plug-in d'audit MariaDB
  1. Déterminez le groupe d'options que vous voulez utiliser. Vous pouvez créer un groupe d'options ou utiliser un groupe d'options existant. Si vous souhaitez utiliser un groupe d'options existant, passez à l'étape suivante. Sinon, créez un groupe d'options de base de données personnalisé. Choisissez mysql pour Moteur, puis 5.7 ou 8.0 pour Version majeure du moteur. Pour de plus amples informations, veuillez consulter Création d'un groupe d'options.

  2. Ajoutez l'option MARIADB_AUDIT_PLUGIN pour le groupe d'options et configurez les paramètres de l'option. Pour plus d'informations sur l'ajout d'options, consultez Ajout d'une option à un groupe d'options. Pour plus d'informations sur chaque paramètre, consultez Paramètres de l'option du plugin d'audit.

  3. Appliquez le groupe d'options à une instance de base de données nouvelle ou existante.

Format des journaux d'audit

Les fichiers journaux sont représentés sous forme de fichiers CSV (variables séparées par des virgules) au format UTF-8.

Astuce

Les entrées de fichier journal ne sont pas classées par ordre séquentiel. Pour ordonner les entrées, utilisez la valeur d'horodatage. Pour consulter les derniers événements, vous devrez peut-être passer en revue tous les fichiers journaux. Pour plus de flexibilité dans le tri et la recherche des données de journaux, activez le paramètre pour charger les journaux d'audit sur CloudWatch et les afficher à l'aide de l'interface CloudWatch.

Pour afficher des données d'audit avec plus de types de champs et avec une sortie au format JSON, vous pouvez également utiliser la fonction Flux d'activité de base de données. Pour de plus amples informations, veuillez consulter Surveillance d'Amazon RDS à l'aide des flux d'activité de base de données.

Les fichiers journaux d'audit incluent les informations séparées par des virgules suivantes en lignes, dans l'ordre indiqué :

Champ Description

timestamp

YYYYMMDD suivi de HH:MI:SS (format 24 heures) correspondant à l'événement enregistré.

serverhost

Le nom de l'instance pour laquelle*** l'événement est consigné.

username

Le nom d'utilisateur connecté de l'utilisateur.

hôte

L'hôte à partir duquel** l'utilisateur s'est connecté.

connectionid

Le numéro d'identification de la connexion pour l'opération consignée.

queryid

Le numéro d'identification de la requête qui peut être utilisé pour trouver les événements de la table relationnelle et les requêtes liées. Pour les événements TABLE, plusieurs lignes sont ajoutées.

fonctionnement

Le type d'action enregistrée. Les valeurs possibles sont : CONNECT, QUERY, READ, WRITE, CREATE, ALTER, RENAME et DROP.

database

La base de données active, telle que définie par la commande USE.

objet

Pour les événements QUERY, cette valeur indique la demande effectuée par la base de données. Pour les événements TABLE, cette valeur indique le nom de la table.

retcode

Le code de retour de l'opération consignée.

connection_type

État de sécurité de la connexion au serveur. Les valeurs possibles sont :

  • 0 : non défini

  • 1 : TCP/IP

  • 2 : socket

  • 3 : canal nommé

  • 4 : SSL/TLS

  • 5 : mémoire partagée

Ce champ est inclus uniquement pour RDS for MySQL version 5.7.34 et versions 5.7 ultérieures, ainsi que pour toutes les versions 8.0.

Affichage et téléchargement du journal du plugin d'audit MariaDB

Une fois que vous activez le plugin d'audit MariaDB, vous accéder aux résultats dans les fichiers journaux de la même manière que tous les autres fichiers journaux texte. Les fichiers journaux d'audit se trouvent dans /rdsdbdata/log/audit/. Pour plus d'informations sur l'affichage du fichier journal dans la console, consultez Liste et affichage des fichiers journaux de base de données. Pour plus d'informations sur le téléchargement du fichier journal, consultez Téléchargement d'un fichier journal de base de données.

Modification des paramètres de plug-in d'audit MariaDB

Une fois que vous activez le plug-in d'audit MariaDB, vous pouvez modifier les paramètres. Pour plus d'informations sur la modification des paramètres d'options, consultez Modification d'un paramètre d'option. Pour plus d'informations sur chaque paramètre, consultez Paramètres de l'option du plugin d'audit.

Suppression du plugin d'audit MariaDB

Amazon RDS ne prend pas en charge la désactivation de la journalisation du plugin d'audit MariaDB. Toutefois, vous pouvez supprimer le plugin dans une instance de base de données. Lorsque vous supprimez le plugin d'audit MariaDB, l'instance de base de données est automatiquement redémarrée pour cesser l'audit.

Pour supprimer le plugin d'audit MariaDB d'une instance de base de données, effectuez l'une des actions suivantes :

  • Supprimez l'option de plugin d'audit MariaDB du groupe d'options auquel elle appartient. Ce changement affecte toutes les instances de bases de données qui utilisent le groupe d'options. Pour plus d'informations, consultez Suppression d'une option d'un groupe d'options

  • Modifiez l'instance de base de données et spécifiez un groupe d'options différent qui n'inclut pas le plugin. Ce changement affecte une seule instance de base de données. Vous pouvez spécifier le groupe d'options (vide) par défaut, ou un groupe d'options personnalisées différent. Pour plus d'informations, consultez Modification d'une instance de base de données Amazon RDS.