Sécurité d'audit, modifications d'artefact et événements LCM
Les administrateurs de service peuvent activer l'audit de sécurité pour suivre les modifications apportées au serveur Essbase.
Selon les paramètres indiqués dans le fichier de stratégie d'audit, Essbase collecte des informations à propos des modifications apportées à la sécurité au niveau du système, aux artefacts et aux événements LCM, ainsi qu'à propos des instructions MaxL exécutées (y compris les imports). Essbase regroupe les informations suivies dans un fichier journal d'audit ou les transmet en continu vers une base de données externe. Les informations suivies à propos de chaque événement incluent la date et l'heure, le client, l'utilisateur, les artefacts concernés, la durée, l'ID, le nom de l'application et de la base de données, le statut et une description.
Vous pouvez activer un audit au niveau du serveur de ces événements à l'aide du paramètre AUDITTRAIL SECURITY Essbase.
Workflow d'activation de l'audit de sécurité pour le serveur Essbase
Ce workflow explique comment activer l'audit de sécurité sur le serveur Essbase à l'aide de AUDITTRAIL SECURITY. Après avoir activé l'audit, définissez EssbaseSecurityAuditLogPolicy. Essbase peut écrire les enregistrements d'audit dans un fichier CSV ou les transférer vers une base de données externe.
Dans ce workflow, Oracle Database correspond à la base de données externe, mais vous pouvez également utiliser SQL Server, MySQL ou DB2.
Pour terminer le workflow, vous devez être administrateur système et accéder à <Essbase Config Path> sur l'ordinateur Essbase Server.
- Fichier de configuration essbase.cfg
- Fichier de stratégie d'audit de sécurité par défaut
-
Activez l'audit des événements de serveur en ajoutant la configuration suivante au fichier essbase.cfg sur l'ordinateur serveur Essbase :
SÉCURITÉ D'AUDITTRAIL
Une fois la configuration mise à jour, redémarrez Essbase.
Reportez-vous aux sections Set Server-Level Configuration Properties et Start, Stop, and Check Servers.
-
Un fichier de stratégie par défaut (XML) est créé sur le serveur Essbase. Ce fichier,
EssbaseSecurityAuditLogPolicy.xml, se trouve dans le chemin indiqué lors de la phase de configuration du déploiement pour stocker la configuration Essbase (le <Essbase Config Path>, qui est également l'emplacement du fichier essbase.cfg).Le fichier de stratégie par défaut créé comporte le contenu suivant :<?xml version="1.0" encoding="UTF-8"?> <security-audit-policy> <audit_events_to_capture>LOGIN,LOGINAS,LOGIN_FAIL,LOGOUT,SERVICE_ROLE_ASSIGN,SERVICE_ROLE_REVOKE,APPLICATION_ROLE_ASSIGN,APPLICATION_ROLE_REVOKE,ARTIFACT_UPLOADED,ARTIFACT_MODIFIED,ARTIFACT_DELETED,ARTIFACT_CREATE,ARTIFACT_RENAMED,APPLICATION_DELETED,APPLICATION_CREATE,APPLICATION_RENAMED,DATABASE_DELETED,DATABASE_CREATE,DATABASE_RENAMED,LCM_EXPORT_START,LCM_EXPORT_END,LCM_IMPORT_START,LCM_IMPORT_END,LCM_IMPORT_FAIL,DATA_LOAD_MAXL,LOAD_DATA_JOB_START,LOAD_DATA_JOB_END,LOAD_DATA_JOB_FAILED,DELETE_SESSION,EXECUTE_MAXL,APPLICATION_SET_ACTIVE,APPLICATION_START,APPLICATION_STOP,DATABASE_START,DATABASE_STOP</audit_events_to_capture> <audit_sinks> <audit_sink> <audit_sink_type>CSV</audit_sink_type> <max-file-size>50000000</max-file-size> <roll-nos>100</roll-nos> </audit_sink> </audit_sinks> </security-audit-policy>CSV est le type de récepteur d'audit par défaut. Si vous utilisez le type de récepteur d'audit (CSV) par défaut et que vous vérifiez que les détails de l'audit sont écrits dans le fichier journal d'audit de sécurité au format CSV, procédez comme suit :- Effectuez une action correspondant à un événement pouvant faire l'objet d'un audit, telle que la création d'une application. Vous pouvez choisir n'importe quelle action répertoriée dans la section <audit_events_to_capture> de votre stratégie.
- Connectez-vous avec SSH au serveur Essbase.
- Accédez à
<DOMAIN_HOME>/servers/serverName/logs/essbase/. Si vous ne savez pas où se trouve <DOMAIN_HOME>, reportez-vous à la section Environment Locations in the Essbase Platform. - Ouvrez et vérifiez le fichier
SecurityAuditLog_n.csv.Exemple de fichier journal d'audit de sécurité au format CSV :

-
Si vous voulez que la trace d'audit de sécurité soit transmise en continu vers une base de données externe, procédez comme suit :
- Créez une connexion à la source externe. Reportez-vous à Création d'une connexion globale et d'une source de données ou à Création d'une connexion et d'une source de données au niveau de l'application.
- Modifiez le fichier de stratégie de sorte à définir le récepteur d'audit sur DATABASE.
- Ajoutez un paramètre <db_connection_name> dans le paramètre <audit_sink>. La valeur du paramètre <db_connection_name> doit être le nom exact de la connexion créée à l'étape a ci-dessus.
Exemple de stratégie d'audit modifiée pour transmettre en continu la trace d'audit de sécurité à Oracle Database :<?xml version="1.0" encoding="UTF-8"?> <security-audit-policy> <audit_events_to_capture>LOGIN,LOGINAS,LOGIN_FAIL,LOGOUT,SERVICE_ROLE_ASSIGN,SERVICE_ROLE_REVOKE,APPLICATION_ROLE_ASSIGN,APPLICATION_ROLE_REVOKE,ARTIFACT_UPLOADED,ARTIFACT_MODIFIED,ARTIFACT_DELETED,ARTIFACT_CREATE,ARTIFACT_RENAMED,APPLICATION_DELETED,APPLICATION_CREATE,APPLICATION_RENAMED,DATABASE_DELETED,DATABASE_CREATE,DATABASE_RENAMED,LCM_EXPORT_START,LCM_EXPORT_END,LCM_IMPORT_START,LCM_IMPORT_END,LCM_IMPORT_FAIL,DATA_LOAD_MAXL,LOAD_DATA_JOB_START,LOAD_DATA_JOB_END,LOAD_DATA_JOB_FAILED,DELETE_SESSION,EXECUTE_MAXL,APPLICATION_SET_ACTIVE,APPLICATION_START,APPLICATION_STOP,DATABASE_START,DATABASE_STOP</audit_events_to_capture> <audit_sinks> <audit_sink> <audit_sink_type>DATABASE</audit_sink_type> <db_connection_name>OraclePDB</db_connection_name> </audit_sink> </audit_sinks> </security-audit-policy> -
Vérifiez si les détails de l'audit sont transmis en continu à la base de données.
- Effectuez une action correspondant à un événement pouvant faire l'objet d'un audit, telle que la création d'une application. Vous pouvez choisir n'importe quelle action répertoriée dans la section <audit_events_to_capture> de votre stratégie.
Essbase doit créer une table d'audit nommée ESSBASE_SECURITY_AUDIT_EVENT_LOG dans le schéma de base de données externe.
- Connectez-vous au SGBDR externe et exécutez une requête pour vérifier la présence de la table. Par exemple, connectez-vous à SQL Developer et exécutez la commande suivante :
select * from ESSBASE_SECURITY_AUDIT_EVENT_LOG
- Effectuez une action correspondant à un événement pouvant faire l'objet d'un audit, telle que la création d'une application. Vous pouvez choisir n'importe quelle action répertoriée dans la section <audit_events_to_capture> de votre stratégie.
-
Utilisez un outil de visualisation de données pour afficher et analyser les enregistrements d'audit de sécurité. Vous pouvez utiliser Smart View, Oracle Data Desktop (disponible avec une licence Oracle Technology Network), ou des outils de visualisation open source ou provenant de votre fournisseur de base de données autre qu'Oracle.
A propos du fichier de stratégie d'audit
La stratégie d'audit est définie dans un fichier XML que vous pouvez modifier selon vos besoins. Dans ce fichier, vous pouvez indiquer les événements de serveur Essbase à suivre. Vous pouvez également y préciser si les données doivent être écrites dans un journal d'audit de sécurité ou transmises à une base de données externe. Si vous écrivez les données dans un journal d'audit, vous pouvez indiquer la taille maximale de fichier et le nombre de fichiers journaux d'audit de sécurité à conserver.
Essbase crée EssbaseSecurityAuditLogPolicy.xml lorsque vous redémarrez Essbase une fois l'audit de sécurité activé. Vous pouvez ensuite modifier le fichier si nécessaire pour affiner la stratégie d'audit. Le fichier se trouve dans le chemin que vous avez indiqué au cours de la phase de configuration du déploiement pour stocker la configuration Essbase (<Essbase Config Path>, qui est également l'emplacement du fichier essbase.cfg). Si vous ne savez pas où cela se trouve dans votre environnement, reportez-vous à Emplacements d'environnement dans la plate-forme Essbase pour obtenir une explication.
-
Accédez à
EssbaseSecurityAuditLogPolicy.xml. Le fichier se trouve dans le répertoire d'application indiqué pendant la phase de configuration du déploiement Essbase. -
Ouvrez-le dans un éditeur de texte.
-
Modifiez le récepteur d'audit, les informations de journalisation et les événements à suivre.
-
Vous pouvez éventuellement ajouter
<audit_sink_type>DATABASE</audit_sink_type>pour transmettre en continu les données vers une base de donnée externe. -
Si vous indiquez le type de serveur d'audit DATABASE à l'étape a, sur la ligne suivante, ajoutez <db_connection_name>ConnectionName</db_connection_name> avec le nom de la connexion de base de données définie dans le workflow d'activation de l'audit de sécurité pour le serveur Essbase.
-
Si les données sont écrites dans un fichier journal d'audit, vous pouvez éventuellement modifier la taille maximale d'un fichier à l'aide de
<max-file-size>n</max-file-size>, où n = nombre d'octets. La longueur par défaut est de 50000000 octets. -
Si les données sont écrites dans un fichier journal d'audit, indiquez combien de fichiers CSV de journaux d'audit de sécurité à enregistrer à l'aide de
<roll-nos>n</roll-nos>, où n = nombre des fichiers. -
Indiquez les événements d'audit à capturer à l'aide de
<audit_events_to_capture>events_list</audit_events_to_capture>.
-
Les événements que vous indiquez dans le fichier de stratégie d'audit sont suivis dans un fichier journal d'audit de sécurité ou transmis en continu vers une base de données externe.
Vous pouvez indiquer que les événements suivants doivent être capturés dans le fichier de stratégie d'audit :
| Evénement | Description |
|---|---|
| LOGIN | Utilisateur [x] connecté |
| LOGIN_AS | Utilisateur [x] connecté comme [y] |
| LOGOUT | Utilisateur [x] déconnecté |
| LOGIN_FAIL | Echec de la connexion de l'utilisateur [x] |
| SERVICE_ROLE_ASSIGN | Rôle de service Essbase [x] affecté à [y] |
| SERVICE_ROLE_REVOKE | Rôle de service Essbase [x] révoqué de [y] |
| APPLICATION_ROLE_ASSIGN | Le rôle [y] a été provisionné pour l'utilisateur/le groupe [x] sur l'application [z] |
| APPLICATION_ROLE_REVOKE | Le rôle [y] a été révoqué pour l'utilisateur/le groupe [x] sur l'application [z] |
| ARTIFACT_CREATE | Artefact [x] de type [y] créé |
| ARTIFACT_UPLOADED | Demande de chargement d'artefact appelée pour l'application [a], la base de données [b], le nom d'objet [c] et le type d'objet [d] |
| ARTIFACT_MODIFIED | Artefact [x] de type [y] modifié |
| ARTIFACT_DELETED | Artefact [x] de type [y] supprimé |
| ARTIFACT_RENAMED | Artefact [x] de type [y] renommé en [z] |
| APPLICATION_DELETED | Application [x] supprimée |
| APPLICATION_CREATE | Application [x] créée |
| APPLICATION_RENAMED | Application [x] renommée en [y] |
| DATABASE_DELETED | Base de données [x] supprimée dans l'application [y] |
| DATABASE_CREATE | Base de données [x] créée dans l'application [y] |
| DATABASE_RENAMED | Base de données [x] renommée en [y] dans l'application [z] |
| LCM_EXPORT_START | Le job d'export LCM a démarré avec le nom de fichier [x] |
| LCM_EXPORT_END | Le job d'export LCM est terminé avec le nom de fichier [x] et le statut de travail [y] |
| LCM_IMPORT_START | Import LCM démarré pour l'application [x] avec le nom de fichier [y] |
| LCM_IMPORT_END | Import LCM terminé pour l'application [x] avec le nom de fichier [y] |
| LCM_IMPORT_FAIL | Echec de l'import LCM pour l'application [x] avec le nom de fichier [y] |
| DATA_LOAD_MAXL | Instruction d'import de données MaxL exécutée pour l'application [x] et la base de données [y] par l'utilisateur [z] |
| EXECUTE_MAXL | Instruction MaxL [x] exécutée à partir de l'utilisateur [y] |
| LOAD_DATA_JOB_START | Job de chargement de données démarré avec le fichier de données [x] et le fichier de règles [y] |
| LOAD_DATA_JOB_END | Job de chargement de données du fichier de données [x] et du fichier de règles [y] terminé avec le statut [z] |
| LOAD_DATA_JOB_FAILED | Echec du job de chargement de données pour la raison suivante : [x] |
| DELETE_SESSION | Session [x] supprimée |
Evénements d'audit de sécurité
Les événements d'audit de sécurité Essbase font l'objet d'un suivi dans un fichier journal d'audit de sécurité ou sont transmis en continu vers une base de données externe selon ce que vous indiquez dans le fichier de la stratégie d'audit.
Pour des instructions sur l'ouverture du journal d'audit de sécurité ou de la table d'audit dans le schéma de base de données externe, reportez-vous à Workflow d'activation de l'audit de sécurité pour le serveur Essbase.
- Heure : indique quand est survenu l'événement
- Client : adresse IP ou nom d'hôte du client
- Nom d'utilisateur : utilisateur qui lance l'action
- ID de session : ID de la session Essbase
- Type d'événement : type de l'événement
- Type d'artefact : type d'artefact impliqué dans l'événement
Exemples de type d'artefact :
- Type d'artefact partition_file pour le type d'événement ARTIFACT_UPLOADED
- Type d'artefact Application pour le type d'événement LCM_EXPORT_START
- Type d'artefact Utilisateur pour le type d'événement APPLICATION_ROLE_ASSIGN
- Nom d'artefact : nom de l'artefact impliqué dans l'événement Par exemple, un nom de fichier, d'utilisateur ou d'application.
- Informations supplémentaires : informations supplémentaires associées à l'événement
- Description : description de l'événement
Le contenu du champ de description est localisé.
- ID : identificateur unique universel à 128 bits qui décrit l'événement
Exemple : 123e4567-e89b-12d3-a456-426614174000
- Durée : durée de l'événement en millisecondes
- Nom de l'application : nom de l'application
- Nom de la base de données : nom de la base de données
- Statut : succès ou échec