Audit des utilisateurs dans VIYA 3.5

Vous l'avez compris (et je me répète), la tâche genAudit, qui s'exécute toutes les deux heures (ici aussi je me répète), collecte les informations ensuite utilisés pour créer le rapport d'activité des utilisateurs. A noter que la tâche s'exécute en utilisant le informations d'identification de l'utilisateur d'installation SAS. Ainsi, la tâche ne collecte que les enregistrements sur lesquels l'utilisateur d'installation SAS a accès.

Audit des utilisateurs

La vidéo ci-dessous est un aperçu du rapport d'audit des utilisateurs dans Viya 3.5 :

Maintenant que les présentations sont faites, nous pouvons administrer notre plateforme. Il est temps de vous présenter les possibilités qui vous sont offertes pour gérer l'audit de vos utilisateurs.

Commandes utiles et administration

Gros plan sur le fichier audit.csv

Vous êtes nombreux à vous demander à quoi ressemble le fichier audit.csv. Cette courte vidéo répond à cette question, vous montre comment accéder à ce fichier et comment afficher son contenu :

Listes les tâches ops-agentsrv

Pour la liste des tâches ops-agentsrv , vous pouvez exécuter la commande ci-dessous :

1
/opt/sas/viya/home/bin/sas-ops tasks --name "ops-agentsrv"

Pour lancer manuellement la tâche genAudit, vous pouvez exécuter la commande ci-dessous.

1
/opt/sas/viya/home/bin/ev-genaudit -a reports,folders,dataPlans,casManagement,casAccessManagement,--user-id -l 1000 -d 7 -v

Si vous n'avez pas regardez la vidéo (ce que je vous encourage à faire), l'option -v permet de passer le genAudit en mode verbose.

Extraire les données d'audit avec sas-admin

La commande sas-admin-list ci-dessous permet d'extraire les données d'audit de SAS Infrastructure Data Server et de créer un fichier csv (ici /tmp/audittest.csv) :

1
2
3
4
cd /opt/sas/viya/home/bin/
sas-admin profile set-endpoint http://$(hostname -f)
sas-admin auth login -user adminsas -password motdepasse
sas-admin audit list --limit 1000 --sort-by timeStamp --application reports --csv /tmp/audittest.csv --after 2020-11-25T16:33:52Z --before 2020-12-02T16:33:52Z --resolve-uri

Afficher la configuration de la table CAS AUDIT

La commande ci-dessous permet de lister les table de la caslib SystemData pour vérifier que la table CAS AUDIT est bien présente :

1
sas-admin cas tables list --caslib SystemData --server cas-shared-default --sort-by state --limit 50

3 - Redémarrer sas-ops-agentsrv

1
systemctl restart sas-viya-ops-agentsrv-default

Visualiser les tables d'audit dans la base PostgreSQL

Pour vérifier l'insertion des données d'audit dans la base de données, vous pouvez exécuter les instructions ci-dessous.

1 - Connexion à PostgreSQL de SAS :

1
2
3
4
source /opt/sas/viya/config/consul.conf
export CONSUL_TOKEN=$(cat /opt/sas/viya/config/etc/SASSecurityCertificateFramework/tokens/consul/default/management.token)
export PGPASSWORD=$(/opt/sas/viya/home/bin/sas-bootstrap-config kv read "config/application/postgres/password")
psql -t -h localhost -p 5432 -U dbmsowner postgres

2 - Connectez-vous à la base SharedServices :

1
\c SharedServices

3 - Puis effectuez une requête sur la table resource_audit_entry_data pour de vérifier que vos données d'audit son bien présentes :

1
select * from audit.resource_audit_entry_data where entry_dttm > TO_DATE('20201201','YYYYMMDD');

4 - Pour vérifier la taille de vos tables, la requête à exécuter est la suivante :

1
2
3
SELECT * FROM pg_catalog.pg_tables WHERE schemaname = 'audit';
SELECT pg_size_pretty( pg_total_relation_size('audit.resource_audit_entry_data') );
SELECT pg_size_pretty( pg_total_relation_size('audit.security_audit_entry_data') );

Cette analyse et ces requêtes peuvent être faite depuis pgAdmin pour plus de facilité:

Pour aller plus loin

Nicolas Housset

Passionné d'informatique, je suis Consultant et expert technique SAS VIYA, également co-fondateur de la société Flexcelite. Spécialisé dans les technologies SAS (Viya, 9.4) et les infrastructures associées (Linux, Hadoop, Azure), ce blog est mon espace pour partager mes mémos techniques et retours d'expérience.