Surveillance d'Amazon RDS Amazon à l'aide des flux d'activité des bases de données - 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.

Surveillance d'Amazon RDS Amazon à l'aide des flux d'activité des bases de données

En utilisant les flux d'activité de base de données, vous pouvez surveiller en temps quasi réel les flux d'activité de base de données.

Présentation des flux d'activité de base de données

En , vous devez protéger votre base de données et respecter les exigences réglementaires et de conformité. Une politique consiste à intégrer les flux d'activités de base de données avec vos outils de surveillance. De cette façon, vous surveillez et définissez des alarmes pour l'activité d'audit dans votre base de données de .

Les menaces de sécurité sont à la fois externes et internes. Pour vous protéger contre des menaces internes, vous pouvez contrôler l'accès administrateur aux flux de données à l'aide de la fonction Database Activity Streams. Amazon RDS DBAs n'a pas accès à la collecte, à la transmission, au stockage et au traitement des flux.

Fonctionnement des flux d'activité de base de données

Amazon, , transmet les activités vers un flux de données Amazon Kinesis en temps quasi réel. Le flux Kinesis est créé automatiquement. Kinesis vous permet de configurer des AWS services tels qu'Amazon Data Firehose, de consommer le flux et AWS Lambda de stocker les données.

Important

L'utilisation de la fonctionnalité de flux d'activité sur Amazon RDS est gratuite, mais Amazon Kinesis facture un flux de données. Pour plus d'informations, consultez la Tarification d'Amazon Kinesis Data Streams.

Vous pouvez configurer les applications de gestion de la conformité pour qu'elles consomment les flux d'activité des bases de données. Ces applications peuvent utiliser le flux pour générer des alertes et auditer l'activité sur votre base de données.

Amazon RDS prend en charge les flux d'activité des bases de données dans les déploiements multi-AZ. Dans ce cas, les flux d'activité de la base de données vérifient à la fois les instances principales et les instances en veille.

Audit dans Oracle Database et Microsoft SQL Server Database

L'audit est la surveillance et l'enregistrement d'actions de base de données configurées. Amazon RDS ne capture pas l'activité de la base de données par défaut. Vous créez et gérez vous-même les politiques d'audit dans votre base de données.

Audit unifié dans Oracle Database

Dans une base de données Oracle, une politique d'audit unifié est un groupe nommé de paramètres d'audit que vous pouvez utiliser pour auditer un aspect du comportement utilisateur. Une politique peut être aussi simple que l'audit des activités d'un seul utilisateur. Vous pouvez également créer des politiques d'audit complexes qui utilisent des conditions.

Une base de données Oracle écrit des enregistrements d'audit, dont des enregistrements d'audit SYS, dans la trace d'audit unifié. Par exemple, si une erreur se produit lors d'une INSERT instruction, l'audit standard indique le numéro de l'erreur et SQL l'erreur exécutée. La trace d'audit se trouve dans une table en lecture seule dans le schéma AUDSYS. Pour accéder à ces enregistrements, interrogez la vue du dictionnaire de données UNIFIED_AUDIT_TRAIL.

Généralement, vous configurez les flux d'activité de base de données comme suit :

  1. Créez une politique d'audit Oracle Database à l'aide de la commande CREATE AUDIT POLICY.

    Oracle Database génère des enregistrements d'audit.

  2. Activez la politique d'audit à l'aide de la commande AUDIT POLICY.

  3. Configurer les flux d'activité de base de données.

    Seules les activités qui correspondent aux politiques d'audit d'Oracle Database sont capturées et envoyées au flux de données Amazon Kinesis. Lorsque les flux d'activité de base de données sont activés, un administrateur de base de données Oracle ne peut pas modifier la politique d'audit ou supprimer des journaux d'audit.

Pour en savoir plus sur les politiques d'audit unifiées, voir À propos des activités d'audit avec des politiques d'audit unifiées et AUDIT dans le manuel Oracle Database Security Guide.

Audit dans Microsoft SQL Server

Database Activity Stream utilise SQLAudit une fonctionnalité pour auditer la base de données SQL du serveur.

RDSpour l'instance de SQL serveur contient les éléments suivants :

  • Audit du serveur : l'audit SQL du serveur collecte une instance unique d'actions au niveau du serveur ou de la base de données, et un groupe d'actions à surveiller. Les audits RDS_DAS_AUDIT au niveau du serveur RDS_DAS_AUDIT_CHANGES sont gérés par. RDS

  • Spécification d'audit de serveur – La spécification d'audit de serveur enregistre les événements au niveau du serveur. Vous pouvez modifier la spécification RDS_DAS_SERVER_AUDIT_SPEC. Cette spécification est liée à l'audit du serveur RDS_DAS_AUDIT. La RDS_DAS_CHANGES_AUDIT_SPEC spécification est gérée parRDS.

  • Spécification d'audit de base de données – La spécification d'audit de base de données enregistre les événements au niveau du serveur. Vous pouvez créer une spécification d'audit de base de données RDS_DAS_DB_<name> et la lier à l'audit de serveur RDS_DAS_AUDIT.

Vous pouvez configurer les flux d'activité de la base de données à l'aide de la console ouCLI. Généralement, vous configurez les flux d'activité de base de données comme suit :

  1. (Facultatif) Créez une spécification d'audit de base de données à l'aide de la commande CREATE DATABASE AUDIT SPECIFICATION et associez-la à l'audit de serveur RDS_DAS_AUDIT.

  2. (Facultatif) Modifiez la spécification d'audit de serveur à l'aide de la commande ALTER SERVER AUDIT SPECIFICATION et définissez les politiques.

  3. Activez les politiques d'audit de base de données et de serveur. Par exemple :

    ALTER DATABASE AUDIT SPECIFICATION [<Your database specification>] WITH (STATE=ON)

    ALTER SERVER AUDIT SPECIFICATION [RDS_DAS_SERVER_AUDIT_SPEC] WITH (STATE=ON)

  4. Configurer les flux d'activité de base de données.

    Seules les activités qui correspondent aux politiques d'audit de serveur et de base de données sont capturées et envoyées au flux de données Amazon Kinesis. Quand les flux d'activité de base de données sont activés et que les politiques sont verrouillées, un administrateur de base de données ne peut pas modifier la politique d'audit ni supprimer des journaux d'audit.

    Important

    Si la spécification d'audit de base de données pour une base de données spécifique est activée et que la politique est à l'état verrouillé, la base de données ne peut pas être supprimée.

Pour plus d'informations sur l'audit de SQL serveur, consultez SQL la section Composants d'audit de serveur dans la documentation de Microsoft SQL Server.

Champs d'audit non natifs pour Oracle Database et Server SQL

Lorsque vous démarrez un flux d'activité de base de données, chaque événement de base de données génère un événement de flux d'activité correspondant. Par exemple, un utilisateur de base de données peut exécuter des instructions SELECT et INSERT. La base de données audite ces événements et les envoie à un flux de données Amazon Kinesis Data Stream.

Les événements sont représentés dans le flux sous forme JSON d'objets. Un JSON objet contient unDatabaseActivityMonitoringRecord, qui contient un databaseActivityEventList tableau. Les champs prédéfinis dans le tableau sont class, clientApplication et command.

Par défaut, un flux d'activité n'inclut pas de champs d'audit natifs du moteur. Vous pouvez configurer Amazon RDS pour Oracle et SQL Server de manière à inclure ces champs supplémentaires dans l'engineNativeAuditFieldsJSONobjet.

Dans Oracle Database, la plupart des événements de la piste d'audit unifiée sont liés aux champs du flux d'activité RDS des données. Par exemple, le champ UNIFIED_AUDIT_TRAIL.SQL_TEXT dans un audit mappe au champ commandText dans un flux d'activité de base de données. Toutefois, des champs d'audit d'Oracle Database tels que OS_USERNAME ne mappent pas à des champs prédéfinis dans un flux d'activité de base de données.

Dans SQL Server, la plupart des champs de l'événement enregistrés par le système SQLAudit correspondent aux champs du flux d'activité RDS de la base de données. Par exemple, le champ code issu de sys.fn_get_audit_file dans l'audit est mappé sur le champ commandText dans un flux d'activité de base de données. Toutefois, les champs d'audit de base de données SQL du serveur, tels quepermission_bitmask, ne sont pas mappés aux champs prédéfinis d'un flux d'activité de base de données.

Pour plus d'informations sur databaseActivityEvent List, consultezdatabaseActivityEventJSONTableau de listes pour les flux d'activité de base de données.

Remplacement de groupe de paramètres de base de données

Généralement, vous activez l'audit unifié RDS pour Oracle en attachant un groupe de paramètres. Toutefois, les flux d'activité de base de données nécessitent une configuration supplémentaire. Pour améliorer votre expérience client, Amazon RDS effectue les opérations suivantes :

  • Si vous activez un flux d'activité, RDS Oracle ignore les paramètres d'audit du groupe de paramètres.

  • Si vous désactivez un flux d'activité, car Oracle cesse RDS d'ignorer les paramètres d'audit.

Le flux d'activité de la base de données pour le SQL serveur est indépendant des paramètres que vous définissez dans l'option SQL Audit.

Mode asynchrone pour les flux d'activité de base de données

Les flux d'activité sur Amazon RDS sont toujours asynchrones. Quand une session de base de données génère un événement de flux d'activité, la session revient immédiatement aux activités normales. En arrière-plan, Amazon RDS transforme l'événement du flux d'activité en un enregistrement durable.

Si une erreur se produit dans la tâche en arrière-plan, Amazon RDS génère un événement. Cet événement indique le début et la fin de toute fenêtre de temps au cours de laquelle des enregistrements d'événement de flux d'activité ont pu être perdus. Le mode asynchrone favorise les performances de la base de données plutôt que la précision du flux d'activité.

Exigences et limites pour les flux d'activité de base de données

Dans , les flux d'activité des bases de données présentent les exigences et limites suivantes :

  • Amazon Kinesis est nécessaire pour les flux d'activité des bases de données.

  • AWS Key Management Service (AWS KMS) est obligatoire pour les flux d'activité de base de données car ils sont toujours chiffrés.

  • L'application d'un chiffrement supplémentaire à votre flux de données Amazon Kinesis est incompatible avec les flux d'activité de base de données, qui sont déjà chiffrés avec votre AWS KMS clé.

  • Vous créez et gérez vous-même les politiques d'audit. Contrairement à Amazon Aurora, RDS for Oracle ne capture pas les activités de base de données par défaut.

  • Vous créez et gérez vous-même les politiques d'audit ou les spécifications. Contrairement à Amazon Aurora, Amazon RDS ne capture pas les activités de base de données par défaut.

  • Dans un déploiement multi-AZ, démarrez le flux d'activité de base de données uniquement sur l'instance de base de données principale. Le flux d'activité vérifie automatiquement les instances de base de données principales et en veille. Aucune étape supplémentaire n'est requise lors d'un basculement.

  • Le fait de renommer une instance de base de données ne crée pas un nouveau flux Kinesis.

  • CDBsne sont pas pris en charge RDS pour Oracle.

  • Les réplicas en lecture ne sont pas pris en charge.

Disponibilité des régions et des versions

La disponibilité et la prise en charge des fonctionnalités varient selon les versions spécifiques de chaque moteur de base de données, et selon les Régions AWS. Pour obtenir plus d'informations sur la disponibilité des versions et des régions avec les flux d'activité des bases de données, consultez Régions et moteurs de base de données pris en charge pour les flux d'activité des bases de données sur Amazon RDS.

Classes d'instance de base de données prises en charge pour les flux d'activité de base de données

RDSPour Oracle, vous pouvez utiliser les flux d'activité de base de données avec les classes d'instances de base de données suivantes :

  • db.m4.*large

  • db.m5.*large

  • db.m5d.*large

  • db.m6i.*large

  • db.r4.*large

  • db.r5.*large

  • db.r5.*large.tpc*.mem*x

  • db.r5b.*large

  • db.r5b.*large.tpc*.mem*x

  • db.r5d.*large

  • db.r6i.*large

  • db.x2idn.*large

  • db.x2iedn.*large

  • db.x2iezn.*large

  • db.z1d.*large

Pour RDS for SQL Server, vous pouvez utiliser les flux d'activité de base de données avec les classes d'instances de base de données suivantes :

  • db.m4.*large

  • db.m5.*large

  • db.m5d.*large

  • db.m6i.*large

  • db.r4.*large

  • db.r5.*large

  • db.r5b.*large

  • db.r5d.*large

  • db.r6i.*large

  • db.x1e.*large

  • db.z1d.*large

Pour plus d'informations sur les types de classes d'instances , consultez Classes d'instances de base de données .