Comme dans tous journaux de L’IBMi, la partie donnée est difficile à interpréter. Pour nous aider, IBM fournit désormais des fonctions tables qui pré-découpent cette donnée en fonction du type de poste.

Voici la liste de ces fonctions

TR4 ne V7R4 et TR10 en version V7R3

SYSTOOLS.AUDIT_JOURNAL_AF()
SYSTOOLS.AUDIT_JOURNAL_CA()
SYSTOOLS.AUDIT_JOURNAL_OW()
SYSTOOLS.AUDIT_JOURNAL_PW()

TR/5 ne V7R4 et TR/11 en version V7R3

SYSTOOLS.AUDIT_JOURNAL_CD()
SYSTOOLS.AUDIT_JOURNAL_CO()
SYSTOOLS.AUDIT_JOURNAL_CP()
SYSTOOLS.AUDIT_JOURNAL_DO()
SYSTOOLS.AUDIT_JOURNAL_EV()
SYSTOOLS.AUDIT_JOURNAL_GR()
SYSTOOLS.AUDIT_JOURNAL_M0()
SYSTOOLS.AUDIT_JOURNAL_M6()
SYSTOOLS.AUDIT_JOURNAL_M7()
SYSTOOLS.AUDIT_JOURNAL_M8()
SYSTOOLS.AUDIT_JOURNAL_M9()
SYSTOOLS.AUDIT_JOURNAL_SV()

Voici un exemple d’utilisation

Vous voulez connaitre les violations sur la journée précédente

select A.VIOLATION_TYPE_DETAIL, A.AUDIT_USER_NAME , A.REMOTE_ADDRESS, A.ENTRY_TIMESTAMP
from table (SYSTOOLS.AUDIT_JOURNAL_PW(STARTING_TIMESTAMP => current timestamp – 1 days)) A
order by A.ENTRY_TIMESTAMP desc

Remarque :

Il faut avoir démarrer l’audit et avoir indiqué que vous voulez tracer les violations valeur *AUTFAIL dans QAUDLVL ou QAUDLVL2

Vous pouvez vérifier que ce contrôle est en œuvre ne utilisant la vue qsys2.security_info qui est apparu avec la TR4 et qui a évoluée avec la TR5

Voici la requête pour faire ce contrôle
Vous obtenez 1 si le contrôle est actif

select count(*) as « Mise en oeuvre controle violation » from qsys2.security_info

where ((auditing_level like ‘%AUTFAIL%’) or
auditing_level_extension like ‘%*AUTFAIL%’);